XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_main.c
浏览该文件的文档.
1
17/* ==================== [Includes] ========================================== */
18
19#include "xf_hal.h"
20#include "xf_task.h"
21
22/* ==================== [Defines] =========================================== */
23
24#define UART_NUM 1
25#define UART_BAUDRATE 115200
26
27#define UART_TX_NUM 15
28#define UART_RX_NUM 16
29
30#define TASK_PRIORITY 5
31#define TASK_DELAY_MS 2000
32
33#define RX_SIZE_DEFAULT (64)
34
35#define TAG "example_uart"
36
37/* ==================== [Typedefs] ========================================== */
38
39/* ==================== [Static Prototypes] ================================= */
40
41static void uart_rx_task(xf_task_t task);
42static void uart_tx_task(xf_task_t task);
43
44/* ==================== [Static Variables] ================================== */
45
46/* ==================== [Macros] ============================================ */
47
48/* ==================== [Global Functions] ================================== */
49
58
59/* ==================== [Static Functions] ================================== */
60
62{
63 UNUSED(task);
64 uint8_t data[RX_SIZE_DEFAULT] = {0};
66 if (len > 0) {
67 XF_LOGI(TAG, ">>READ:size:%d,%s", len, data);
68 } else {
69 XF_LOGI(TAG, ">>READ:NONE");
70 }
71}
72
74{
75 UNUSED(task);
76 uint8_t data[] = "I M UART TX Task";
77 int len = xf_hal_uart_write(UART_NUM, (const uint8_t *) data, sizeof(data));
78 if (len > 0) {
79 XF_LOGI(TAG, ">>WRITE:size:%d", len);
80 } else {
81 XF_LOGI(TAG, ">>WRITE:NONE");
82 }
83}
void xf_main(void)
Definition xf_main.c:28
xf_err_t xf_hal_uart_init(xf_uart_num_t uart_num, uint32_t baudrate)
uart 初始化。
Definition xf_hal_uart.c:50
int xf_hal_uart_read(xf_uart_num_t uart_num, uint8_t *data, uint32_t data_len)
uart 读取函数。
int xf_hal_uart_write(xf_uart_num_t uart_num, const uint8_t *data, uint32_t data_len)
uart 写入函数。
xf_err_t xf_hal_uart_set_gpio(xf_uart_num_t uart_num, xf_gpio_num_t tx_num, xf_gpio_num_t rx_num)
uart 设置 uart 的通讯 io。
xf_err_t xf_hal_uart_enable(xf_uart_num_t uart_num)
uart 启用函数。
Definition xf_hal_uart.c:91
static xf_task_t xf_ttask_create_loop(xf_task_func_t func, void *func_arg, uint16_t priority, uint32_t delay_ms)
在默认的任务管理下,创建 ttask 循环任务。
Definition xf_task.h:162
#define TAG
Definition xf_main.c:24
#define TASK_DELAY_MS
Definition xf_main.c:27
#define TASK_PRIORITY
Definition xf_main.c:26
#define UART_BAUDRATE
Definition xf_main.c:25
#define UART_RX_NUM
Definition xf_main.c:27
#define UART_NUM
Definition xf_main.c:24
#define UART_TX_NUM
Definition xf_main.c:26
#define RX_SIZE_DEFAULT
Definition xf_main.c:33
static void uart_tx_task(xf_task_t task)
Definition xf_main.c:73
static void uart_rx_task(xf_task_t task)
Definition xf_main.c:61
static void task(xf_task_t task)
Definition xf_main.c:45
#define XF_LOGI(tag, format,...)
void * xf_task_t
任务句柄。
#define UNUSED(_x)