新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于CAN总线技术的数字交流伺服系统研究

基于CAN总线技术的数字交流伺服系统研究

作者:时间:2012-11-02来源:网络收藏


邮箱收发配置

在数据域改变前首先要禁用邮箱,然后置位数据域,改变请求。再设置邮箱ID和信息控制寄存器。若是发送邮箱,则在数据域存放预发送数据,若是接收邮箱,则清空接收缓存。

;写CAN邮箱内容前寄存器设置
LDP#DP_CAN
SPLK #0040H,MDER ;不使能邮箱,邮箱2设为接收方式
SPLK #0103H,MCR;CDR=1,数据区改变请求
;写CAN邮箱内容
LDP#DP_CAN2
SPLK #2447H,MSGID2H;设置邮箱2控制字及ID
;IDE=0,AME=0,AAM=0
;标准方式为MSGID2H[12~2>
SPLK#0FFFFH,MSGID2L
SPLK#08H,MSGCTRL2;设置控制域
;数据长度DCL=8,RTR=0数据帧
SPLK#00000H,MBX2A;邮箱2信息初始化
SPLK#00000H,MBX2B
SPLK#00000H,MBX2C
SPLK#00000H,MBX2D
SPLK#2447H,MSGID3H;设置邮箱3的标识符
SPLK#0FFFFH,MSGID3L
SPLK#08H,MSGCTRL3;RTR=0,DCL=8
SPLK#02211h,MBX3A;邮箱3信息初始化
SPLK#04433h,MBX3B
SPLK#06655h,MBX3C
SPLK#08877h,MBX3D
;写CAN邮箱内容后寄存器设置
LDP#DPCAN
SPLK#0480H,MCR;DB0=1,AB0=1,STM=0
SPLK#04CH,MDER;ME3=1,MBX3发送,ME2=1接收
SPLK#0F7FFH,CAN_IMR;中断MBX3无效,MBX2使能,
;中断优先级
SPLK#0FFFFH,CAN_IFR;清全部中断标志
RET

邮箱中断设置CAN模块专属中断寄存器有CAN_IFR和CAN_IMR,使用方法与一般中断寄存器相同。但TMS320LF2407A 采用二级中断方式,高优先级模式的CAN邮箱中断对应INT1,高优先级CAN错误中断对应INT2;而低优先级CAN邮箱中断和CAN错误中断都对应INT5。所以在程序中要开放对应一级中断。接收帧ID的读入在接收事件中,通常一个邮箱要接收多节点帧。因此,信息帧ID的读出也很重要。不管有没有屏蔽,所接收信息帧的ID会被置入MSGIDnH和MSGIDnL,但接收邮箱的ID并没有改变[5>。

程序框图如图3所示,实验程序使用邮箱2接收,邮箱3发送。通讯软件可以采用查询方式或中断方式,主要包括CAN控制器初始化程序、接收邮箱与发送邮箱设置、发送程序、接收程序。



发送程序只需要设定发送控制寄存器相应位;接收程序要完成:

读取已接收的邮箱标识符格式;
读取接收的标识符;
读取接收的数据长度;
读取接收的数据值。

上位机通过适配器与连接,用VC6.0编写监控软件,并定义上位机作为局域网操作服务器,用户通过它可以对各个伺服单元进行操作。

结语

具有良好的网络通信功能、高可靠性、抗干扰能力强且经济实用,是一种很有前途的现场总线技术。它的应用将为分布式运动控制提供一种新的解决方案,会受到人们越来越多的重视。新一代的智能数字通过于开放式数控系统互联,是运动控制领域发展的一个重要方向。

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭