1 Star 0 Fork 18

bcsvr.com/easyio-lib-for-esp32

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

21_UART1_TX_RX

例程简介

ESP32的 UART 硬件,用于UART串口通信。

使用 FreeRTOSTask,创建三个任务:

  1. led_task ,控制LED闪烁

  2. uart_tx_task ,配置uart1-txrx,通过串口发送数据。

  3. uart_rx_task ,uart1-rx接收数据,使用等待时长的方式去接收数据。

硬件上需要将 uart1-txuart1-tx 的引脚连接。

使用 uart_config.c.h 驱动模块,来对ESP32的 UART 进行配置。进行UART串口通信操作。

运行现象

  • ESP32-IOT-KIT开发板的J8,用跳线帽将 IO13 与 IO15 短接。编译、下载、运行Demo。

  • LED闪烁。

  • 硬件上将 uart1-txuart1-tx 的引脚连接。打开调试窗口,可以接收到消息 "uart1, Hello!"。

学习内容

  1. ESP32的UART配置及用法。

详见乐鑫在线文档: https://docs.espressif.com/projects/esp-idf/zh_CN/stable/esp32/api-reference/peripherals/uart.html

关键函数

// 配置uartx,无硬件流控(uartx、波特率、输出端口、队列)
void uart_init_no_hwfc(uart_port_t uart_num, uint32_t baud_rate, int tx_io_num, int rx_io_num, int queue_size, QueueHandle_t *uart_queue);

// uart发送字符串
int uart_sendData(uart_port_t uart_num, const char* data);

// uart接收
int uart_read_bytes(uart_port_t uart_num, void* buf, uint32_t length, TickType_t ticks_to_wait);

注意事项

  • uart可以映射到除仅能做输入 和 6、7、8、9、10、11之外的任意端口。 除了uart0,其他的uart没有默认端口,均可任意IO映射。
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/bcsvr/easyio-lib-for-esp32.git
git@gitee.com:bcsvr/easyio-lib-for-esp32.git
bcsvr
easyio-lib-for-esp32
easyio-lib-for-esp32
master

搜索帮助