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.
您好,我想在 RS485通信模式下检测 EOF。 是否有任何 API 可以为我提供 EOF 指示? 我已经实现了螺母、它仅在正常的 UART 实现中有效。 但当我将其配置为 RS485模式时。 它不起作用
我知道、在 RS 至485通信中、"帧结束"(EOF)不是一个标准术语。 相反、通信通常采用"帧"结构、即包含数据位、起始位和停止位的位序列、有时还包括奇偶校验位或错误检查位。 因此、您应该通过软件进行分析。
是的、有3.5char 帧间空间静默时间。 但我必须检测帧结束、以便可以在接收到的帧上执行操作。
另外、我也在尝试计算字符间延迟、之后我将检查该延迟的交叉是否意味着它是 EOF。 但我在计算字符间延迟(两个连续字符之间的延迟)时面临一些问题。
例如、对于大于115200的波特率、字符间延迟为750us、帧间超时为1750us。 我正在配置生成1750us 中断的定时器、并且我在其中更新 EOF 标志。 使用此设置、我收到了错误的数据。 其实我是在送我收到的东西。
发送: 41 42 43 44 45 46 47 48
接收:5F AF DD D5 CD C5 FD 01
您能否使用 UART 超时中断、它可能会为您提供一些帮助。