嵌入式通信协议有哪些

  发布时间:2026-10-17 06:22:04   作者:玩站小弟   我要评论
去年帮一个朋友调试智能门锁,I2C总线上挂的指纹模块死活读不出数据。示波器一挂,SDA和SCL的时序乱成一团。换成SPI重新布线,十分钟跑通。嵌入式通信协议选型这件事,很多时候不是"哪个更好"的问题, 。

去年帮一个朋友调试智能门锁,嵌入I2C总线上挂的式通指纹模块死活读不出数据。示波器一挂,信协SDA和SCL的嵌入时序乱成一团。换成SPI重新布线,式通十分钟跑通。信协嵌入式通信协议选型这件事,嵌入很多时候不是式通"哪个更好"的问题,而是信协"哪个更合适"。

先聊最基础的嵌入UART。两根线,式通TX和RX,信协没有时钟线,嵌入靠约定的式通波特率同步。简单到几乎每颗MCU都标配。信协但正因为简单,它没有寻址机制,点对点通信,多设备就得多个串口或者加多路复用器。我见过有人用UART组网,搞了个轮询机制,结果实时性一塌糊涂。UART适合什么?调试串口、GPS模块、蓝牙透传——数据量不大、设备单一的场景。115200的波特率传个传感器数据绰绰有余。

I2C是另一回事。两根线挂一堆设备,靠7位地址区分。当年Philips搞这个协议是为了让电视内部的芯片少走线。现在你随便拆个开发板,EEPROM、陀螺仪、OLED屏大概率都挂在I2C上。但它有个硬伤:总线电容不能太大,线长了波形就塌。400kHz是常见速率,再往上走Fast Mode Plus能到1MHz,但驱动能力跟不上。而且I2C是半双工,主机不发时钟从机就不能说话。遇到需要高速连续采样的IMU,I2C基本撑不住。

SPI就暴力多了。四根线,MOSI、MISO、SCK、CS,全双工,时钟可以跑到几十MHz。没有地址机制,靠片选线拉低来选中设备。代价是每多一个从机就多一根CS线。PCB上走线多了确实烦,但速度摆在那。Flash存储、TFT屏幕、高速ADC,这些场景SPI是首选。我手上有个项目用SPI接ADXL345加速度计,8MHz时钟,三轴数据连续读,一点不卡。

CAN总线得单独说。差分信号,抗干扰强,多主架构,带仲裁机制。汽车上几乎全是CAN,发动机、变速箱、车窗、座椅,各种ECU挂在两条双绞线上。它没有时钟线,靠位同步,速率和总线长度成反比。1Mbps只能跑40米,125kbps能跑500米。工业控制里CANopen、J1939这些上层协议都跑在CAN上。有个做充电桩的朋友,BMS和充电模块之间就是CAN通信,环境电磁干扰大,换成别的协议早崩了。

RS485不是协议,是物理层标准。差分传输,半双工,通常配合Modbus协议使用。工厂里那些老设备,PLC、变频器、电表,Modbus RTU over RS485一抓一大把。布线简单,两根线手拉手,终端电阻一接,跑个1200米没问题。但它是主从轮询,主机不问,从机不能主动上报。做数据采集够用,做实时控制就差点意思。

无线这块,BLE、Zigbee、LoRa、WiFi各有各的地盘。BLE适合手机配对的低功耗设备,心率带、防丢器。Zigbee搞Mesh组网,智能家居里灯控、传感器用得多。LoRa跑远距离,几公里起步,但速率低得可怜,适合抄表、环境监测。WiFi带宽大,但功耗高,插电设备才扛得住。

选协议这事,我一般看三个维度:速率、距离、拓扑。点对点短距离高速,SPI。多点低速少线,I2C。多点抗干扰中距离,CAN。远距离低速率,RS485加Modbus。功耗敏感无线,BLE或LoRa。没有银弹,每个协议都是取舍的结果。那些说"用XX就对了"的,多半没踩过坑。

  • Tag:

相关文章

  • 网页设计实训报告心得体会

    实训第一天,我对着空白的VS Code界面发呆,光标一闪一闪,像在嘲笑我。之前学HTML时觉得不过是几个标签罢了,tr、td、div,背下来就行。可真要做一个完整的网页,脑袋里那些标签全都散成一堆零件
    2026-10-17
  • 渗透测试报告总结

    一份渗透测试报告,真正有价值的部分从来不是漏洞列表,而是攻击路径的还原。上周我拿到一份某电商平台的测试报告,客户运维团队看完只问了一句:“你们怎么从客服系统跳到支付数据库的?”——这个问题恰好说明报告
    2026-10-17
  • 高清裸眼3d视频下载网站

    裸眼3D视频根本不需要戴眼镜,靠的就是屏幕上的视差光栅或柱状透镜让左右眼看到不同画面。但真正高清的裸眼3D片源少得可怜,大部分网站挂羊头卖狗肉,下载下来要么是红蓝格式,要么分辨率低到像回到2005年。
    2026-10-17
  • kali木马免杀

    ```html kali木马免杀 kali木马免杀 杀软报毒的声音像一记耳光。你刚用 msfvenom 生成的 payload,传到目标机器上还没点两下,Windows Defender
    2026-10-17
  • webshell检查

    webshell检查,说到底就是一场猫鼠游戏。攻击者把一段话藏在正常文件里,服务器替你执行了,你就成了傀儡。我见过太多案例——网站被挂马,管理员第一反应是删文件,可删完第二天又回来。为什么?因为后门不
    2026-10-17
  • 青岛农业大学大学官网

    ```html 青岛农业大学官网 · 一个技术控的随手记 body { font-family: system-ui, -apple-system, 'Segoe UI', Roboto,
    2026-10-17

最新评论