- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
CAN总线在多机通信中的应用
录入:edatop.com 点击:
通过上述分析,设计的电路原理图,如图2所示。
3 系统通信模块的软件设计
通信模块的软件由3部分组成:初始化程序,发送程序和接受程序。仅这3部分程序,就能完成通信节点间信息的传递。要将CAN总线应用于更复杂的通信系统中,还要考虑CAN总线的错误处理,超载处理等功能和节点间的计算方法。由于每个通信节点都有自己的MCU,所以它们之间可以自由通信。通过CAN收发器PCA82C250的引脚CANH和CANL对总线输出,使总线表现"显性",这时可发送信息。判断总线表现为"显性"时,就要为接受信息做好准备。
3.1 CAN控制器SJA1000T初始化程序
该程序首先进入复位状态,设置SJAl000T的模式寄存器MR为Basic CAN模式,验收码寄存器ACR和屏蔽码寄存器AMR,再设置定时器0和定时器1,输出控制寄存器OCR,重新设置控制寄存器CR,返回到正常工作模式下。初始化程序流程图如图3所示。
3.2 发送程序
此系统采用中断方式发送信息,这样能节省资源,提高通信效率。需要发送信息时,先将信息组合成一帧报文:数据帧或远程帧。进入发送程序后,首先关闭中断,保护现场,读中断寄存器是否为发送中断,将报文写入发送缓冲区,设置命令寄存器允许发送,开中断。发送程序流程图,如图4所示。
作者:黑龙江大庆职业学院 于淼 来源:电子设计工程