ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

常见通信协议的硬件通信原理——电路结构

常见通信协议的硬件通信原理——电路结构 这里主要讨论常见通信协议LINCANUARTRS485IIC和SPI的各个pin脚的电路结构。这里首先提一个概念我们日常说的总线其实对应的通信协议的总线协议其实总线重点不在于两个节点之间连接的线而在于相应的通信协议的物理标准。CAN驱动电路收发器首先需要明确一点我们这里讲的是CAN驱动电路所以指的是收发器中的部分电路这和can controller是两码事can controller是mcu内部的外设。那can controller和can收发器之间的联系是什么呢当can controller的txd发送逻辑0低电平时这个时候总线上应该为显性电平也就是差分电压为2v所以此时CANH为3.5vCANL为1.5v当发送逻辑1高电平时这个时候总线上应该为隐性电平差分电压为0v此时CANH和CANL都为2.5v。这是通过下面这样的电路来实现的当需要发送显性电平时两个mos管导通通过两个分压电阻A和B将电压分别钳制在3.5v和1.5v当需要发送隐性电平时两个mos管截止呈现高阻态这个时候由于2.5v的偏置源使得CANH和CANL的电压都处在2.5v差分电压为0v。正是因为这样的电路设计可以实现线与机制当A节点发送隐性电平B发送显性电平时总显示一定呈现为显性这也是显性和隐性电平名称的来源。并且正是因为显性为逻辑0隐性为逻辑1成了can总线仲裁时ID越小优先级越高的关键当两个不同的ID往总线上同时发送消息一定会在依次传输ID位时大的ID为逻辑1总线隐性小的ID为逻辑0总线显性这是时候小ID仲裁获胜。电路原理示意图5V (VCC) │ [P-MOS] │ [二极管 D1] │ [R_driveA ~30Ω] │ CANH ──────────────┬────────┼───────────────────────┐ │ │ │ [R_biasA] (开闭通路) [外部终端电阻] ~20kΩ │ R_L 120Ω │ │ │ 2.5V 偏置源 ───────┴────────┤ │ (VCC/2) │ │ │ [R_biasB] (开闭通路) │ ~20kΩ │ │ │ │ │ CANL ──────────────┴────────┼───────────────────────┘ │ [R_driveB ~30Ω] │ [二极管 D2] │ [N-MOS] │ GNDRS485首先也先明确一下这里的rs485的驱动电路也是指的485通信的收发器端的电路整个485通信的通信链路是从mcu的串口到收发器最终分别到AB这两条总线。它也是利用两根总线的差分电压来决定总线的隐性状态和显性状态。当uart输出逻辑1高电平时此时Vab应该为3V隐性A引脚的推挽输出电路上管导通下管截止B引脚相反上管截止下管导通当uart输出逻辑0低电平时此时Vab应该为-3V显性A引脚的推挽输出电路下管导通上管截止B引脚相反下管截止上管导通。小科普为什么 RS-485 也用“显性/隐性”或“Mark/Space”逻辑习惯在电报和早期 UART 异步串口中默认空闲状态Idle和停止位Stop Bit均为高电平被称为Mark传号 / 隐性而起始位Start Bit为低电平被称为Space空号 / 显性。电路原理示意图5V (VCC) │ │ [P-MOS A] [P-MOS B] │ │ A 引脚 ─────────┴─────┐ ├───────── B 引脚 │ │ [N-MOS A] [N-MOS B] │ │ GND GND
返回列表