主题:[求助]Socket can可以配置自动重发么 共有40569人关注过本帖 |
---|
hzc |
1楼 信息 | 搜索 | 邮箱 |
加好友 发短信 员工 |
Post By:2020-11-18 9:44:00 [显示全部帖子]
你好,can总线是有ACK信号相应的,所以can总线协议本身就有自动重发的功能,不需要单独配置。 [此贴子已经被作者于2020-11-18 9:44:47编辑过]
|
单帖管理 | 引用 | 回复 |
hzc |
2楼 信息 | 搜索 | 邮箱 |
加好友 发短信 员工 |
Post By:2020-11-19 13:49:00 [显示全部帖子]
你好,can的控制器本身就会重发,不需要设置。 如果是软件上调用发送提示失败,可能是因为程序中没有判断调用发送的返回值,然后一直在填入数据。 硬件在发送失败后,会一直反复重发,在数据发送成功之前会一直占用缓存,如果这时软件一直填入数据,就会占用更多的缓存,当缓存占满之后,软件中再次调用发送就会报错。 [此贴子已经被作者于2020-11-19 13:54:24编辑过]
|
单帖管理 | 引用 | 回复 |
hzc |
3楼 信息 | 搜索 | 邮箱 |
加好友 发短信 员工 |
Post By:2020-11-20 10:09:00 [显示全部帖子]
你好,write返回值只要没有出错,就说明数据已经填写到硬件中了,硬件会自动进行发送,直到发送成功,成功的标志是收到对应设备回发的ACK信号,具体的说明可以在网上查询一下CAN总线的协议说明。wirtei返回值出错就和上一条帖子说的一样,是因为在数据没有发送成功的时候,程序还在一直填写数据,导致硬件缓存数据溢出。 |
单帖管理 | 引用 | 回复 |
hzc |
4楼 信息 | 搜索 | 邮箱 |
加好友 发短信 员工 |
Post By:2020-11-20 12:13:00 [显示全部帖子]
不客气 |
单帖管理 | 引用 | 回复 |