一种新型CAN总线冗余电路设计与研究
时间:03-11
来源:互联网
点击:
3 软件编程
CAN总线节点的通信程序主要包括初始化、报文发送和报文接收三部分。
(1)CAN节点初始化主要是配置控制组寄存器。在初始化前,必须确保CAN控制器进入复位模式。初始化主要有:配置总线定时器BTR0和BTR1,设定总线通信波特率;配置输出控制寄存器OCR,设定控制器输出管脚CTXO和CTX1的输出模式;配置验收码寄存器ACR和验收屏蔽码寄存器AMR,设定验收码和验收屏蔽码。
(2)报文发送程序将报文(目标节点ID、数据长度和数据)送入发送缓冲器,然后启动发送指令即可,CAN控制器能自动报文发送过程。报文发送可通过中断和查询两种方式实现,但是中断方式效率高,采用较多。
(3)报文接收程序是从CAN控制器的接收缓冲器读取节点需要的数据并保存。数据接收也可通过中断和查询两种方式实现,普遍采用效率高的中断方式。
4 结论
本文所设计的驱动器冗余电路简单,能较好地提高硬件可靠性,相对降低了成本,同时,为双总线运行提供了更多的方式,使得编程更加灵活,可以提高总线通信利用率。除此之外,在报文发送出现冲突时,还可以通过软件转移负荷,平衡双总线的通信负荷。
参考文献
1. 汪晋宽,马淑华,吴雨川.工业网络技术[M].北京:北京邮电大学出版社,2005.08.
2. 周江春.基于双CAN总线船舶机舱自动化监测系统的设计与实现[D].上海交通大学硕士学位论文.20040601.
3. 陈尧,孙汉旭,贾庆轩,等.空间机器人冷热双冗余CAN总线系统的研制[J].测控技术与仪器仪表,2008,(2):83-90.
4. 曹俊敏,孟祥群,唐厚君.单个CAN控制器的双总线冗余网络实现[J].微处理机,2007(4):29-31.
5. 马力伟.基于双CAN冗余网络的电力机车逻辑控制单元设计[D].合肥上业大学硕士学位论文.20050301.
作者:段正强,梁述海 海军工程大学 来源:电子技术 2009(12)
CAN总线节点的通信程序主要包括初始化、报文发送和报文接收三部分。
(1)CAN节点初始化主要是配置控制组寄存器。在初始化前,必须确保CAN控制器进入复位模式。初始化主要有:配置总线定时器BTR0和BTR1,设定总线通信波特率;配置输出控制寄存器OCR,设定控制器输出管脚CTXO和CTX1的输出模式;配置验收码寄存器ACR和验收屏蔽码寄存器AMR,设定验收码和验收屏蔽码。
(2)报文发送程序将报文(目标节点ID、数据长度和数据)送入发送缓冲器,然后启动发送指令即可,CAN控制器能自动报文发送过程。报文发送可通过中断和查询两种方式实现,但是中断方式效率高,采用较多。
(3)报文接收程序是从CAN控制器的接收缓冲器读取节点需要的数据并保存。数据接收也可通过中断和查询两种方式实现,普遍采用效率高的中断方式。
4 结论
本文所设计的驱动器冗余电路简单,能较好地提高硬件可靠性,相对降低了成本,同时,为双总线运行提供了更多的方式,使得编程更加灵活,可以提高总线通信利用率。除此之外,在报文发送出现冲突时,还可以通过软件转移负荷,平衡双总线的通信负荷。
参考文献
1. 汪晋宽,马淑华,吴雨川.工业网络技术[M].北京:北京邮电大学出版社,2005.08.
2. 周江春.基于双CAN总线船舶机舱自动化监测系统的设计与实现[D].上海交通大学硕士学位论文.20040601.
3. 陈尧,孙汉旭,贾庆轩,等.空间机器人冷热双冗余CAN总线系统的研制[J].测控技术与仪器仪表,2008,(2):83-90.
4. 曹俊敏,孟祥群,唐厚君.单个CAN控制器的双总线冗余网络实现[J].微处理机,2007(4):29-31.
5. 马力伟.基于双CAN冗余网络的电力机车逻辑控制单元设计[D].合肥上业大学硕士学位论文.20050301.
作者:段正强,梁述海 海军工程大学 来源:电子技术 2009(12)
总线 CAN总线 机器人 自动化 电路 单片机 电子 相关文章:
- 热插拔和缓冲I2C总线 (04-14)
- PCIe总线何时突破Unix服务器坚冰(02-03)
- TMS320VC5402 HPI接口与PCI总线接口设计(04-12)
- 基于Nios II的I2C总线接口的实现(04-09)
- 双口RAM CY7C026在高速数据采集系统中的应用(04-12)
- 计算机在新型多电机同步系统中的应用(07-08)