Exemple #1
0
void range_sensor_init(uint8_t uart_id, uint32_t baud,
                       QueueHandle_t queue,
                       range_data_cb_t cb)
{
    range_uart_clear();
    range_uart_id = uart_id;
    uart_init(uart_id, baud);
    range_data_cb = cb;
    range_send_queue = queue;

    uart_int_cb_reg(uart_id, range_recv_ch_cb);
}
Exemple #2
0
/**
 * @brief
 */
void lora_init(uint8_t uart_id, uint32_t baud)
{
    lora_port = uart_id;

    lora_gpio_init();
    uart_init(lora_port, baud);
    uart_int_cb_reg(lora_port, lora_recv_ch_cb);

    lora_daemon_timer = xTimerCreate("LoraTimer",
                                     2,
                                     pdTRUE,
                                     NULL,
                                     lora_recv_timeout_cb);
}
Exemple #3
0
static bool_t gprs_init()
{
	wdt_clear(SOFT_WDT);
	gprs_info.heart = FALSE;
	port_init();
	
	uart_init(gprs_info.uart_port, gprs_info.uart_speed);
	uart_int_cb_reg(gprs_info.uart_port, gprs_uart_inter_recv);
	ipconfig_get(ipconfig, 50);
	gprs_info.gprs_state = READY_IDLE;
	
	gprs_mutex = xSemaphoreCreateMutex();
	guart_Semaphore = xSemaphoreCreateBinary();  
	
	xTaskCreate(gprs_task, "gprs_task", 300, NULL, tskIDLE_PRIORITY+6, NULL);  
	xTaskCreate(uart_deal_task, "uart_deal_task", 50, NULL, tskIDLE_PRIORITY+7, NULL);  
	if(gprs_info.mode == TRUE)
	{
		xTaskCreate(gprs_heart, "gprs_heart", 50, NULL, tskIDLE_PRIORITY+1, NULL);  
	}
	
	gprs_daemon_timer = xTimerCreate("GprsTimer",
									 (6 * configTICK_RATE_HZ),
									 pdTRUE,
									 NULL,
									 gprs_sent_timeout_cb);
	
	if (gprs_daemon_timer == NULL) {
		DBG_ASSERT(FALSE __DBG_LINE);
	}
	
	gprs_queue = xQueueCreate(2, sizeof(esn_msg_t));
	if (gprs_queue == NULL)
	{
		DBG_ASSERT(FALSE __DBG_LINE);
	}
	
	esn_msg_t esn_msg;
	esn_msg.event = GPRS_EVENT;
	xQueueSend(gprs_queue, &esn_msg, portMAX_DELAY);
	return TRUE;
}