void bootstrap()
{
#ifdef HAS_LCD
    lcd_write_string("NOISE");
#endif

#if NUM_USERBUTTONS > 1
    ubutton_register_callback(0, &userbutton_callback);
    ubutton_register_callback(1, &userbutton_callback);
#endif

    prepare_channel_indexes();

    hw_radio_init(NULL, NULL);

    fifo_init(&uart_rx_fifo, uart_rx_buffer, sizeof(uart_rx_buffer));

    uart_set_rx_interrupt_callback(&uart_rx_cb);
    uart_rx_interrupt_enable(true);

    sched_register_task(&read_rssi);
    sched_register_task(&start_rx);
    sched_register_task(&process_uart_rx_fifo);
    timer_post_task_delay(&start_rx, TIMER_TICKS_PER_SEC * 3);

    internalTempSensor_init();

    sched_register_task((&execute_sensor_measurement));
    timer_post_task_delay(&execute_sensor_measurement, TEMPERATURE_PERIOD);

    measureTemperature();
}
void bootstrap()
{
    DPRINT("Device booted at time: %d\n", timer_get_counter_value()); // TODO not printed for some reason, debug later
    id = hw_get_unique_id();
    hw_radio_init(&alloc_new_packet, &release_packet);

    rx_cfg.channel_id = current_channel_id;
    tx_cfg.channel_id = current_channel_id;

    ubutton_register_callback(0, &userbutton_callback);
    ubutton_register_callback(1, &userbutton_callback);

    fifo_init(&uart_rx_fifo, uart_rx_buffer, sizeof(uart_rx_buffer));

    uart_set_rx_interrupt_callback(&uart_rx_cb);
    uart_rx_interrupt_enable(true);

    sched_register_task(&start_rx);
    sched_register_task(&transmit_packet);
    sched_register_task(&start);
    sched_register_task(&process_uart_rx_fifo);

    current_state = STATE_CONFIG_DIRECTION;

    sched_post_task(&start);
    sched_post_task(&process_uart_rx_fifo);
}
Beispiel #3
0
//------------------------------------------------------------------------------
//
//  ComSlip_Init
//
//------------------------------------------------------------------------------
void
ComSlip_Init()
{
    // init to idle state, no rx-buffer avaliable
    ComSlip.RxState         =   SLIPDEC_IDLE_STATE;
    ComSlip.RxIndex         =   0;
    ComSlip.RxBuffer        =   0;
    ComSlip.RxBufferSize    =   0;
    
    // Init Uart Interfaces 
    //LDDUsart_Init();
    
    // Register ComSlip_ProcessRxByte at LDDUART
    //LDDUsart_RegisterClient(ComSlip_ProcessRxByte);
    //lora = uart_init(1, 115200, 4);
    lora = uart_init(0, 115200, 0);
	uart_enable(lora);
	uart_set_rx_interrupt_callback(lora, &ComSlip_ProcessRxByte);
	uart_rx_interrupt_enable(lora);
}