/********* INCLUDES *********/ #include /********* KONSTANTEN *********/ /********** PROTOTYPEN **********/ /** interne **/ void main(void); void delay(unsigned long int); /** externe **/ /********* VARIABLEN *********/ /** interne **/ unsigned char sendung; /* Spezialfunktionsregister-Definitionen */ void main(void) { unsigned char *msg; unsigned int i, t; int sss=1; /*** Initialisierung serielle Schnittstelle 0 ***/ TCON = 0xF0; // 10100000 TMOD = 0x20; // 00100000 S0CON = 0x50; // Serial Mode-1 1N8-Bit variable Baudrate BD = 1; // Internen Baudratengenerator verwenden PCON = 0x80; // 0x00 - 4800 Baud PCON = 0x80 9600 Baud /**** Funktion ****/ P1--; // LED Anzeige, um zu sehen ob das Programm vollständig durchläuft // Adresse senden TB80 = 1; // Adresse S0BUF = 0x00; // SlaveAdresse while(!TI0); // warten, bis Adresse gesendet TI0 = 0; P1--; // Informationen senden (Byte sendung) TB80 = 0; // Daten msg="AT+CMGF=1"; for(i=0;i<=9;i++) { sendung = msg[i]; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); } P1--; sendung = 0x0D; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); /* Befehl */ P1--; for(t=0;t<=37000;t++) { } for(t=0;t<=37000;t++) { } msg="AT+CNMI=2,1"; for(i=0;i<=11;i++) { sendung = msg[i]; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); } P1--; sendung = 0x0D; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); /* Befehl */ P1--; for(t=0;t<=37000;t++) { } for(t=0;t<=37000;t++) { } /*_________________________ SMS VERSAND BEFEHL HIER _____________________*/ msg="AT+CMGS=+436769451988"; for(i=0;i<=21;i++) { sendung = msg[i]; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); } P1--; sendung = 0x0D; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); /* Befehl */ P1--; for(t=0;t<=37000;t++) { } for(t=0;t<=37000;t++) { } for(t=0;t<=37000;t++) { } for(t=0;t<=32000;t++) { } P1--; msg = "UNFALLLL!!!!!!"; for(i=0;i<=13;i++) { sendung = msg[i]; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); } P1--; sendung = 0x1A; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; /* + Befehl */ P1--; sendung = 0x0D; S0BUF = sendung; while(!TI0); // warten, bis Daten gesendet TI0 = 0; delay(1000); /* Befehl */ P1--; for(;;); //Endlosschleife, damit das Programm nicht ewig oft hinterander durchläuft }