主题:CAN通信问题 共有55381人关注过本帖 |
---|
123 |
1楼 |
![]() |
CAN通信问题 ![]()
对信息的过滤是通过函数设置:CAN_SetGlobalAcceptanceFilter(HANDLE hDevice, BYTE *AcceptanceFilter, BYTE size);
AcceptanceFilter: 根据通讯报文格式定义过滤器的配置,定义为9个字节的过滤器,其中前4个字节用于定义过滤器的接收码,后4个字节用于定义过滤器的接收屏蔽码,最后一个字节用于定义选择单/双滤波模式。其中接收码和屏蔽码分别对应于SJA1000 CAN控制器中的ACR、AMR寄存器的设置参数. 1)SJA1000说明书中ACR,AMR寄存器为1个字节,请问和上述过滤器设置函数AcceptanceFilter,前4个字节(ACR),后4个字节(AMR)如何对应? 2)采用EM9260和ZLGCANtest软件进行通信测试,EM9260采用贵公司提供的CAN TEST接收例程。波特率设置一致,由ZLGCAN test发送数据时,提示发送失败。请问为何? 谢谢 |
单帖管理 | 引用 | 回复 ![]() |
x10 |
2楼 |
![]() |
![]()
SJA1000的ACR和AMR确实是4字节,而不是1字节。见数据手册p.21
|
单帖管理 | 引用 | 回复 ![]() |
123 |
3楼 |
![]() |
![]()
SJA1000说明书的第20页,描述的ACR与AMR均为一个字节啊?
采用光盘提供的接收例程和ZLG CAN软件通信时,总是发送失败。请问,有哪些可能的错误啊? |
单帖管理 | 引用 | 回复 ![]() |
x10 |
4楼 |
![]() |
![]()
SJA1000有两种模式BasicCAN和PeliCAN,4个字节是PeliCAN模式。建议上班后来电话与我们的工程师交流一下。
|
单帖管理 | 引用 | 回复 ![]() |