能力值:
( LV2,RANK:10 )
|
-
-
2 楼
给你一份CAN IP的用户使用手册, 里面涉及CAN 协议和工作内容
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
另外再给你附加一份开源的CAN IP
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这两份文件有助于你你理解CAN总线协议的工作过程,不开源商用级别的CAN IP在闲鱼有卖你可以买来分析看看。但CAN总线协议大差不差的都是类似的,开源的其实已经可以了。
|
能力值:
( LV1,RANK:0 )
|
-
-
5 楼
感谢分享的资料,我看了下这些资料主要是涉及CAN物理层的协议,而我想分析的是CAN应用层的协议,8个字节代表什么含义。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
LGU_LINK
感谢分享的资料,我看了下这些资料主要是涉及CAN物理层的协议,而我想分析的是CAN应用层的协议,8个字节代表什么含义。
用户使用手册里面有说到呀,在 3.5 Software Interface 这章 的Register Map 就是CAN每个字节代表啥, 比如 0x00 - 0x47 地址就是CAN协议的ID部分,0x91地址的 LOM(Listen Only Mode) 这个字节就确定了 设备是否 只监听不发送
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
微启宇
用户使用手册里面有说到呀,在 3.5 Software Interface 这章 的Register Map 就是CAN每个字节代表啥, 比如 0x00 - 0x47 地址就是CAN协议的ID部分,0 ...
协议的每个字节代表啥手册里都说清楚了,不懂英文可以用翻译软件。
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
CAN总线发送数据会缓存在CAN子模块的Register里然后CAN子模块里的负责和其他模块打交道的HCI控制模块根据其他模块给到的地址去取数据。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
微启宇
CAN总线发送数据会缓存在CAN子模块的Register里然后CAN子模块里的负责和其他模块打交道的HCI控制模块根据其他模块给到的地址去取数据。
给你的开源CAN子模块的路径 can/trunk/bench/verilog/can_testbench.v里面的 write_register 任务函数就是测试读写CAN子模块Register, 这个模块总线使用的是WISHBONE,只要有其他模块也挂载在WISHBONE总线上就可以往CAN子模块写入和读出数据。
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
LGU_LINK
感谢分享的资料,我看了下这些资料主要是涉及CAN物理层的协议,而我想分析的是CAN应用层的协议,8个字节代表什么含义。
再给你个CAN子模块的Linux驱动模块
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
微启宇
再给你个CAN子模块的Linux驱动模块
用户空间应用可以去看Linux-CAN的can-utils测试套件
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
微启宇
用户空间应用可以去看Linux-CAN的can-utils测试套件
你可以用can-utils测试套件里的dump和cansniffer工具去dump数据分析,然后在用canplayer和cansend去尝试发送数据测试设备找到数据含义。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
CAN的接口上可以跑 TCP/IP协议 http 之类的协议,你可以用抓包软件抓接口的包来分析
|
能力值:
( LV1,RANK:0 )
|
-
-
14 楼
用CANOE抓过数据,数据一直在变化,不太好分析,所以才想到逆向分析的。
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
|
能力值:
( LV1,RANK:0 )
|
-
-
16 楼
既然找到中断了,顺着内存找就快了
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
我猜想他是想知道每帧的数据解析,类似有DBC文件那样。
|
|
|