int main(void) // Input : - // Output : - // Function : main function. Runs the init function and then loops { //Initialization disable_global_int(); SysTick_init(); GPIO_init(); swtimers_init(); RTCS_init(); UART0_init(19200, 8, 1, 0); enable_global_int(); LCD_init(); queue_init(&display_lcd_queue); queue_init(&uart0_rx_queue); numpad_init(); open_queue(Q_LCD); open_queue(Q_INPUT); start_task( TASK_RTC, RTC_task); start_task( TASK_DISPLAY, display_task); start_task( TASK_LCD, LCD_task); start_task( TASK_NUMPAD, numpad_task); start_task( TASK_UI, ui_task); start_task( TASK_UART0, UART0_task); schedule(); return (0); }
void main (void) { uint32_t time; SysCtlClockSet(SYSCTL_SYSDIV_5 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ); timer0_ini(); UART0_init(); gpiob_ini(); time = TimerValueGet(WTIMER0_BASE, TIMER_B); UARTprintf("%d ", time); TimerEnable(WTIMER0_BASE, TIMER_B); LCD12864_Delay(10); TimerDisable(WTIMER0_BASE, TIMER_B); time = TimerValueGet(WTIMER0_BASE, TIMER_B); UARTprintf("%d", time); // while(1); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3); while(1) GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, ui8PrevCount); // while(1); }
signed char TelitClass::Init(const char* PIN) { DDRD |= (1<<PD5); PORTD |= (1<<PD5); _delay_ms(300); PORTD &= ~(1<<PD5); _delay_ms(5000); UART0_init(); Telit.WriteStr_P(PSTR("AT\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("ATE0\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT#SELINT=2\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT+IPR=38400\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT\\Q0\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT&K0\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT+IFC= 0,0\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT+ICF= 3\r\n")); _delay_ms(100); Telit.WriteStr_P(PSTR("AT+CMEE=2\r\n")); _delay_ms(100); // searchFor = (const char*)pgm_read_word(&searchStrings[1]); // Telit.WriteStr_P(searchFor); sei(); while (SendCmdWaitResp(PSTR("AT"),OK, pause64) < 0); if (SendCmdWaitResp(PSTR("AT+CPIN?"),PSTR("+CPIN: "), pause256)) { //Пришел ответ "+CPIN:" if (WaitResp(OK, pause64)) { // Пришел OK if (strstr_P((char*)rx_buffer, PSTR("SIM PIN"))) { // Вводим PIN код Telit.WriteStr_P(PSTR("AT+CPIN=\"")); Telit.WriteStr_P(PIN); if ( SendCmdWaitResp(PSTR("\""),OK, pause256) < 0) return -3; // PIN код не верен } else if (!strstr_P((char*)rx_buffer, PSTR("READY"))) { return -3; } } else return -3; }else return -2; // /* Ждем регистрации в сети */ unsigned char Attempts=0; while (CheckStatus() < 0) { if (Attempts++ > 16) { return -1; } } /* Инициализируем текстовый режим СМС */ if (SendCmdWaitResp(PSTR("AT+CSCA?"), OK, pause256) < 0) return -2; if (SendCmdWaitResp(PSTR("AT+CMGF=1"), OK, pause64) < 0) return -2; return 1; }