完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
从 esp32 的 uart 引脚接收到的数据与普通的 putty 通信不同。
我想做什么?我的方法是什么? 我正在通过 UART(引脚 33、32)向设备发送一些数据。 一旦我在 putty 中发送命令,我得到的响应是“ok”或“err”(基于命令的有效性),但 esp32 中的以下代码得到的是“oC”、“oJ”、“erR” “ 或无。 我正在使用的代码: 代码:全选 #include #include #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "freertos/queue.h" #include "driver/uart.h" #include "esp_log.h" #define READ_BUF_SIZE (1024) static const char *TAG = "esp"; uart_config_t uart_config = { .baud_rate = 115200, .data_bits = UART_DATA_8_BITS, .parity = UART_PARITY_DISABLE, .stop_bits = UART_STOP_BITS_1, .flow_ctrl = UART_HW_FLOWCTRL_DISABLE, }; uart_port_t uart_1_init() { uart_port_t uart_num_1 = UART_NUM_1; ESP_ERROR_CHECK(uart_param_config(uart_num_1, &uart_config)); uart_set_pin(uart_num_1, 33, 32, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE); ESP_ERROR_CHECK(uart_driver_install(uart_num_1, READ_BUF_SIZE * 2, 0, 0, NULL, 0)); return uart_num_1; } static char data_rec[1024]; void app_main(void) { uart_port_t uart_num_1 = uart_1_init(); while (1) { uart_write_bytes(uart_num_1, "command", strlen((const char *)"command")); uart_read_bytes(uart_num_1, data_rec, 1024, 100 / portTICK_PERIOD_MS); printf("Data: %s \n", data_rec); } } 我尝试使用中断和示例代码,但在编译并运行示例代码后,它卡在了这一行: 代码:全选 cpu_start: Starting scheduler on P 在 esp32 中获得可靠输出的解决方案是什么? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1692个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
35802 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
3986 浏览 0 评论
5530 浏览 1 评论
6377 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
3857 浏览 0 评论
327浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
291浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
311浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
377浏览 2评论
390浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-28 03:24 , Processed in 0.700939 second(s), Total 72, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号