我在通过UART传输的Linux SBC上实现LIN协议。我没有时间开发完整的LIN堆栈,所以我只是为协议定义的消息实现帧结构。问题是该协议需要一个" Break"使总线上的从设备监听的字段。该字段由13位时间的零组成。有什么想法如何在串行数据传输需要完整字节的情况下通过UART发送13位时间?
答案 0 :(得分:0)
每Wiki:
LIN(本地互连网络)是用于的串行网络协议 车辆组件之间的通信。需要便宜 串行网络作为技术和设施而出现 在汽车上实施的增长,而CAN总线太贵了 实现汽车中的每个组件。欧洲汽车制造商 开始使用不同的串行通信拓扑,这导致了 兼容性问题。
如果你在课堂上注意到了,你就会知道:
数据通过总线以固定格式的消息传输 可选长度。 主任务传输包含的标头 中断信号后跟同步和标识符字段。 从站响应的数据帧由2,4和2组成 8个数据字节加上3个字节的控制信息。
你应该发送一个0x0000
的回声跟随CR / LF。