[CAN-bus/DeviceNet] CAN总线编程时为什么在执行发送报文命令后需要一段时间的

[复制链接]
3686|1
 楼主| givensjw 发表于 2007-2-12 11:05 | 显示全部楼层 |阅读模式
CAN总线编程时为什么在执行发送报文命令后需要一段时间的延时?如下所示:<br /><br />if((n&0x40)&nbsp;==&nbsp;0x40)&nbsp;/*设置判断远程桢*/<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ah&nbsp;=&nbsp;n&0x0f;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBufinf&nbsp;=&nbsp;0x80&nbsp;+&nbsp;ah;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer1&nbsp;=&nbsp;0x00;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer2&nbsp;=&nbsp;0x00;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer3&nbsp;=&nbsp;0x11;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer4&nbsp;=&nbsp;0x08;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer5&nbsp;=&nbsp;counter;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer6&nbsp;=&nbsp;0x02;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer7&nbsp;=&nbsp;0x03;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer8&nbsp;=&nbsp;0x04;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer9&nbsp;=&nbsp;0x05;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer10&nbsp;=&nbsp;0x06;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer11&nbsp;=&nbsp;0x07;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_TxBuffer12&nbsp;=&nbsp;0x08;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REG_COMMAND&nbsp;=&nbsp;0x01;//报文发送命令<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay1(290);//延时时间<br />为什么一定要有延时时间?
shuijiucha 发表于 2007-2-17 00:39 | 显示全部楼层

re:楼主

我认为这个取决于不同的can控制器,不知道你用的是什么控制器,程序没有一成不变的,要根据实际情况调整!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

6

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部