CAN总线及其在艾默生PLC上的应用 作者: 时间:2013-02-18 来源:网络 加入技术交流群 扫码加入和技术大咖面对面交流海量资料库查询 收藏 3)数据接收:使用CANRCV指令(参数含义如下)或使用CAN接收中断功能。我推荐对初使用者采用中断更方便,具体用法参考下面的例子程序。 笔者根据ECCT集成的CAN总线功能,在纺织机械上的得到了成功的应用,现介绍如下:其CAN系统总体结构图如下: 此系统的具体工艺不做介绍,这里只介绍CAN通信部分的应用。 程序使用说明如下: 1.首先根据要求在“系统块”里对CAN通信口进行设置。 2.数据发送部分:对ID为5的地址发送4个字数据“16#1122,16#3344,16#6789,16#1234”需要编写的程序为如下: 其中要注意的是:1)CANXMT为上升沿执行指令,M1000为指令执行条件,当其出现OFF—>ON的变化时,执行CANXMT指令;2)使用CANXMT指令前先把该赋值的地址写好;3) 发送数据只取D元件的低8位; 4)网络上没有CANID、数据完全相同的CAN帧同时出现;5)ID保留0。6)CAN程序的校验部分全部由硬件自动完成,用户程序不需要参与。 3.数据接收部分:此部分以使用中断方式接收数据为例,分2部分步骤: 1)先在主程序中设置CAN中断使能. 2)设置中断程序属性,把其中断事件选为48(即CAN接收中断),然后编写程序把接收到的数据传递到需要的地址.注意ID地址为双字结构,SD282-290依次为数据的高低字节,把他们传递到相应的数据寄存器然后合并就可以得到完整的数据了。 总结:由于CAN协议格式比较简单,并且相当部分工作由CAN控制芯片硬件完成,所以编写程序比较简单,实现起来很容易,此纺织系统采用CAN通信方式后,速度大大提高并且系统更加稳定,受到用户的肯定。 上一页 1 2 3 下一页
评论