通信与接口协议面试八、CAN通信 CANControllerAreaNetwork。异步半双工。汽车的电气部分就采用CAN 总线实现通信。低速CAN【IS011519-2 标准】通信速率为10125kbpS总线长度可达1000米结构开环总线高速CAN 【ISO11898标准】通信速率为125Kbps~1Mbps总线长度≤40米结构闭环总线也称为经典CAN闭环有终端电阻1.原理每个部分的多个器件都挂载在CAN 总线上—个CAN 总线上的所有器件通讯速率必须相同)各个部分再汇集到网关由网关分配实现各个不同速率的部分之间通讯。CAN的组成一般有两种方式1CPU与CAN控制器集成到一起、再外接CAN收发器2另一种是CPU与CAN 控制器分开的使用的时候需要配置CAN接口电路。STM32将CAN接口集成在芯片内使用的时候再外接CAN收发器。CAN 收发器是用于TTL 电平与差分电压信号相互转换的TTL 电平即单片机引脚直接提供的电平2.逻辑电平逻辑0代表低电平逻辑1代表高电平CAN_High- CAN_LoW 0.5V 时候为隐性的逻辑信号表现为逻辑1即高电平。CAN_High- CAN_Low0.9V 时候为显性的逻辑信号表现为逻辑0即低电平。没有数据发送或者发送数据0时两条线的电平一样都为2.5V。3.通信过程CAN 控制器将 CPU传来的信号转换为逻辑电平即逻辑0-显性电平或者逻辑1-隐性电平)。CAN收发器再把逻辑电平转换为差分电平输出到CAN总线上。在总线空闲状态下任意节点都可以向总线上发送信息。最先向总线发送信息的节点获得总线的发送权当多个节点同时向总线发送消息时优先权高的那个节点获得总线的发送权。这个数据里不仅有数据还有本身的 ID 信息或者其他的控制指令应称为数据包(数据帧)。数据帧是以一个显性位(逻辑 0)开始以7 个连续的隐性位(逻辑 1)结束。分为仲裁段、控制段、数据段、CRC段和ACK段。4.位同步时序由于CAN没有时钟信号线采用位同步时序。CAN 通讯协议的每一个数据帧可以看作一连串的电平信号每一个电平信号代表一位一个字节8位的位)所以一帧中包含了很多个位由发送单元在非同步的情况下发送的每秒钟的位数称为位速率。一位又分为4段同步段(SS)、传播时间段(PTS)、相位缓冲段1(PBS1)、相位缓冲段2 (PBS2)。

相关新闻

最新新闻

优化Java应用性能的五个实战技巧

优化Java应用性能的五个实战技巧

性能优化是工程实践,不是玄学当你盯着VisualVM里那条几乎垂直上升的CPU曲线,或者GC日志里频繁出现的Full GC字样时,总希望有一种能一键解决所有问题的银弹。可惜,Java性能优化从来不是靠某个参数或某个框架就能搞定的。它是一场需…

2026/7/6 3:54:35
javascript的动态this与动态绑定

javascript的动态this与动态绑定

javascript是一门动态语言,最明显就是那个dynamic this。它一般都是作为函数调用者存在。在javascript,所有关系都可以作为对象的一个关联数组元素而存在。那么函数就是被掰成两部分储存于对象,一是其函数名(键)&#…

2026/7/6 3:54:35
监视消息循环

监视消息循环

我们讨论了消息循环是响应用户输入的根本,还提到了在WinForm中执行耗时操作是因为这个耗时操作与消息循环在同一个UI Thread上,导致不能处理用户的后续响应,造成程序假死。除此之外,还说到了Form中的WndProc方法,说这个…

2026/7/6 3:54:35
3分钟学会Windows USB设备共享:usbipd-win让你的开发效率翻倍!

3分钟学会Windows USB设备共享:usbipd-win让你的开发效率翻倍!

3分钟学会Windows USB设备共享:usbipd-win让你的开发效率翻倍! 【免费下载链接】usbipd-win Windows software for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL 2. 项目地址: https://gitcode.com/gh…

2026/7/6 3:54:35
AI 代码验证沙箱:题解能运行,也不能随便运行

AI 代码验证沙箱:题解能运行,也不能随便运行

AI 代码验证沙箱:题解能运行,也不能随便运行 一、自动验证需要安全边界 AI 生成题解后,最好自动运行测试,验证代码是否通过样例和随机用例。但“运行代码”本身有风险。代码可能死循环、占满内存、读写文件、访问网络,…

2026/7/6 3:54:35
不止会聊天:Cursor 项目规则、长会话与跨工程管理进阶

不止会聊天:Cursor 项目规则、长会话与跨工程管理进阶

一、@ 引用:给不同上下文写不同「描述规则」 1.1 四种 @ 引用 引用 作用 适用场景 @file 指定文件/文件夹 改 bug、重构、读某模块 @Doc 官方/自定义文档 按 API 规范写代码 @Browser 网页内容 对照在线文档、Issue @Rules 项目/用户规则 统一编码风格与约束 1.2…

2026/7/6 3:49:34

月新闻