Example #1
0
void main(void) {
   //configuring
   P1OUT |=  0x04;                               // set P1.2 for debug
   P4DIR  |= 0x20;                               // P4.5 as output (for debug)
   
   gina_init();
   scheduler_init();
   leds_init();
   
   if (*(&eui64+3)==0x09) {                      // this is a GINA board (not a basestation)
      gyro_init();
      large_range_accel_init();
      magnetometer_init();
      sensitive_accel_temperature_init();
   }
   
   radio_init();
   timer_init();
   
   P1OUT &= ~0x04;                               // clear P1.2 for debug
   
   //check sensor configuration is right
   gyro_get_config();
   large_range_accel_get_config();
   magnetometer_get_config();
   sensitive_accel_temperature_get_config();

   //scheduler_push_task(ID_TASK_APPLICATION);
   
   scheduler_register_application_task(&task_application_imu_radio, 0, FALSE);

   scheduler_start();
}
Example #2
0
void rt_init() {
   // startup the sensor
   sensitive_accel_temperature_init();
   
   // prepare the resource descriptor for the /temp path
   rt_vars.desc.path0len             = sizeof(rt_path0)-1;
   rt_vars.desc.path0val             = (uint8_t*)(&rt_path0);
   rt_vars.desc.path1len             = 0;
   rt_vars.desc.path1val             = NULL;
   rt_vars.desc.componentID          = COMPONENT_RT;
   rt_vars.desc.callbackRx           = &rt_receive;
   rt_vars.desc.callbackSendDone     = &rt_sendDone;
   

   rt_vars.timerId    = opentimers_start(openrandom_get16b()%RTPERIOD,
                                          TIMER_PERIODIC,TIME_MS,
                                          rt_timer);
   opencoap_register(&rt_vars.desc);
}