LIN-BUS(Local Interconnect Network)是常见于车内的汇流排,虽然LIN-BUS高层协议有些复杂(例如LDF,NCF),但对第一次设计的工程师而言,光是实现低阶LIN-BUS message的传输,就需要耗掉很多时间去研读跟反覆试验,而Microchip MCC (MPLAB® Code Configurator)就提供LIN程式产生器,可快速帮您设计出原型,后续可轻易叠加上层协议或与第三方软体。
LIN-BUS经由实体单线,由一个主节点跟最多15个从结点组成,主节点控制了整个汇流排的传输,而从结点则根据已排定的行程来做收送,如图(一)示 :
LIN-BUS利用Frame Header(Break/Sync/PID栏位)来做为主从结点间的传输控制,这会利用到两个周边:Enhanced USART与Timer来完成图(二)所示:
MCC是嵌入在MPLAB X的GUI环境,可用最易操作的方式设定/产生相关周边的驱动程式与对应程式库,针对LIN-BUS部分,MCC可帮忙产生下列程式:
1. 快速产生并整合EUSART与Timer周边的程式码
2. 转EUART为LIN各式封包
3. 自动产生PID/checksum/相关设定.
4. 自动波特率侦测 / Time-out设定
5. 硬体中断相关程式代码
6. 当无支援硬体USART时,可用软体模拟
同时Microchip也提供多种LIN-BUS开发板,快速的验证心中的想法,若配合低成本/简易操作的LIN-Serial Analyzer,让您轻松抓取LIN-BUS封包做解析。
善用MPLAB®程式码配置器(MCC),利用图形介面(GUI)来规划周边,产生相关的程式码与设定档,以减轻阅读资料手册的负担,让开发变得更为简单有趣。
更进一步的支援资讯如下,欢迎下载、阅读,并与我们经验丰富的设计团队联系。https://www.microchip.com/design-centers/lin
作者 林周正 Microchip应用工程师