Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 10.07.2004, 21:39  
Death
Прохожий
 
Регистрация: 10.07.2004
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Death на пути к лучшему
По умолчанию Что делать с файлом?

Хочу собрать сигнализацию на базе мобильного телефона. Схема есть, есть текстовый файл программы, но какой программой его можно перевести в пригодный для программирования формат. Микроконтроллер pic16f84.
Вот текст этого файла:

Programmlisting

// Programmname: sms1 .c
// c'2001 by Wendt and KastI, Berlin Jun 2001
// Der Messagetext wird PDU-Codiert.
//lnfos zum PDU-Mode bei www.nobbi.com
// Details zur SMS bei www.etsi.org
// In dieser Form lautet die Nachricht:
//"Achtung Einbruch! Ausgeloest
// wurde(n) Sensor xxx". In Abhaengigkeit
//der ausgeloesten Sensoren wird
//xxx durch "1 ","2 ", oder "1+2" ersetzt.

#include‹PIC16C84.H› //kompat. m.16F84
#include ‹stdio.h›
#include "villa.h"
#FUSES XT, NOPROTECT
#use DELAY(CLOCK=4000000)
#use RS232 (Baud=2400, Xmit=PIN_17, Rcv=PIN_1
#BYTE PORT_B=6

int ctrl_z = 26; // Zum Beend.d.SMS

void sendhandy(int sensor)

{
delay_ms(1000);
puts(""); // cr/lf zur Baudratenerkennung
//durch das Handy
delay_ms(2000);
puts("atz"); // Modem zuruecksetzen
delay_ms(2000);
puts("at+cmgf=0"); // benutze d. PDU-Mode
delay_ms(2000);
puts("at+cmgs=57"); // errechnete
//SMS-Laenge -› Modem
delay_ms(2000); // SMS mit SMSC-Nr.
// und Empfaengernr.
printf("0791947101670000"); // Header+
//SMS-Servicecenter +491710760000
printf("1100"); // 11 =Flag, 00=Reference
printf("0D91946190611294F1 ");
//Zieladresse+4916091621491 AENDERN"
//Fuellbyte F
printf("0000A830");//ld=00,Codesche
//ma=00,gueltig 2 Tage=A8, 48 Zeichen=30
printf("C1319A5E779F41 C5B45B2CAF8FD12
150B03E3F97D9E"); //MSG-Text
printf("FF29C0EBAD7E5E432CA9D024DC-
BEEF95BOE"); //MSG-Text

if(sensor==1){
printf("8A8140");
//"1 " }
if (sensor==2){
printf("928140");
//"2 " }
if (sensor==3){
printf("8AAD64");
//"1+2" }
putc(ctrl_z); // Ende der Uebertragung
}

main()

{
int ctrl_z = 26;
int i, j, k,
S, B, l, TX,
z, y, r, sn;
y=o;

TX=0;
r=0;

SET_TRIS_B(79);
SET_TRIS_A(255);
OUTPUT_HIGH(LED);

WD: // Scharfstellen nach 42 s mit Rogerbeep
1=0;
i=0;
j=0;

B = 0; //Signalspeicher. zuruecksetzen
S=0;

OUTPUT_LOW(Piezo);
OUTPUT_LOW(Sirene);

for (i = 0; i ‹= 7; i++) { delay_ms(5000);}
OUTPUT_HIGH(Piezo);
//Rogerbeep nach Ablauf der 40 s
delay_ms(2000);
OUTPUT_LOW(Piezo);

MRO:
// Sensorabfrage u. Signalspeicherung

if (!INPUT(IR))
&&(!INPUT(Sen2)) {
goto MRO;

}
if (INPUT(IR)) {
B=1;
}
if (INPUT(Sen2)) {
S=1;
}

MR1:
// Piezosummer aktivieren, Abbruch moeglich,
// Signalspeicherung (30 s)

OUTPUT_HIGH(Piezo);
delay_ms(2000);
OUTPUT_LOW(Piezo);
J = ++I;
if (B == 0)
&&(INPUT(IR)) {
B=1;
}
if(S==0)
&&(INPUT(Sen2)) {
S=1;

}
if (!INPUT(Taster)) {
goto MR4;
}
// Alarmabbruch bei Tastendruck › 3s
ifь‹=14){
goto MR1;

}
1=0;
k=0;

MR2: // Sirene 1 min aktivieren
OUTPUT_HIGH(Sirene);
delay_ms(5000);
k = ++I;
if(k‹= 12) {
goto MR2;}

OUTPUT_LOW(Sirene);
// fuer y›=4 wird keine SMS
//mehr gesendet

if(y›=4){
goto MP;}

l = 0;
k=0;
y = ++r; // Zaehler

if(TX==1)
&&(y ‹= 3) {
goto WD;

}
// 2. SMS nach 1. SMS u. y=3 senden
OUTPUT_HIGH(LED);
// SMS-LED vor 2. Aussendung ausschalten
delay_ms(1000); // SMS senden

if((B==1)&&(S==0)){
sn=1;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
if((S==1)&&(B==0)){
sn=2;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
if((S==1)&&(B==1)){
sn=3;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
TX= 1;
// SMS-Meldespeicher

MP:
// Nach einer 5 Min Pause
delay_ms(10000);
k = ++I;
if (k ‹= 29) {
goto MP;

}
l=0;
k=0;
goto WD;
// wird die Station erneut gestartet

MR4:
// Programmabbruch mit Rogerbeep
delay_ms(3000);
OUTPUT_HIGH(Piezo);
delay_ms(700);
OUTPUT_LOW(Piezo);

MR5:
OUTPUT_LOW(LEDA); // gelbe LED
blinkt nach Alarmabbruch
delay_ms(70);
OUTPUT_HIGH(LEDA);
delay_ms(2000);
if (!input(Taster)) {
r=0; y=0; TX=0; OUTPUT_HIGH(LED); goto
WD;}

//Programm-Neustart nach Abbruch
goto MR5;
}

// Programmname: Villa.h
// c'2001 by A.Wendt u. R.KastI / Germany /
Berlin-Charlottenburg

#define IR Pin_6
// Bewegungsmelder input aktiv high

#define Sen2 PIN_7
// 2. Sensor input aktiv high

#define Taster PIN_8
// Alarmabbruch input aktiv low

#define Sirene Pin_10
// Sirene Output aktiv high

#define Piezo PIN_11
// Piezosummer Output aktiv high

#define LED PIN_13

// SMS wurde gesendet(rt) Output aktiv low

#defineLEDAPIN_12
// Abbruch (gelb) Output aktiv low
Реклама:
Death вне форума  
Сказали "Спасибо" Death
warel (24.06.2019)
Непрочитано 11.07.2004, 17:56  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,529
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию

это на С написано... точнее, PICC - поищи на этом сайте компилер В разделе "файлы"
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Сказали "Спасибо" DK
warel (24.06.2019)
Непрочитано 11.07.2004, 20:53  
Death
Прохожий
 
Регистрация: 10.07.2004
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Death на пути к лучшему
По умолчанию

Спасибо за помощь. Ничего не нашёл, может кто даст ссылку на этот
компилер?
Death вне форума  
Сказали "Спасибо" Death
warel (24.06.2019)
Непрочитано 11.07.2004, 20:56  
mikesmith
Администратор
 
Аватар для mikesmith
 
Регистрация: 10.05.2003
Сообщений: 1,739
Сказал спасибо: 497
Сказали Спасибо 2,686 раз(а) в 595 сообщении(ях)
mikesmith на пути к лучшему
По умолчанию

https://kazus.ru/modules.php?name=Do...ownload&cid=15
__________________
C уважением, Михаил
Ищите даташиты на KAZUS.RU: http://kazus.ru/datasheets/index.html
mikesmith вне форума  
Сказали "Спасибо" mikesmith
warel (24.06.2019)
Непрочитано 11.07.2004, 22:30  
Death
Прохожий
 
Регистрация: 10.07.2004
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Death на пути к лучшему
По умолчанию

Спасибо,скачал.
Игорь.
Death вне форума  
Сказали "Спасибо" Death
warel (24.06.2019)
Непрочитано 15.05.2005, 11:57  
Гость
 
Сообщений: n/a
По умолчанию Re: Что делать с файлом?

Сообщение от Death
Хочу собрать сигнализацию на базе мобильного телефона. Схема есть, есть текстовый файл программы, но какой программой его можно перевести в пригодный для программирования формат. Микроконтроллер pic16f84.
Вот текст этого файла:

Programmlisting

// Programmname: sms1 .c
// c'2001 by Wendt and KastI, Berlin Jun 2001
// Der Messagetext wird PDU-Codiert.
//lnfos zum PDU-Mode bei www.nobbi.com
// Details zur SMS bei www.etsi.org
// In dieser Form lautet die Nachricht:
//"Achtung Einbruch! Ausgeloest
// wurde(n) Sensor xxx". In Abhaengigkeit
//der ausgeloesten Sensoren wird
//xxx durch "1 ","2 ", oder "1+2" ersetzt.

#include‹PIC16C84.H› //kompat. m.16F84
#include ‹stdio.h›
#include "villa.h"
#FUSES XT, NOPROTECT
#use DELAY(CLOCK=4000000)
#use RS232 (Baud=2400, Xmit=PIN_17, Rcv=PIN_1
#BYTE PORT_B=6

int ctrl_z = 26; // Zum Beend.d.SMS

void sendhandy(int sensor)

{
delay_ms(1000);
puts(""); // cr/lf zur Baudratenerkennung
//durch das Handy
delay_ms(2000);
puts("atz"); // Modem zuruecksetzen
delay_ms(2000);
puts("at+cmgf=0"); // benutze d. PDU-Mode
delay_ms(2000);
puts("at+cmgs=57"); // errechnete
//SMS-Laenge -› Modem
delay_ms(2000); // SMS mit SMSC-Nr.
// und Empfaengernr.
printf("0791947101670000"); // Header+
//SMS-Servicecenter +491710760000
printf("1100"); // 11 =Flag, 00=Reference
printf("0D91946190611294F1 ");
//Zieladresse+4916091621491 AENDERN"
//Fuellbyte F
printf("0000A830");//ld=00,Codesche
//ma=00,gueltig 2 Tage=A8, 48 Zeichen=30
printf("C1319A5E779F41 C5B45B2CAF8FD12
150B03E3F97D9E"); //MSG-Text
printf("FF29C0EBAD7E5E432CA9D024DC-
BEEF95BOE"); //MSG-Text

if(sensor==1){
printf("8A8140");
//"1 " }
if (sensor==2){
printf("928140");
//"2 " }
if (sensor==3){
printf("8AAD64");
//"1+2" }
putc(ctrl_z); // Ende der Uebertragung
}

main()

{
int ctrl_z = 26;
int i, j, k,
S, B, l, TX,
z, y, r, sn;
y=o;

TX=0;
r=0;

SET_TRIS_B(79);
SET_TRIS_A(255);
OUTPUT_HIGH(LED);

WD: // Scharfstellen nach 42 s mit Rogerbeep
1=0;
i=0;
j=0;

B = 0; //Signalspeicher. zuruecksetzen
S=0;

OUTPUT_LOW(Piezo);
OUTPUT_LOW(Sirene);

for (i = 0; i ‹= 7; i++) { delay_ms(5000);}
OUTPUT_HIGH(Piezo);
//Rogerbeep nach Ablauf der 40 s
delay_ms(2000);
OUTPUT_LOW(Piezo);

MRO:
// Sensorabfrage u. Signalspeicherung

if (!INPUT(IR))
&&(!INPUT(Sen2)) {
goto MRO;

}
if (INPUT(IR)) {
B=1;
}
if (INPUT(Sen2)) {
S=1;
}

MR1:
// Piezosummer aktivieren, Abbruch moeglich,
// Signalspeicherung (30 s)

OUTPUT_HIGH(Piezo);
delay_ms(2000);
OUTPUT_LOW(Piezo);
J = ++I;
if (B == 0)
&&(INPUT(IR)) {
B=1;
}
if(S==0)
&&(INPUT(Sen2)) {
S=1;

}
if (!INPUT(Taster)) {
goto MR4;
}
// Alarmabbruch bei Tastendruck › 3s
ifь‹=14){
goto MR1;

}
1=0;
k=0;

MR2: // Sirene 1 min aktivieren
OUTPUT_HIGH(Sirene);
delay_ms(5000);
k = ++I;
if(k‹= 12) {
goto MR2;}

OUTPUT_LOW(Sirene);
// fuer y›=4 wird keine SMS
//mehr gesendet

if(y›=4){
goto MP;}

l = 0;
k=0;
y = ++r; // Zaehler

if(TX==1)
&&(y ‹= 3) {
goto WD;

}
// 2. SMS nach 1. SMS u. y=3 senden
OUTPUT_HIGH(LED);
// SMS-LED vor 2. Aussendung ausschalten
delay_ms(1000); // SMS senden

if((B==1)&&(S==0)){
sn=1;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
if((S==1)&&(B==0)){
sn=2;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
if((S==1)&&(B==1)){
sn=3;
sendhandy(sn);
OUTPUT_LOW(LED);
// LED-Anzeige fuer gesendete SMS ein

}
TX= 1;
// SMS-Meldespeicher

MP:
// Nach einer 5 Min Pause
delay_ms(10000);
k = ++I;
if (k ‹= 29) {
goto MP;

}
l=0;
k=0;
goto WD;
// wird die Station erneut gestartet

MR4:
// Programmabbruch mit Rogerbeep
delay_ms(3000);
OUTPUT_HIGH(Piezo);
delay_ms(700);
OUTPUT_LOW(Piezo);

MR5:
OUTPUT_LOW(LEDA); // gelbe LED
blinkt nach Alarmabbruch
delay_ms(70);
OUTPUT_HIGH(LEDA);
delay_ms(2000);
if (!input(Taster)) {
r=0; y=0; TX=0; OUTPUT_HIGH(LED); goto
WD;}

//Programm-Neustart nach Abbruch
goto MR5;
}

// Programmname: Villa.h
// c'2001 by A.Wendt u. R.KastI / Germany /
Berlin-Charlottenburg

#define IR Pin_6
// Bewegungsmelder input aktiv high

#define Sen2 PIN_7
// 2. Sensor input aktiv high

#define Taster PIN_8
// Alarmabbruch input aktiv low

#define Sirene Pin_10
// Sirene Output aktiv high

#define Piezo PIN_11
// Piezosummer Output aktiv high

#define LED PIN_13

// SMS wurde gesendet(rt) Output aktiv low

#defineLEDAPIN_12
// Abbruch (gelb) Output aktiv low
 
Непрочитано 21.06.2005, 22:53  
Гость
 
Сообщений: n/a
По умолчанию Re: Что делать с файлом?

Сообщение от Death
Хочу собрать сигнализацию на базе мобильного телефона. Схема есть, ...
А где бы схемой разжиться можно?
 
Непрочитано 22.06.2005, 10:36  
xelos
Прописка
 
Регистрация: 27.08.2004
Сообщений: 107
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 20 сообщении(ях)
xelos на пути к лучшему
По умолчанию

точнее если, это picc от ccs, а не hitech picc
xelos вне форума  
Сказали "Спасибо" xelos
warel (24.06.2019)
Непрочитано 17.12.2005, 21:01  
Chilean
Гость
 
Сообщений: n/a
По умолчанию Re: Что делать с файлом?, unsigned char instead of int

//In the define ctrl_z ....
//.... unsigned cgar instead of int

unsigned char ctrl_z;

//char it occupies 1 byte, however int can occupy 16 or //32 byte.
 
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что делать o630304 Proteus, KiCAD и другие ECAD 0 30.04.2008 00:53
Не хватает портов. Что делать? roog Микроконтроллеры, АЦП, память и т.д 18 11.12.2007 22:07
что делать с шумом? worldmasters Аудиотехника 214 17.07.2007 17:41
Сдохла батарея, что делать ? bopohok Источники питания и свет 5 08.04.2007 16:24
Что делать с индуктивной нагрузкой? lisergin Производственное оборудование 13 20.04.2005 11:34


Часовой пояс GMT +4, время: 04:10.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot