Thread 中讨论的其他器件:SysConfig
你(们)好
我正在使用 uart2callback、它在从终端接收单个字符时使用中断、然后中断都可以正常工作、但是我希望能够解码一个看起来像的字符串(Nextion 显示)
(65 00 01 00 FF FF) FF FF FF FF FF 部件表示已完成,是否有人可以 帮助我实施此操作或向我展示实现此操作的最佳方法。
此致
David
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你(们)好
我正在使用 uart2callback、它在从终端接收单个字符时使用中断、然后中断都可以正常工作、但是我希望能够解码一个看起来像的字符串(Nextion 显示)
(65 00 01 00 FF FF) FF FF FF FF FF 部件表示已完成,是否有人可以 帮助我实施此操作或向我展示实现此操作的最佳方法。
此致
David
尊敬的 David:
您可以首先查看我们的 UART2文档: https://dev.ti.com/tirex/explore/content/simplelink_cc13xx_cc26xx_sdk_6_30_01_03/docs/drivers/doxygen/html/_u_a_r_t2_8h.html
然后、要检测最后一个尾随 FFs、可以在中断处理程序中实现一个在接收 FFs 时递增的计数器。
当此计数器达到所需的 FF 量时、您可以考虑收到的消息。
如果遇到任何其他字符、该计数器将被重置。
此致、
Arthur
您好、Arthur
我已经看了您提到的文件、但它实际上对中断方面的事情、也就是线路没有帮助
| INT_fast16_t UART2_READ | ( | UART2_Handle | 手柄、 |
| void * | 缓冲器、 | ||
| size_t | 尺寸、 | ||
| size_t * | 字节参考 | ||
| ) |
看起来很有趣、但我不知道如何将其设置为在说6个接收到的字符时中断、然后中断是否可以帮助别人?
此致
David
尊敬的 David:
抱歉让你迷路了。 根据该主题:
我们看到 RX FIFO 阈值不能用于您的情况。
您必须做的实际上是 UART_READ()调用中的 size 参数(在您的情况下为6):
/* Pass NULL for bytesRead since it's not used in this example */
status = UART2_read(uart, &input, 6, NULL);
然后、您将注意到、您的中断将在接收到6个字符后被调用。
此致、
Arthur