LIN总线节点的设计
发布时间:2007/4/23 0:00:00 访问次数:672
1998年,汽车制造商奥迪公司、宝马公司、戴姆勒克莱斯勒公司、沃尔沃汽车公司、大众汽车公司、通信领域的专业厂商火山通信技术公司以及半导体生产商摩托罗拉公司共同创建了LIN(Local Interconnect Network)协会,其目的是为汽车网络系统提供一个开放的A类(数据传输位速率通常小于10kb/sv的低速车身网络)串行总线通信标准,允许在此基础上开发汽车低端网络系统,并且不需要使用者支持使用费用或版税。
1 LIN协议的通信机制
1.1 主机和从机
从通讯协议的角度来看,一个LIN网络由一个主机任务模块(Master Task)若干个从机任务模块(Slave Task)组成。主机节点中既有主机任务模块又有从机任务模块;其它节点中只有从机任务模块。图1是由一个主机节点、两个从机节点组成的LIN网络。
在LIN网络中,主机任务模块决定什么时候在总线上传输什么报文帧,而从机任务模块则提供每一帧需要传送的数据。主机任务模块和从机任务模块都是帧处理层的组成部分。
1.2 报文帧
一个报文帧由一个帧头(由主机任务模块提供)和一个响应帧(由从机任务模块提供)组成。帧头包括一个同步间隔场(SYNCH BREAK FIELD)、一个同步场(SYNCH FIELD)和一个标识符场。报文帧的用途由标识符唯一定义,约定的从机任务根据标识符提供相关的响应帧并发送到总线上(如图2、图3所示),响应帧由2、4或8字节的数据场(DATA FIELD)和一个校验和场(CHECKSUM FIELD)组成。对这个标识符相联的数据感兴趣的从机任务将接收响应帧,校验和检验通过后对数据进行处理。
这样的通讯机制带来了非常理想的效果:
*系统灵活性:在LIN网络中可以直接增加节点而不需要对其它从机节点的硬件和软件进行修改;
*报文路由:报文的内容由标识符定义;
*广播:多个节点可以同时接收一个单独的报文帧,并对报文作出反应。
2 LIN总线试验平台的软硬件设计
2.1 MCU芯片
主机MCU选用了瑞萨(Renesas)公司的M16C/6N系列的M306NBFCTFP,其特点如下:
*128K ROM,5K RAM
*三路串行口(两路UART/时钟同步口,一路时钟同步口)
*一路CAN模块
*丰富的I/O资源
从机MCU选用Atmel公司的基于8051内核的微控制器AT89C2051,其特点为:
*2K字节的Flash
*128×8位的内部RAM
*两个16位定时器/计数器
*可编程的串行UART口
采用M306NBFCTFP作为主机节点的MCU是因为它具有CAN接口模块,而且增强型UART可用于支持LIN总线;采用AT89C2051作为从机节点的MCU是因为暂时不对从机节点所实现的具体功能进行设计,而只是着重于LIN网络通讯部分的设计。要履行LIN规范的通讯时序,所有节点都必须配备一个精确的振荡参考源,即主机节点(M306NBFCTFP)和从机节点(AT89C2051)上的晶振。M306NBFCTFP片内有一个专用的滤波特率发生器用于串口通讯,而AT89C2051则把定时器T1作为波特率发生器。M306NBFCTFP将I/O作为扩展区域。这两种微控制器都具有增强型UART,可用于支持串行LIN传输。定时器T0可用于各种超时检测。此外,由于LIN的同步间隔超过普通UART所能处理的长度,所以从机节点AT89C2051使用中断来进行同步间隔检测。
图4和图5分别为主机节点和从机节点的电路原理图。
2.2 LIN总线通讯软件的设计
LIN节点是通过应用程序中的主机任务和从机任务来实现LIN网络通讯的。主机节点包含主
1998年,汽车制造商奥迪公司、宝马公司、戴姆勒克莱斯勒公司、沃尔沃汽车公司、大众汽车公司、通信领域的专业厂商火山通信技术公司以及半导体生产商摩托罗拉公司共同创建了LIN(Local Interconnect Network)协会,其目的是为汽车网络系统提供一个开放的A类(数据传输位速率通常小于10kb/sv的低速车身网络)串行总线通信标准,允许在此基础上开发汽车低端网络系统,并且不需要使用者支持使用费用或版税。
1 LIN协议的通信机制
1.1 主机和从机
从通讯协议的角度来看,一个LIN网络由一个主机任务模块(Master Task)若干个从机任务模块(Slave Task)组成。主机节点中既有主机任务模块又有从机任务模块;其它节点中只有从机任务模块。图1是由一个主机节点、两个从机节点组成的LIN网络。
在LIN网络中,主机任务模块决定什么时候在总线上传输什么报文帧,而从机任务模块则提供每一帧需要传送的数据。主机任务模块和从机任务模块都是帧处理层的组成部分。
1.2 报文帧
一个报文帧由一个帧头(由主机任务模块提供)和一个响应帧(由从机任务模块提供)组成。帧头包括一个同步间隔场(SYNCH BREAK FIELD)、一个同步场(SYNCH FIELD)和一个标识符场。报文帧的用途由标识符唯一定义,约定的从机任务根据标识符提供相关的响应帧并发送到总线上(如图2、图3所示),响应帧由2、4或8字节的数据场(DATA FIELD)和一个校验和场(CHECKSUM FIELD)组成。对这个标识符相联的数据感兴趣的从机任务将接收响应帧,校验和检验通过后对数据进行处理。
这样的通讯机制带来了非常理想的效果:
*系统灵活性:在LIN网络中可以直接增加节点而不需要对其它从机节点的硬件和软件进行修改;
*报文路由:报文的内容由标识符定义;
*广播:多个节点可以同时接收一个单独的报文帧,并对报文作出反应。
2 LIN总线试验平台的软硬件设计
2.1 MCU芯片
主机MCU选用了瑞萨(Renesas)公司的M16C/6N系列的M306NBFCTFP,其特点如下:
*128K ROM,5K RAM
*三路串行口(两路UART/时钟同步口,一路时钟同步口)
*一路CAN模块
*丰富的I/O资源
从机MCU选用Atmel公司的基于8051内核的微控制器AT89C2051,其特点为:
*2K字节的Flash
*128×8位的内部RAM
*两个16位定时器/计数器
*可编程的串行UART口
采用M306NBFCTFP作为主机节点的MCU是因为它具有CAN接口模块,而且增强型UART可用于支持LIN总线;采用AT89C2051作为从机节点的MCU是因为暂时不对从机节点所实现的具体功能进行设计,而只是着重于LIN网络通讯部分的设计。要履行LIN规范的通讯时序,所有节点都必须配备一个精确的振荡参考源,即主机节点(M306NBFCTFP)和从机节点(AT89C2051)上的晶振。M306NBFCTFP片内有一个专用的滤波特率发生器用于串口通讯,而AT89C2051则把定时器T1作为波特率发生器。M306NBFCTFP将I/O作为扩展区域。这两种微控制器都具有增强型UART,可用于支持串行LIN传输。定时器T0可用于各种超时检测。此外,由于LIN的同步间隔超过普通UART所能处理的长度,所以从机节点AT89C2051使用中断来进行同步间隔检测。
图4和图5分别为主机节点和从机节点的电路原理图。
2.2 LIN总线通讯软件的设计
LIN节点是通过应用程序中的主机任务和从机任务来实现LIN网络通讯的。主机节点包含主
上一篇:CAN总线智能适配卡的设计