Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp
00001 #include "mbed.h" 00002 #include "MODSERIAL.h" 00003 #include <stdio.h> 00004 #include <stdlib.h> 00005 #include <string.h> 00006 #include <iostream> 00007 #include "lib_crc.h" 00008 00009 // Connect the TX of the GPS module to p10 RX input 00010 Serial Computer(USBTX, USBRX); 00011 MODSERIAL gsm(p13, p14); 00012 DigitalOut Led(LED1); 00013 DigitalOut Led1(LED2); 00014 MODSERIAL RS485(p28,p27); 00015 Serial LEDScreen(p9,p10); 00016 DigitalOut ho(p26); 00017 DigitalOut led(LED3); 00018 Ticker flipper; 00019 00020 bool Pass = false; 00021 int count1 =0; 00022 int count2 =0; 00023 char buf[18]; 00024 char Key[]="OK"; 00025 char Hi; 00026 char * pch; 00027 char Ext1[10]; 00028 char Ext2[10]; 00029 char Ext3[10]; 00030 int alert=0; 00031 int Status=0, Status1=0, Status2=0, Status3=0, Status4=0, Status5=0,Status6=0, Status7=0,NumberStat = 0; 00032 int Emer, Emer1, Emer2, Emer3; 00033 char Emergency[]= "1", Emergency1[]="2",Emergency2[]= "3",Emergency3[]= "4"; 00034 char line= '\n'; 00035 char c; 00036 char SMS1[] ="#Read Volt\r\n", SMS2[] ="#Read Current\r\n", SMS3[] ="#Read All\r\n", SMS4[] ="#Changenum\r\n", SMS5[] ="#Stop Log\r\n", SMS6[] ="#Hi\r\n", SMS7[] ="#Reset Emergerncy\r\n"; 00037 char SMS[15]; 00038 char Password[]= "1234"; 00039 char buffer1[32]; 00040 char str[9]; 00041 char str2[9]; 00042 char ctr= 0x1A; 00043 char buf1[40]; 00044 char buf2[4]; 00045 char buf3[256]; 00046 char buf4[20]; 00047 float FinalVoltage=0; 00048 bool newline_detected = false; 00049 char NumberMan[20]; 00050 int PassChecker; 00051 int voltcount = 0; 00052 char modbusreply[9]; 00053 char modbusreply1[16]; 00054 char a[2]; 00055 int b; 00056 int firsthex4; //Modbus Hex4 00057 int firsthex5; //MOdbus Hex5 00058 int Sechex4; //Modbus Hex4 00059 int Sechex5; //Modbus Hex5 00060 char hi= 0x48; 00061 int count = 0; 00062 //uint32_t EnergyGen; 00063 //uint32_t Energyused; 00064 int EnergyGen; 00065 int Energyused; 00066 char crc[10]; 00067 char crc1; 00068 char buffer [10]; 00069 bool Dam = false; 00070 00071 00072 00073 00074 00075 //------------------------------------------------------------------------------------------------------------------ 00076 00077 void LEDSerialstart() { //Starting code for LED Screen 00078 LEDScreen.putc(0x00); 00079 LEDScreen.putc(0xff); 00080 LEDScreen.putc(0xff); 00081 LEDScreen.putc(0x00); 00082 LEDScreen.putc(0x0b); 00083 LEDScreen.putc(0x00); 00084 LEDScreen.putc(0x01); 00085 LEDScreen.putc(0xff); 00086 LEDScreen.putc(0x01); 00087 LEDScreen.putc(0x01); 00088 LEDScreen.putc(0x03); 00089 LEDScreen.putc(0xef); 00090 LEDScreen.putc(0xb0); 00091 LEDScreen.putc(0xef); 00092 LEDScreen.putc(0xa2); 00093 } 00094 //------------------------------------------------------------------------------------------------------------------ 00095 //------------------------------------------------------------------------------------------------------------------ 00096 00097 void New_Screen() { //New Frame for LED screeen 00098 LEDScreen.putc(0xef); 00099 LEDScreen.putc(0xb1); 00100 LEDScreen.putc(0xef); 00101 LEDScreen.putc(0xa0); 00102 LEDScreen.putc(0xff); 00103 LEDScreen.putc(0xef); 00104 LEDScreen.putc(0xb0); 00105 LEDScreen.putc(0xef); 00106 LEDScreen.putc(0xa2); 00107 00108 } 00109 //------------------------------------------------------------------------------------------------------------------ 00110 //------------------------------------------------------------------------------------------------------------------ 00111 00112 void LEDSerial_end() { //Ending code for LED screen 00113 LEDScreen.putc(0xff); 00114 LEDScreen.putc(0xff); 00115 LEDScreen.putc(0x00); 00116 } 00117 //------------------------------------------------------------------------------------------------------------------ 00118 //------------------------------------------------------------------------------------------------------------------ 00119 00120 /*void MasterRequest1() { //Request accumulative Kwh from Modbus 1 00121 ho= 1; 00122 wait(0.1); 00123 RS485.putc(0x01); 00124 RS485.putc(0x03); 00125 RS485.putc(0x00); 00126 RS485.putc(0x04); 00127 RS485.putc(0x00); 00128 RS485.putc(0x02); 00129 RS485.putc(0x85); 00130 RS485.putc(0xca); 00131 wait(0.009); 00132 } 00133 //------------------------------------------------------------------------------------------------------------------ 00134 //------------------------------------------------------------------------------------------------------------------ 00135 00136 void SlaveReply1() { //Reply from Modbus1 00137 00138 ho= 0; 00139 wait(0.0025); 00140 while (RS485.readable()) { 00141 RS485.getc(); 00142 } 00143 for (int count = 0; count!=6; count++) { 00144 b= RS485.getc(); 00145 Computer.putc(c); 00146 modbusreply[count] = b; 00147 } 00148 RS485.getc(); 00149 a[0]= RS485.getc(); 00150 a[1]= RS485.getc(); 00151 int nValue = a[0] + (a[1] << 8); // combining 2 bytes into an int then convert to 2 byte hex 00152 00153 if (calculate_crc16_Modbus(modbusreply, 7)== nValue) { 00154 firsthex4 = modbusreply[3]; 00155 firsthex5 = modbusreply[4]; 00156 EnergyGen =((firsthex4*256) + firsthex5); 00157 printf("Energy Generate: %d kWh\n\r",EnergyGen); 00158 00159 } 00160 }*/ 00161 00162 //------------------------------------------------------------------------------------------------------------------ 00163 //------------------------------------------------------------------------------------------------------------------ 00164 00165 void MasterRequest2() { //Request accumulative Kwh from Modbus 2 (ERROR) 00166 ho= 1; 00167 wait(0.1); 00168 RS485.putc(0x02); 00169 RS485.putc(0x03); 00170 RS485.putc(0x00); 00171 RS485.putc(0x0a); 00172 RS485.putc(0x00); 00173 RS485.putc(0x02); 00174 RS485.putc(0xe4); 00175 RS485.putc(0x3a); 00176 wait(0.009); 00177 } 00178 //------------------------------------------------------------------------------------------------------------------ 00179 //------------------------------------------------------------------------------------------------------------------ 00180 00181 void SlaveReply2() { //Reply from Modbus1 (ERROR) 00182 00183 ho= 0; 00184 // wait(0.0025); 00185 wait(0.005); 00186 RS485.getc(); 00187 00188 do{ 00189 b = RS485.getc(); 00190 // Computer.putc(b); 00191 }while(b == 0x00); 00192 // b = RS485.getc(); 00193 Computer.putc(b); 00194 modbusreply1[0] = b; 00195 00196 for (int count2 = 1; count2!=7; count2++) { 00197 00198 // modbusreply1[count2] = b; 00199 b= RS485.getc(); 00200 Computer.putc(b); 00201 modbusreply1[count2] = b; 00202 } 00203 RS485.getc(); 00204 00205 a[1]= RS485.getc(); 00206 a[0]= RS485.getc(); 00207 int nValue = a[0] + (a[1] << 8); // combining 2 bytes into an int then convert to 2 byte hex 00208 00209 // if (calculate_crc16_Modbus(modbusreply1, 7)== nValue) { 00210 Sechex4 = modbusreply1[3]; 00211 Sechex5 = modbusreply1[4]; 00212 Energyused =((Sechex4*256) + Sechex5); 00213 // printf("Energy Used: %d kWh\n\r",Energyused); 00214 // printf("E: %04X kWh\n\r",calculate_crc16_Modbus(modbusreply1, 7)); 00215 // printf("W: %04X kWh\n\r",nValue); 00216 //} 00217 } 00218 //------------------------------------------------------------------------------------------------------------------ 00219 00220 //------------------------------------------------------------------------------------------------------------------ 00221 void GSM_GETCHAR() { //Get character (e.g. Printf the Words from serial) 00222 do { 00223 c=gsm.getc(); 00224 Computer.putc (c); 00225 } while (c != line); 00226 } 00227 //------------------------------------------------------------------------------------------------------------------ 00228 00229 //------------------------------------------------------------------------------------------------------------------ 00230 void GSM_CLEAR_SMS() { //Delete 1st SMS 00231 gsm.printf("AT+CMGD=0,1\r\n"); 00232 wait(0.3); 00233 gsm.rxBufferFlush(); 00234 00235 00236 } 00237 //------------------------------------------------------------------------------------------------------------------ 00238 00239 //------------------------------------------------------------------------------------------------------------------ 00240 void GSM_GETCHAR1() { //Get character (e.g. Printf the Words from serial) 00241 strcpy (str,&Hi); 00242 do { 00243 c=gsm.getc(); 00244 Computer.putc (c); 00245 strcat (str,&c); 00246 00247 } while (c != line); 00248 Computer.printf("%s\n\r",str); 00249 00250 00251 } 00252 //------------------------------------------------------------------------------------------------------------------ 00253 void Checkit() { //Clear Extra character from GSM 00254 00255 wait(1); 00256 while (gsm.readable()) { 00257 gsm.getc(); 00258 } 00259 } 00260 00261 //------------------------------------------------------------------------------------------------------------------ 00262 void SMS_Alert() { //Alert User abt error (NOT COMPLETED.What type of error to trigger SMS) 00263 if (voltcount==10) { 00264 if (alert == 0) { 00265 gsm.rxBufferFlush(); 00266 gsm.printf("AT+CMGS=%s\r\n",Emergency); //Send SMS 00267 GSM_GETCHAR(); 00268 gsm.printf("Alert: Voltage has been 0V for the pass 1 hour %c",ctr); 00269 wait(0.3); 00270 gsm.printf("%c", ctr); 00271 alert = 1; 00272 00273 } 00274 } 00275 } 00276 //------------------------------------------------------------------------------------------------------------------ 00277 00278 //------------------------------------------------------------------------------------------------------------------ 00279 void Replyvolt() { //Reply energy generated 00280 gsm.rxBufferFlush(); 00281 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00282 GSM_GETCHAR(); 00283 gsm.printf("The Power is %s W %c", buffer,ctr); 00284 wait(0.3); 00285 gsm.printf("%c", ctr); 00286 // wait(1.5); 00287 gsm.rxBufferFlush(); 00288 } 00289 //------------------------------------------------------------------------------------------------------------------ 00290 00291 00292 //------------------------------------------------------------------------------------------------------------------ 00293 void Replycurent() { //Reply energy used 00294 gsm.rxBufferFlush(); 00295 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00296 GSM_GETCHAR(); 00297 gsm.printf("The Current is %.2f V %c",FinalVoltage,ctr); 00298 wait(0.3); 00299 gsm.printf("%c", ctr); 00300 // wait(2.5); 00301 gsm.rxBufferFlush(); 00302 00303 } 00304 //------------------------------------------------------------------------------------------------------------------ 00305 00306 //------------------------------------------------------------------------------------------------------------------ 00307 void Replyall() { //Reply Energy gen and used 00308 gsm.rxBufferFlush(); 00309 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00310 GSM_GETCHAR(); 00311 gsm.printf("Voltage: %.2f V, Current: %.2f A %c", FinalVoltage, FinalVoltage,ctr); 00312 wait(0.3); 00313 gsm.printf("%c", ctr); 00314 wait(2.5); 00315 gsm.rxBufferFlush(); 00316 } 00317 //------------------------------------------------------------------------------------------------------------------ 00318 //------------------------------------------------------------------------------------------------------------------ 00319 void Change_Number() { //Change Emergency Number 00320 gsm.rxBufferFlush(); 00321 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00322 GSM_GETCHAR(); 00323 gsm.printf("Plese sms back the following in order: Password, Current Number, New Number %c",ctr); 00324 wait(0.3); 00325 gsm.printf("%c", ctr); 00326 strcpy (NumberMan,buf4); 00327 wait(2.5); 00328 gsm.rxBufferFlush(); 00329 00330 00331 } 00332 00333 //------------------------------------------------------------------------------------------------------------------ 00334 //------------------------------------------------------------------------------------------------------------------ 00335 void CheckSMSMSG() { //Check MSG receive from Sender 00336 Status1 = strcmp (SMS1,str); 00337 Status2 = strcmp (SMS2,str); 00338 Status3 = strcmp (SMS3,str); 00339 Status4 = strcmp (SMS4,str); 00340 Status5 = strcmp (SMS5,str); 00341 Status6 = strcmp (SMS6,str); 00342 Status7 = strcmp (SMS7,str); 00343 00344 if (Status1 == 0) { 00345 Replyvolt(); 00346 Checkit(); 00347 } 00348 if (Status2 == 0) { 00349 Replycurent(); 00350 Checkit(); 00351 } 00352 00353 if (Status3 == 0) { 00354 Replyall(); 00355 Checkit(); 00356 } 00357 if (Status4 == 0) { 00358 Change_Number(); 00359 Checkit(); 00360 } 00361 if (Status5 == 0) { 00362 00363 } 00364 if (Status1!=0 && Status2!=0 &&Status3!=0 &&Status4!=0 &&Status5!=0) { 00365 Computer.printf("Random SMS\n\r"); 00366 } 00367 } 00368 //------------------------------------------------------------------------------------------------------------------ 00369 //------------------------------------------------------------------------------------------------------------------ 00370 void CheckPassword() { //Change Password Function 00371 PassChecker = strcmp (Password,Ext1); //Check if Password is correct 00372 if (PassChecker != 0) { //If password is incorrect. Reply Invalid Password 00373 gsm.rxBufferFlush(); 00374 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00375 GSM_GETCHAR(); 00376 gsm.printf("Invalid Password %c",ctr); 00377 strcpy (NumberMan,&Hi); 00378 gsm.printf("%c", ctr); 00379 wait(2.5); 00380 gsm.rxBufferFlush(); 00381 Checkit(); 00382 } else { //Otherwise, Pass is true. ....go to funtion "Old_Number" 00383 Pass = true; 00384 } 00385 // Checkit(); 00386 00387 } 00388 //------------------------------------------------------------------------------------------------------------------ 00389 //------------------------------------------------------------------------------------------------------------------ 00390 void Old_Number() { //trigger if password is true 00391 if (Pass== true) { 00392 Emer = strcmp (Emergency,Ext2); //Check if Number is emergency 1 00393 Emer1 = strcmp (Emergency1,Ext2); //Check if Number is emergency 2 00394 Emer2 = strcmp (Emergency2,Ext2); //Check if Number is emergency 3 00395 Emer3 = strcmp (Emergency3,Ext2); //Check if Number is emergency 4 00396 if (Emer == 0) { 00397 strcpy (Emergency,Ext3); 00398 gsm.rxBufferFlush(); 00399 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00400 GSM_GETCHAR(); 00401 gsm.printf("Emergency Number \"%s\" is set %c",Emergency, ctr); 00402 strcpy (NumberMan,&Hi); 00403 gsm.printf("%c", ctr); 00404 wait(2.5); 00405 gsm.rxBufferFlush(); 00406 Checkit(); 00407 } 00408 if (Emer1 == 0) { 00409 strcpy (Emergency1,Ext3); 00410 gsm.rxBufferFlush(); 00411 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00412 GSM_GETCHAR(); 00413 gsm.printf("Emergency Number \"%s\" is set %c",Emergency1, ctr); 00414 strcpy (NumberMan,&Hi); 00415 gsm.printf("%c", ctr); 00416 wait(2.5); 00417 gsm.rxBufferFlush(); 00418 Checkit(); 00419 } 00420 if (Emer2 == 0) { 00421 strcpy (Emergency2,Ext3); 00422 gsm.rxBufferFlush(); 00423 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00424 GSM_GETCHAR(); 00425 gsm.printf("Emergency Number \"%s\" is set %c",Emergency2, ctr); 00426 strcpy (NumberMan,&Hi); 00427 gsm.printf("%c", ctr); 00428 wait(2.5); 00429 gsm.rxBufferFlush(); 00430 Checkit(); 00431 } 00432 if (Emer3 == 0) { 00433 strcpy (Emergency3,Ext3); 00434 gsm.rxBufferFlush(); 00435 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00436 GSM_GETCHAR(); 00437 gsm.printf("Emergency Number \"%s\" is set %c",Emergency3, ctr); 00438 strcpy (NumberMan,&Hi); 00439 gsm.printf("%c", ctr); 00440 wait(2.5); 00441 gsm.rxBufferFlush(); 00442 Checkit(); 00443 } 00444 if (Emer != 0 && Emer1 != 0 && Emer2 != 0 && Emer3 != 0) { 00445 gsm.rxBufferFlush(); 00446 gsm.printf("AT+CMGS=%s\r\n",buf4); //Send SMS 00447 GSM_GETCHAR(); 00448 gsm.printf("No such Number %c",Emergency3, ctr); 00449 strcpy (NumberMan,&Hi); 00450 gsm.printf("%c", ctr); 00451 wait(2.5); 00452 gsm.rxBufferFlush(); 00453 Checkit(); 00454 } 00455 } 00456 00457 00458 } 00459 00460 00461 //------------------------------------------------------------------------------------------------------------------ 00462 //------------------------------------------------------------------------------------------------------------------ 00463 void Check_Number() { 00464 pch = strtok (str," ,.-"); 00465 strcpy (Ext1,pch); 00466 pch = strtok (NULL, " ,.-"); 00467 strcpy (Ext2,pch); 00468 pch = strtok (NULL, " ,.-"); 00469 strcpy (Ext3,pch); 00470 } 00471 //------------------------------------------------------------------------------------------------------------------ 00472 //------------------------------------------------------------------------------------------------------------------ 00473 void ExtractNum() { //Extract the number from the sender's sms 00474 pch = strtok (buf3," ,.-"); 00475 pch = strtok (NULL, " ,.-"); 00476 //pc.printf ("pch is %s\n\r",pch); //See Number extracted 00477 strcpy (buf4,pch); 00478 Computer.printf("%s\n\r", buf4); //Number extracted in "+6512345678" 00479 } 00480 //------------------------------------------------------------------------------------------------------------------ 00481 00482 00483 //------------------------------------------------------------------------------------------------------------------ 00484 void Sending() { 00485 if (Status==36) { 00486 time_t seconds = time(NULL); 00487 gsm.scanf("%s",buf2); 00488 gsm.scanf("%s",buf3); //Scan ["READ","+6512345678",,"12/01/18,23:54:25+32"] 00489 ExtractNum(); //to extract number 00490 00491 Computer.printf("The Message is:\n\r"); 00492 GSM_GETCHAR(); 00493 00494 GSM_GETCHAR1(); //Extract sms(e.g.SMSing "#ReadVolt" will give u voltage reading) 00495 GSM_GETCHAR(); 00496 00497 GSM_CLEAR_SMS(); //Delete 1st Message 00498 gsm.rxBufferFlush(); 00499 00500 gsm.rxBufferFlush(); 00501 } 00502 } 00503 //------------------------------------------------------------------------------------------------------------------ 00504 00505 //------------------------------------------------------------------------------------------------------------------ 00506 00507 void GSM_CHECK_MSG() { //Check if msg is OK,Error. 00508 Status = strcmp (Key,buf1); 00509 //pc.printf("%d\n\r", Status); //See the error Number 00510 } 00511 //------------------------------------------------------------------------------------------------------------------ 00512 00513 00514 //------------------------------------------------------------------------------------------------------------------ 00515 void ReceiveMessage() { 00516 gsm.rxBufferFlush(); 00517 gsm.printf("AT+CMGR=\"1\"\n\r"); //Read Message. 00518 gsm.scanf("%s",buf); 00519 gsm.scanf("%s",buf1); 00520 00521 GSM_CHECK_MSG(); //Check For reply. If Ok, no sms. if error, no sms. 00522 } 00523 //------------------------------------------------------------------------------------------------------------------ 00524 00525 //------------------------------------------------------------------------------------------------------------------ 00526 void rxCallback(MODSERIAL_IRQ_INFO *q) { //Interrupt trigger 00527 MODSERIAL *serial = q->serial; 00528 00529 if ( serial->rxGetLastChar() == '\n') { 00530 newline_detected = true; 00531 Led1= 1; 00532 } 00533 } 00534 //------------------------------------------------------------------------------------------------------------------ 00535 00536 //------------------------------------------------------------------------------------------------------------------ 00537 00538 void TimeMessage1() { //Get character (e.g. Printf the Words from serial) 00539 strcpy (str,&Hi); 00540 do { 00541 c=Computer.getc(); 00542 Computer.putc (c); 00543 strcpy (str2,&c); 00544 // printf("The %s.", str2); 00545 strcat (str,&c); 00546 } while (c != ' '); 00547 } 00548 00549 //------------------------------------------------------------------------------------------------------------------ 00550 void GSM_STARTUP() { 00551 00552 gsm.baud(9600); 00553 Computer.baud(9600); 00554 gsm.format(8, Serial::None, 1); 00555 00556 gsm.rxBufferFlush(); 00557 Computer.printf("\n\rSetting Up GSM\n\r"); 00558 Computer.printf("---------------\n\r\n\r"); 00559 gsm.printf("AT+CMGF=\"1\"\r\n"); 00560 gsm.scanf("%s",buf); 00561 //pc.printf("buf1 is: %s\r\n",buf); 00562 gsm.scanf("%s",buf3); //scanf OK 00563 Computer.printf("%s\r\n",buf3); 00564 gsm.rxBufferFlush(); 00565 GSM_CLEAR_SMS(); 00566 Computer.printf("...GSM Setup Done\n\r\n\r\n\r"); 00567 gsm.rxBufferFlush(); 00568 } 00569 //------------------------------------------------------------------------------------------------------------------ 00570 00571 //------------------------------------------------------------------------------------------------------------------ 00572 00573 void Mainly() { //Getting Data and putting on LED Screen 00574 Computer.baud(9600); 00575 // MasterRequest1(); 00576 // SlaveReply1(); 00577 wait(5); 00578 MasterRequest2(); 00579 SlaveReply2(); 00580 count = 0; 00581 count1= 0; 00582 sprintf (buffer, "%d",EnergyGen); 00583 sprintf (buffer1, "%d",Energyused); 00584 wait(1); 00585 Computer.baud(2400); 00586 wait(1); 00587 LEDSerialstart(); 00588 LEDScreen.printf("Energy Generated: %s Kwh",buffer); 00589 New_Screen(); 00590 LEDScreen.printf("Energy Used: %s Kwh",buffer1); 00591 LEDSerial_end(); 00592 wait(0.5); 00593 Computer.baud(9600); 00594 wait(1); 00595 00596 } 00597 //------------------------------------------------------------------------------------------------------------------ 00598 //------------------------------------------------------------------------------------------------------------------ 00599 00600 void Trigger() { // trigger for gathering data 00601 Dam = true; 00602 } 00603 //------------------------------------------------------------------------------------------------------------------ 00604 00605 //------------------------------------------------------------------------------------------------------------------ 00606 00607 00608 int main() { 00609 GSM_STARTUP(); 00610 gsm.attach(&rxCallback, MODSERIAL::RxIrq); 00611 RS485.baud(9600); 00612 LEDScreen.baud(2400); 00613 flipper.attach(&Trigger, 10.0); 00614 00615 00616 // Wait here until we detect the \n going into the buffer. 00617 while (! newline_detected ) { 00618 00619 Led = !Led; 00620 wait(1); 00621 00622 00623 if (Dam == true) { 00624 Mainly(); 00625 Dam =false; 00626 } 00627 00628 if (newline_detected == true) { 00629 printf("%d\n\r",count1); 00630 ReceiveMessage(); 00631 Sending(); 00632 NumberStat = strcmp (NumberMan,buf4); 00633 00634 switch (NumberStat) { 00635 00636 case 0: 00637 Check_Number(); 00638 CheckPassword(); 00639 Old_Number(); 00640 strcpy (NumberMan,&Hi); 00641 Pass = false; 00642 Computer.printf("Hi\n\r"); 00643 newline_detected = false; 00644 Led1= 0; 00645 break; 00646 00647 default: 00648 CheckSMSMSG(); 00649 gsm.rxBufferFlush(); 00650 Computer.printf("the buffer %d",gsm.rxBufferGetCount()); 00651 newline_detected = false; 00652 strcpy (buf4,&Hi); 00653 Led1= 0; 00654 00655 } 00656 00657 } 00658 00659 } 00660 00661 00662 }
Generated on Sat Jul 16 2022 22:53:19 by
1.7.2