OSStatus user_modules_init(void) { OSStatus err = kUnknownErr; // init DC Motor(GPIO) dc_motor_init(); dc_motor_set(0); // off // init RGB LED(P9813) hsb2rgb_led_init(); hsb2rgb_led_open(0, 0, 0); // off // init OLED OLED_Init(); //OLED_Clear(); LCD_Clear(0x00); OLED_ShowString(20,0,"M X C H I P"); OLED_ShowString(20,3,(uint8_t*)DEFAULT_DEVICE_NAME); OLED_ShowString(0,6,"T: 0C H: 0%"); // init Light sensor(ADC) light_sensor_init(); // init infrared sensor(ADC) infrared_reflective_init(); // init user key1 && key2 user_key1_init(); user_key2_init(); err = kNoErr; return err; }
PROCESS_THREAD(udp_plug_process, ev, data) { static struct etimer et; PROCESS_BEGIN(); PRINTF("UDP server started\r\n"); #if DEV_BOARD leds_on(LEDS_RED | LEDS_GREEN); SENSORS_ACTIVATE(button_sensor); #else leds_on(LEDS_GREEN); #ifdef HAS_PIR_SENSOR pir_state = PIR_DISPATCH; etimer_set(&pir_timer, PIR_INIT_TIME); #endif #endif #if HAS_TEMP_SENSOR start_temp_conv(); #endif #if HAS_LIGHT_SENSOR light_sensor_init(); #endif udp_conn = udp_new(NULL, UIP_HTONS(0), NULL); udp_bind(udp_conn, UIP_HTONS(PLUG_PORT)); PRINTF("listening on udp port %u\r\n",UIP_HTONS(udp_conn->lport)); etimer_set(&et, SEND_INTERVAL); while(1) { PROCESS_YIELD(); if(etimer_expired(&et)) { timeout_handler(); etimer_restart(&et); } #ifdef HAS_PIR_SENSOR if((pir_state == PIR_DISPATCH)&&(etimer_expired(&pir_timer))) { SENSORS_ACTIVATE(button_sensor); pir_state = PIR_READY; } #endif if(ev == tcpip_event) { PRINTF("Calling tcpip_Handler\r\n"); tcpip_handler(); } if (ev == sensors_event && data == &button_sensor) { #ifndef DEV_BOARD handle_pir_event(); #endif PRINTF("Button Pressed\r\n"); } } PROCESS_END(); }
void ccd_all_pin_init(){ /****************** 2nd Gen Main Board ******************/ gpio_init(PORTB, 8, GPO, 1); //PTB8 , SI gpio_init(PORTB, 9, GPO, 1); //PTB9 , Clock / CLK gpio_init(PORTB, 10, GPI, 1); //PTB10, AO(D1) //gpio_init(PORTE,6,GPI,0); // SW2 gpio_init(PORTE,8,GPI,0); // SW4 gpio_init(PORTE,9,GPI,0); // SW5 LED_init(); // To test ccd sampling function is operating light_sensor_init(); gpio_set(PORTE,26,0); // defatul speed mode = 0 }
int application_start( void ) { OSStatus err = kNoErr; uint16_t light_sensor_data = 0; /*init Light sensor*/ err = light_sensor_init(); require_noerr_action( err, exit, ext_light_sensor_log("ERROR: Unable to Init light sensor") ); while(1) { err = light_sensor_read(&light_sensor_data); require_noerr_action( err, exit, ext_light_sensor_log("ERROR: Can't light sensor read data") ); ext_light_sensor_log("light date: %d", light_sensor_data); mico_thread_sleep(1); } exit: return err; }
//------------------------------------- API ------------------------------------ OSStatus user_modules_init(void) { OSStatus err = kUnknownErr; char oled_show_line[16] = {'\0'}; // max char each line // init DC Motor(GPIO) dc_motor_init(); dc_motor_set(0); // off // init RGB LED(P9813) rgb_led_init(); rgb_led_open(0, 0, 0); // off // init OLED OLED_Init(); OLED_Clear(); snprintf(oled_show_line, 16, "%s", (uint8_t*)DEV_KIT_MANUFACTURER); OLED_ShowString(0,0,(uint8_t*)oled_show_line); memset(oled_show_line, '\0', 16); snprintf(oled_show_line, 16, "%s", (uint8_t*)DEV_KIT_NAME); OLED_ShowString(0,3,(uint8_t*)oled_show_line); OLED_ShowString(0,6,"Starting... "); // init Light sensor(ADC) light_sensor_init(); // init infrared sensor(ADC) infrared_reflective_init(); // init user key1 && key2 user_key1_init(); user_key2_init(); err = temp_hum_sensor_init(); return err; }
//------------------------------------- API ------------------------------------ OSStatus micokit_STmems_init(void) { OSStatus err = kUnknownErr; #if defined(MICOKIT_STMEMS_KEY1)||defined(MICOKIT_STMEMS_KEY2) button_init_t init; #endif //init RGB LED(P9813) rgb_led_init(); rgb_led_close(); // off dc_motor_init(); dc_motor_set(0); // off // init OLED OLED_Init(); OLED_ShowString(OLED_DISPLAY_COLUMN_START, OLED_DISPLAY_ROW_1, (uint8_t*)MODEL); OLED_ShowString(OLED_DISPLAY_COLUMN_START, OLED_DISPLAY_ROW_2, (uint8_t*)"MiCO "); OLED_ShowString(OLED_DISPLAY_COLUMN_START, OLED_DISPLAY_ROW_3, (uint8_t*)" Starting... "); OLED_ShowString(OLED_DISPLAY_COLUMN_START, OLED_DISPLAY_ROW_4, (uint8_t*)" "); #ifdef MICOKIT_STMEMS_KEY1 init.gpio = MICOKIT_STMEMS_KEY1; init.pressed_func = micokit_STmems_key1_clicked_callback; init.long_pressed_func = NULL; init.long_pressed_timeout = 5000; button_init( IOBUTTON_USER_1, init); #endif #ifdef MICOKIT_STMEMS_KEY2 init.gpio = MICOKIT_STMEMS_KEY2; init.pressed_func = micokit_STmems_key2_clicked_callback; init.long_pressed_func = NULL; init.long_pressed_timeout = 5000; button_init( IOBUTTON_USER_2, init); #endif /*init HTS221 */ err = hts221_sensor_init(); require_noerr_string( err, exit, "ERROR: Unable to Init HTS221" ); /*init UVIS25 */ err = uvis25_sensor_init(); require_noerr_string( err, exit, "ERROR: Unable to Init UVIS25" ); /*init LSM9DS1_ACC_GYR */ err = lsm9ds1_acc_gyr_sensor_init(); require_noerr_string( err, exit, "ERROR: Unable to Init LSM9DS1_ACC_GYR" ); err = lsm9ds1_mag_sensor_init(); require_noerr_string( err, exit, "ERROR: Unable to Init LSM9DS1_MAG" ); /*init LPS25HB */ err = lps25hb_sensor_init(); require_noerr_string( err, exit, "ERROR: Unable to Init LPS25HB" ); light_sensor_init(); exit: return err; }