基于CAN总线与RS485的DSP通信接口设计
时间:11-28
来源:互联网
点击:
4.2.2 发送消息
为了实现CAN模块的消息发送,需要按照以下步骤配置发送过程:
(1)对发送邮箱进行初始化
禁止邮箱对CANMDER写0:CANMDER=0000H;
在CANMCR中设置改变数据域请求:CANMCR=0100H;
对发送邮箱设置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000FH;
设置消息控制域,即对CANMSGCTRLn进行写操作: CANMSGCTRLn="0008H";
创建消息并写到CANMBXnA、CANMBXnB、CANMBXnC和CANMBXnD中:
CANMBXnA=0ABCDH;CANMBXnB=0123H;CANMBXnC=0EF32H;CANMBXnD=6789H;
重新设置CANMCR的第8位,请求正常操作:CANMCR=0000H;
允许邮箱对CANMDER寄存器进行写操作:CANMDER=0004H;
(2)设置TCR寄存器的TRS位,请求发送消息:TCR=0010H;
(3)等待发送确认(TCR寄存器的TA=1);
(4)重新设置TA和发送标志:TCR=1000H;
4.2.3 接收消息
应用CAN模块接收外界消息时,需要对CAN控制器进行如下设置:
(1)设置局部接收屏蔽寄存器。 LAM1H=8000H;
(2)设置邮箱标识符和控制。
禁止邮箱对MDER写0:CANMDER=0000H;
写MCR寄存器申请改变数据域请求:CANMCR=0100H;
对发送邮箱设置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000EH;
设置消息控制域:CANMSGCTRLn=0008H;
重置MCR第8位,请求正常操作:CANMCR=0000H;
允许邮箱写MDER寄存器:CANMDER=0044H;
(3)等待接收确认和CANIFR的邮箱中断标志。
(4)重置RMP和接收标志,必须对RMP写1: CANRCR="0040H";
5.结论
本文作者的创新点是:在工业控制领域中,往往是由一台主机控制多台从机,上位机和下位机的远距离通信通过串行通信实现。本设计综合实现了PC主机与DSP从机的RS-485远距离通信接口和DSP从机与CAN现场总线的数据传输接口设计,同时具备主从机的远距离通信和CAN现场总线设备的实时通信功能,具有广泛的应用前景。在设计中充分发挥了DSP的CAN模块和SCI模块的作用,使得接口设计简单,工作更加可靠。
为了实现CAN模块的消息发送,需要按照以下步骤配置发送过程:
(1)对发送邮箱进行初始化
禁止邮箱对CANMDER写0:CANMDER=0000H;
在CANMCR中设置改变数据域请求:CANMCR=0100H;
对发送邮箱设置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000FH;
设置消息控制域,即对CANMSGCTRLn进行写操作: CANMSGCTRLn="0008H";
创建消息并写到CANMBXnA、CANMBXnB、CANMBXnC和CANMBXnD中:
CANMBXnA=0ABCDH;CANMBXnB=0123H;CANMBXnC=0EF32H;CANMBXnD=6789H;
重新设置CANMCR的第8位,请求正常操作:CANMCR=0000H;
允许邮箱对CANMDER寄存器进行写操作:CANMDER=0004H;
(2)设置TCR寄存器的TRS位,请求发送消息:TCR=0010H;
(3)等待发送确认(TCR寄存器的TA=1);
(4)重新设置TA和发送标志:TCR=1000H;
4.2.3 接收消息
应用CAN模块接收外界消息时,需要对CAN控制器进行如下设置:
(1)设置局部接收屏蔽寄存器。 LAM1H=8000H;
(2)设置邮箱标识符和控制。
禁止邮箱对MDER写0:CANMDER=0000H;
写MCR寄存器申请改变数据域请求:CANMCR=0100H;
对发送邮箱设置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000EH;
设置消息控制域:CANMSGCTRLn=0008H;
重置MCR第8位,请求正常操作:CANMCR=0000H;
允许邮箱写MDER寄存器:CANMDER=0044H;
(3)等待接收确认和CANIFR的邮箱中断标志。
(4)重置RMP和接收标志,必须对RMP写1: CANRCR="0040H";
图3 初始化位时间编程流程图
5.结论
本文作者的创新点是:在工业控制领域中,往往是由一台主机控制多台从机,上位机和下位机的远距离通信通过串行通信实现。本设计综合实现了PC主机与DSP从机的RS-485远距离通信接口和DSP从机与CAN现场总线的数据传输接口设计,同时具备主从机的远距离通信和CAN现场总线设备的实时通信功能,具有广泛的应用前景。在设计中充分发挥了DSP的CAN模块和SCI模块的作用,使得接口设计简单,工作更加可靠。
总线 自动化 CAN总线 DSP 收发器 电路 电阻 二极管 相关文章:
- 热插拔和缓冲I2C总线 (04-14)
- PCIe总线何时突破Unix服务器坚冰(02-03)
- TMS320VC5402 HPI接口与PCI总线接口设计(04-12)
- 基于Nios II的I2C总线接口的实现(04-09)
- 双口RAM CY7C026在高速数据采集系统中的应用(04-12)
- 计算机在新型多电机同步系统中的应用(07-08)