xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_hal_uart.h 文件参考

XTINY HAL UART 模块接口 更多...

#include "xt_hal_internal.h"

浏览该文件的源代码.

宏定义

#define XT_HAL_UART_INVALID_ID   (0xFF)
#define XT_HAL_UART_STOP_BITS_S   (0)
#define XT_HAL_UART_STOP_BITS_W   (3)
#define XT_HAL_UART_PARITY_S   (3)
#define XT_HAL_UART_PARITY_W   (2)
#define XT_HAL_UART_WORD_LEN_S   (5)
#define XT_HAL_UART_WORD_LEN_W   (3)
#define XT_HAL_UART_WORD_LEN_5   (0)
#define XT_HAL_UART_WORD_LEN_6   (1)
#define XT_HAL_UART_WORD_LEN_7   (2)
#define XT_HAL_UART_WORD_LEN_8   (3)
#define XT_HAL_UART_WORD_LEN_9   (4)
#define XT_HAL_UART_STOP_BITS_1   (0)
#define XT_HAL_UART_STOP_BITS_2   (1)
#define XT_HAL_UART_STOP_BITS_0_5   (2)
#define XT_HAL_UART_STOP_BITS_1_5   `(3)
#define XT_HAL_UART_PARITY_N   (0)
#define XT_HAL_UART_PARITY_E   (1)
#define XT_HAL_UART_PARITY_O   (2)
#define XT_HAL_UART_PRESET(_word_length, _parity, _stop_bits)
 UART 预设配置宏
#define XT_HAL_UART_8N1   XT_HAL_UART_PRESET(_8, _N, _1)
#define XT_HAL_UART_8E1   XT_HAL_UART_PRESET(_8, _E, _1)
#define XT_HAL_UART_8O1   XT_HAL_UART_PRESET(_8, _O, _1)
#define XT_HAL_UART_8N2   XT_HAL_UART_PRESET(_8, _N, _2)
#define XT_HAL_UART_8E2   XT_HAL_UART_PRESET(_8, _E, _2)
#define XT_HAL_UART_8O2   XT_HAL_UART_PRESET(_8, _O, _2)

类型定义

typedef void(* xt_hal_uart_cb_t) (uint8_t uart_id, uint32_t event_id)
 UART 回调函数类型定义

枚举

enum  xt_hal_uart_event_id { XT_HAL_UART_EVENT_RX = 0x00 , XT_HAL_UART_EVENT_TX_DONE }
 UART 事件 ID 枚举 更多...

函数

xt_err_t xt_hal_uart_setup (uint8_t uart_id, uint32_t preset, uint32_t baudrate, uint8_t tx_pin, uint8_t rx_pin)
 初始化 UART
xt_err_t xt_hal_uart_close (uint8_t uart_id)
 关闭 UART
xt_err_t xt_hal_uart_set_rx_buf (uint8_t uart_id, void *buffer, size_t size)
 设置接收缓冲区
xt_err_t xt_hal_uart_set_tx_buf (uint8_t uart_id, void *buffer, size_t size)
 设置发送缓冲区
xt_err_t xt_hal_uart_set_cb (uint8_t uart_id, xt_hal_uart_cb_t cb)
 设置 UART 回调函数
int32_t xt_hal_uart_tx_block (uint8_t uart_id, const void *tx_buffer, size_t size)
 阻塞发送
int32_t xt_hal_uart_tx_0copy (uint8_t uart_id, const void *tx_buffer, size_t size)
 非阻塞 0 拷贝发送
int32_t xt_hal_uart_tx (uint8_t uart_id, const void *tx_buffer, size_t size)
 流式非阻塞发送
int32_t xt_hal_uart_rx (uint8_t uart_id, void *rx_buffer, size_t size)
 流式非阻塞接收
int32_t xt_hal_uart_get_rx_count (uint8_t uart_id)
 获取接收缓冲区中可读数据字节数
xt_err_t xt_hal_uart_flush_rx (uint8_t uart_id)
 清空接收缓冲区
int32_t xt_hal_uart_get_tx_free (uint8_t uart_id)
 获取发送缓冲区剩余空闲字节数
bool xt_hal_uart_is_tx_busy (uint8_t uart_id)
 查询 UART 发送是否仍在进行(含移位寄存器)

详细描述

XTINY HAL UART 模块接口

作者
your name (you@d.nosp@m.omai.nosp@m.n.com)
版本
0.1
日期
2025-06-30

SPDX-FileCopyrightText: 2025 深圳市天工聚创科技有限公司 SPDX-License-Identifier: Apache-2.0

在文件 xt_hal_uart.h 中定义.