CAN通信的数据帧和远程帧

54 篇文章 ¥69.90 ¥99.00
CAN通信中的远程帧与数据帧在结构上有显著差异:远程帧包含RTR位为1,缺少数据场。通过发送远程帧,对应ID的节点会返回数据帧。在环回模式下,STM32发送远程帧,通过J-Link RTT调试软件可接收数据,而CANTest软件因远程帧无数据场无法接收。远程帧用于请求节点发送数据,避免总线冲突。应用中,发送远程帧请求特定节点发送数据,确保总线安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(先来一波操作,再放概念)
远程帧和数据帧非常相似,不同之处在于:
(1)RTR位,数据帧为0,远程帧为1;
(2)远程帧由6个场组成:帧起始,仲裁场,控制场,CRC场,应答场,帧结束,比数据帧少了数据场。
(3)远程帧发送特定的CAN ID,然后对应的ID的CAN节点收到远程帧之后,自动返回一个数据帧。

环回模式下(方便调试用),设置为发送远程帧:
STM32端通过J-Link RTT调试软件可以打印出CAN接收到数据(在中断服务函数里面接收);
而通过CANTest软件不能接收到STM32端发送出来的数据,因为远程帧比数据帧少了数据场;
这里写图片描述

正常模式下:通过CANTest软件手动发送一组数据,STM32端通过J-Link RTT调试软件也可以打印出CAN接收到的数据;

评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值