工具/软件:TI-RTOS
大家好
我在简单 BLE 外设项目中添加了 UART、我遇到了与 UART_READ()相关的问题
UART_PARAMS_INIT (uartParams); uartParams.writeDataMode = UART_DATA_BINARY; uartParams.writeMode = UART_MODE_CALLACK; uartParams.writeCallback = WriteCallback; uartParams.readMode = UART_MODE_CALLACK; uartParams.readCallback = ReadCallback; uartParams.readReturnMode = UART_return_full; uartParams.readEcho = UART_ECHO_OFF; uartParams.baudrate = 9600; UART = UART_OPEN (Board_UART0、uartParams);
我正在调用 UART_READ (UART、&INPUT、1); 在 SimpleBLEPeripheral_taskFxn 上的主循环内、它会在大部分时间内工作、但有时我会错过1个字节1/500次。 我的应用程序要求以字节到字节的方式进行读取、这是没有其他方法的。
我的担心是,每次我希望接收 UART 数据并且 UART 读取被定义为回调(伪中断)时,我必须调用 UART_READ(),但有时它会丢失传入的数据
我尝试了几种方式在 UART 读取回调内 、在 SimpleBLEPeripheral_taskFxn 的主循环内调用 UART_Read、但仍然会发生相同的问题
我在论坛上阅读了一些个别帖子、但没有真正的解决方案示例:
https://e2e.ti.com/support/wireless_connectivity/proprietary_sub_1_ghz_simpliciti/f/156/t/538869
硬件:CC2650
谢谢
ELA
有人可以用一只手来解决这个问题吗?