主题:EM9260 CAN通讯

  共有22670人关注过本帖    
hohai_whl
1楼


EM9260 CAN通讯  发帖心情 Post By:2009-4-28 11:39:00   [只看该作者]

请问一下:
1)EM9260 CAN通讯时,寄存器ACR,AMR如何完成对所需信息的过滤?
2)想利用EM9260和ZLGCANtest软件实现通讯测试,软件设置项中,有一项为8位的“帧ID”,请问,这个和传输的帧信息中11位或29位的id有关系吗?
3)贵公司提供的API_H文件中,将帧信息格式定义成
BYTE FrameInfo, BYTE ID[4], BYTE Data[8]三项。
请问,和ZLGCANtest软件通讯时,需设置的发送项仅为8位数据体。关于“帧类型”“标示符ID”在API_H文件中如何获取的?
谢谢!

  单帖管理 | 引用 | 回复 回到顶部
zhl
2楼


  发帖心情 Post By:2009-4-28 12:30:00   [只看该作者]

1)EM9260采用的是SJA1000 CAN控制器,对信息的过滤是通过函数设置:CAN_SetGlobalAcceptanceFilter(HANDLE hDevice, BYTE *AcceptanceFilter, BYTE size);
AcceptanceFilter: 根据通讯报文格式定义过滤器的配置,定义为9个字节的过滤器,其中前4个字节用于定义过滤器的接收码,后4个字节用于定义过滤器的接收屏蔽码,最后一个字节用于定义选择单/双滤波模式。其中接收码和屏蔽码分别对应于SJA1000 CAN控制器中的ACR、AMR寄存器的设置参数,滤波的方式请参见SJA1000的数据手册中相关说明。如果不对数据进行滤波,将AMR的值均设为0xff。
2)ID的位数和数据帧选用的模式有关:标准帧为11位、扩展帧为29位。
3)发送帧信息的结构是由帧信息、报文识别码以及数据帧的实际数据组成。请参见网站上“WINCE系统双CAN构建方案”一文对CAN报文帧格式的相关介绍。

  单帖管理 | 引用 | 回复 回到顶部

返回首页

EM9260 CAN通讯

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: