--- trunk/Embedded/main.c 2007/12/04 19:07:00 150 +++ trunk/Embedded/main.c 2007/12/05 07:30:04 151 @@ -24,6 +24,8 @@ unsigned int global_emergency_counter = 600, global_time_interval = 3600; unsigned char global_temp = 0; +unsigned char global_lcd_buf[16]; + unsigned short global_imei_tversum; unsigned char cell_nr[15] = ""; // = "21681784"; @@ -185,6 +187,9 @@ if (data_byte == '\n') return; + + if (global_serial_byte_counter == 0 && data_byte == '\r') + return; global_serial_recieve_buffer[global_serial_byte_counter] = data_byte; @@ -214,7 +219,9 @@ { lcd_clear(); lcd_goto(0x00); - lcd_puts(global_temp); + + sprintf(global_lcd_buf, "%d", global_temp); + lcd_puts(global_lcd_buf); } @@ -299,25 +306,30 @@ reset_recieve_buffer(); } - - } void on_recieve(void) { char tmp[17]; + char* ptr; + tmp[0]=0; + if (global_recieve_done == 0) return; - - lcd_clear(); + lcd_goto(0x00); - tmp[0] = 0; - strncat(tmp,global_serial_recieve_buffer,16); - lcd_puts(tmp); - if (strncmp(global_serial_recieve_buffer,"+WIND: 11", 3) == 0) + lcd_puts(global_serial_recieve_buffer); + + if (strstr(global_serial_recieve_buffer,"CMTI") == 0) { - global_modem_init = 1; + ptr = strstr(global_serial_recieve_buffer,"'"); + strcat(tmp,ptr); + + + lcd_goto(0x40); + lcd_puts(tmp); + } reset_recieve_buffer(); @@ -341,6 +353,8 @@ /////////////// // Main loop // + DelayMs(50); + reset_recieve_buffer(); while(1) { @@ -372,15 +386,10 @@ global_Pot_Hi = ADRESH; global_Pot_Lo = ADRESL; convertTemp(); - update_lcd(); + //update_lcd(); GODONE = 1; } - - //if (global_recieve_done) - //{ - on_recieve(); - // global_recieve_done = 0; - // global_serial_byte_counter = 0; - //} + // Handels the recieve sms'es. + on_recieve(); } }