static void restore_link(const uint8_t *eeaddr) { enter_command_mode(); SEND_COMMAND("Q,2\r\n"); // quiet //SEND_COMMAND("SX,1\r\n"); // bond //SEND_COMMAND("SR,Z\r\n"); // remove remote address SEND_STR("SR,"); // set remote address from EEPROM for (int i = 0; i < 12; i++) { uint8_t c = eeprom_read_byte(eeaddr+i); rn42_putc(c); dprintf("%c ", c); } SEND_COMMAND("\r\n"); SEND_STR("C,"); // set remote address from EEPROM for (int i = 0; i < 12; i++) { uint8_t c = eeprom_read_byte(eeaddr+i); rn42_putc(c); dprintf("%c ", c); } dprintf("\r\n"); SEND_COMMAND("\r\n"); wait_ms(5000); SEND_COMMAND("R,1\r\n"); // reboot exit_command_mode_2(); }
void thread_2_func() { char* str = (char*) kcalloc (256, sizeof (char)); res_type_t type = res_compose (RES_CPU, 0, 0, 0); int prd; GET_RES (prd, type, 0, 0); while(1) { GET_RES (prd, type, 2, R_WAITFROM); //dump_rbuffer(GET_KERNEL_THREAD()->buffer, msg_d); SEND_STR ("Hello #2\r\n", strlen ("Hello #2\r\n") + 1); kprint ("%d\r\n", prd); GIVE_RES (prd, type, 2, R_SENDTO); } }
static void store_link(uint8_t *eeaddr) { enter_command_mode(); SEND_STR("GR\r\n"); // remote address const char *s = rn42_gets(500); if (strcmp("GR", s) == 0) s = rn42_gets(500); // ignore local echo xprintf("%s(%d)\r\n", s, strlen(s)); if (strlen(s) == 12) { for (int i = 0; i < 12; i++) { eeprom_write_byte(eeaddr+i, *(s+i)); dprintf("%c ", *(s+i)); } dprint("\r\n"); } exit_command_mode(); }
int main(void) { //Ports InitPorts(); //Init Uart1 InitUart1(); //LCD initialisation LCD_Ini(); // delay_ms(2); SEND_CMD(DISP_ON); // delay_ms(10); SEND_CMD(CLR_DISP); // write SEND_STR(" www.olimex.com"); while (1) { // Uart Echo ch = ReceiveCharUart1_nonstop(); if(ch!=0) { SendCharUart1(ch); SendCharUart1('*'); ch = 0; } //Buttons scan // Button 1 if (B1==0) { RELAY_HIGH; } else { RELAY_LOW; } // Button 2 if (B2==0) { SEND_CMD(CLR_DISP); SEND_CMD(DD_RAM_ADDR); SEND_STR("Press button 2"); } // Button 3 if (B3==0) { SEND_CMD(CLR_DISP); SEND_CMD(DD_RAM_ADDR); SEND_STR("Press button 3"); } // Button 4 while (B4==0) Buzzer(); // Button 3 if (B5==0) { SEND_CMD(CLR_DISP); SEND_CMD(DD_RAM_ADDR); SEND_STR("Press button 5"); } } }