Exemple #1
0
void radioStress0_thread(void* arg) {
  message_t* m = (message_t*)arg;
  for(;;) {
    if(TOS_NODE_ID == 0) {
      amRadioReceive(m, 2000, 20);
      led0Toggle();
    }
    else {
      if(amRadioSend(!TOS_NODE_ID, m, 0, 20) == SUCCESS)
        led0Toggle();
    }
  }
}
Exemple #2
0
void blink0_thread(void* arg) {
  if(blink0_count++ == 0)
    led0Toggle();
  tosthread_create(&thread_handler, blink1_thread, NULL, 100);
  tosthread_create(&thread_handler, blink2_thread, NULL, 100);
  tosthread_create(&thread_handler, blink0_thread, NULL, 100);
}
void send_thread(void* arg) {
  for(;;) {
    barrier_block(&send_barrier);
    barrier_reset(&send_barrier, NUM_SENSORS + 1);
    
    if(amRadioSend(AM_BROADCAST_ADDR, &send_msg, sizeof(sensor_data_t), AM_SENSOR_DATA_MSG) == SUCCESS) {
      sensor_data->seq_no++;
      led0Toggle();
    }
    //tosthread_sleep(SAMPLING_PERIOD);
    barrier_block(&sense_barrier);
    barrier_reset(&sense_barrier, NUM_SENSORS + 1);
  }
}
Exemple #4
0
// --------------------------------------------
// --------------------------------------------
void appMain(void)
{
    serialEnableRX(PRINTF_SERIAL_ID);
    // serialSetReceiveHandle(PRINTF_SERIAL_ID, onSerRecv);
    serialSetPacketReceiveHandle(PRINTF_SERIAL_ID, onSerRecv, serBuffer, SER_BUF_SIZE);

    radioSetReceiveHandle(onRadioRecv);
    radioOn();
    mdelay(200);

    // Send restart message to the phaser
    send_ctrl_msg(MSG_ACT_RESTART);

    while (1) {
        mdelay(RATE_DELAY);
        led0Toggle();
    }
}