基于LPC2119和μC/OS-Ⅱ的CAN中继器设计
引 言
CAN总线的直接通信距离只有10 km左右,而且由于收发器驱动能力的限制,总线上最多只能挂110个节点,给系统组网带来一定的困难。CAN中继器就是为了解决这个问题而设计的。由于中继器具有数据转发功能,不仅可以扩大通信距离,还可以增加节点的最大数目。对CAN中继器初始化参数进行设置,可以在不同的网段内采用不同的通信速率,还可以对报文进行过滤,减轻总线负担。
1 CAN中继器的硬件设计
1.1 微控制器LPC2119简介
CAN中继器是以ARM微控制器LPC2119为核心的软硬件系统。LPC2119是Philips公司生产的一款基于支持实时仿真和跟踪的16/32位ARM7TDMISMCU,带有128 KB嵌入的高速Flash存储器。独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30 %,而性能的损失却很小。LPC2119内部集成2个CAN控制器。它的主要特性有:单个总线上的数据传输速率高达1 Mb/s;32位寄存器和RAM访问;兼容CAN 2.0B, ISO 118981规范;全局验收滤波器可以识别所有的11位和29位Rx标识符;验收滤波器为选择的标准标识符提供Full CANstyle自动接收。
1.2 LPC2119内部CAN控制器与SJA1000比较
LPC2119内部集成的CAN控制器与Philips公司的SJA1000 CAN控制器相比较大致相同,只是在验收滤波这一环略有不同,这为习惯SJA1000的开发人员采用LPC2119提供了方便。SJA1000验收滤波器由验收代码寄存器和验收屏蔽寄存器定义,要接收报文的位模式在验收代码寄存器中定义,相应的验收屏蔽寄存器允许定义某些位为“无关”,通过模式寄存器可以选择不同的过滤模式:单过滤模式和双过滤模式。
而对LPC2119内部集成的CAN控制器,全局验收过滤器包含一个512×32(2 KB)的RAM,通过软件处理,可在RAM中存放1~5个标识符表格,整个RAM可容纳1024个标准标识符或512的扩展标识符或两种类型混合的标识符。同时有5个地址寄存器指向验收过滤器RAM的表格:Full CAN标准地址,标准单个地址,标准地址范围,扩展单个地址或扩展地址范围。当CAN控制器的接收端已接收到一个完整的标识符时,它将通知验收过滤器,验收过滤器响应这个信号,并读出控制器编号、标识符尺寸,以及来自控制器本身的标识符,然后通过验收过滤器搜索RAM中的表格,以决定接收或放弃这一帧信息。
1 .3 CAN中继器硬件结构
中继器的硬件结构框图如图1所示。LPC2119分别通过CAN总线收发器与两路总线相连;总线驱动器采用带隔离的DC/DC模块单独供电,不仅实现了两路CAN接口之间的电器隔离,也实现了中继器与CAN总线的电器隔离。除此之外,还有LED显示和键盘接口。LED用于显示中继器的工作状态,键盘用来修正总线的波特率。最终程序的调试与跟踪通过JTAG调试口完成。
相关文章
- 2023-10-10滞迟动力吸振器简谐激励响应的迭代计算方法研究
- 2023-08-03旋转编码器在数控珩磨机中的应用
- 2022-09-05夹持方式对镜面热变形及偏转的影响
- 2023-09-27照相机性能指标的微机检测
- 2018-10-11准定常流法测定瞬时流量的判据研究
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。