can收发数据的几个问题 点击:2808 | 回复:12



win

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-07-08 16:54:00
楼主
1.对于上位机用CAN卡收发数据时: 发送数据时是否需要自己添加CRC,ACK等位场 接受数据时是否需要自己编程去掉CRC,ACK,等位场? 这些功能是否集成在CAN卡里??? 2.CAN每次最多能发送8个字节,而我要发送的数据可能要几KB,如何能连续发送??? 3.CAN卡发送数据时(AMR为ff),自身会接收,它是否会把这个数据当成总线上其他设备发出的数据完整接收下来,等待我的处理???



远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2002-06-27 14:21:00
1楼
1.CAN应该是自己处理的,起码大部分的CAN芯片是。 2.你可以用很多次传送,不过几KB的数据有点可怕。 3.我觉得CAN是要完整接收下来的,但不完全确定。

hit_tbli

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 11回
  • 年度积分:0
  • 历史总积分:14
  • 注册:2002年6月21日
发表于:2002-06-27 15:36:00
2楼
应该可以,你可以参考DeviceNet上的分段报文发送。不过CAN的优点就是短帧数据,这样数据实时性好,同时发送这么多的数据很少见,我觉得不适合用CAN实现。 CAN发送数据时同时监听总线,如果发送的和总线上的数据一样,完成后产生发送成功中断。自身不可能接收这个数据,因为它不会给出应答。

win

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-06-28 10:35:00
3楼
我还是认为CAN卡自身也会接受自己发出的数据,即使产生发送成功中断,数据全部送到总线上,所有的CAN接点都接收数据,然后再判断是否和自身相关确定是接收还是放弃,而CAN卡屏蔽码为ff,他会接收。

bigtree

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 14回
  • 年度积分:0
  • 历史总积分:79
  • 注册:2001年2月18日
发表于:2002-06-28 14:38:00
4楼
如果你真是在做can卡,建议你仔细看看can协议

win

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-06-30 08:12:00
5楼
请问哪里能下载到有关DeviceNet分段报文发送的资料???

远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2002-07-01 15:44:00
6楼
看DEVICENET协议!!

win

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-07-02 16:08:00
7楼
哪里能下载到DEVICENET协议有关分段报文发送的资料??? 急!急!急!

远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2002-07-02 16:14:00
8楼
协议需要购买 你可以找人借一下或是其它什么办法 其实找一下相关的文章就可以了 网上应该找得到的 因为你只需要一种实现的思想,而不是具体的实现方法

hit_tbli

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 11回
  • 年度积分:0
  • 历史总积分:14
  • 注册:2002年6月21日
发表于:2002-07-03 09:14:00
9楼
实际上你不需要照搬DevicrNet的数据格式,而且DeviceNet是基于CAN的,CAN应该有自己的解决办法。不过对于CAN的细节问题我就不清楚了。

win

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-07-03 10:15:00
10楼
多谢以上各位!!! 我决定用标识符的最后一位和第一个数据字节共9位计数对于一个设备发送的次数,每个设备一次最多发送7个字节,对于不同的设备所发送的报文分别存储在不同的文件或数据库表中,以上各位有谁能对我的想法提出点建议吗???

win

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 12回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2002年3月23日
发表于:2002-07-05 20:38:00
11楼
我用VC编程,主线程负责处理数据,决定用工作线程收发数据,那么应该如何嵌入这个工作线程呢???我采用中断传输方式

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2002-07-08 16:54:00
12楼
查有关VC多张程编程的资料 很多的

热门招聘
相关主题

官方公众号

智造工程师