当前位置: 首页 > ops >正文

单片机常用通信外设特点及通信方式对比表

✨ 嵌入式工程师必备!5分钟搞懂单片机「通信外设」选型指南 


📊 单片机通信外设速查表

外设特点通信方式适用场景选型口诀
UART🔹 简单!两根线就能通信
🔹 全双工(收发同时)
🔹 波特率自由配(9600~115200常见)
异步串行
👉 TX发 + RX收
👉 无需时钟线
👉 靠起始/停止位同步
传感器读数
PC调试输出
模块固件升级
❤️ 要简单,选UART!
SPI🔹 速度王者(50MHz+)
🔹 全双工+同步
🔹 需要4根线(MOSI/MISO/SCK/CS)
同步串行
👉 主设备发时钟SCK
👉 MOSI发数据,MISO收数据
👉 CS片选控制多设备
高速Flash/SD卡
OLED屏驱动
ADC/DAC芯片
🚀 拼速度,上SPI!
I²C🔹 省线神器(2根线!)
🔹 半双工(不能同时收发)
🔹 支持多主多从 地址寻址
同步串行
👉 SCL时钟 + SDA数据
👉 7/10位设备地址
👉 开漏输出需上拉电阻
板载传感器
EEPROM存储
RTC时钟芯片
📌 省引脚,用I²C!
CAN🔹 抗干扰战神(差分信号)
🔹 多设备总线通信
🔹 自带错误检测+重发
差分总线
👉 CAN_H + CAN_L双绞线
👉 非破坏仲裁(优先级机制)
👉 广播+过滤接收
汽车ECU通信
工业PLC控制
机器人系统
🛡️ 抗干扰,CAN强!
USB🔹 高速(480Mbps!)
🔹 支持热插拔
🔹 协议栈复杂(需库支持)
主从架构
👉 Host(主)/Device(从)
👉 差分信号D+/D-
👉 支持OTG主从切换
设备固件升级
HID外设(键鼠)
高速数据采集
⚡ 要高速,USB冲!
BLE🔹 超低功耗(电池扛1年+)
🔹 支持Mesh组网
🔹 手机直连超方便
2.4G无线
👉 GAP(广播/连接)
👉 GATT(服务/特征值)
👉 自适应跳频防干扰
智能手环
蓝牙温控器
物联网传感器
🔋 低功耗,BLE稳!

💡 避坑指南

  1. I²C地址冲突
    → 同一总线上挂2个相同地址传感器?💥 硬件改地址或换I²C交换机!

  2. SPI时钟干扰
    → SCK线过长?加磁珠滤波缩短走线,否则数据错乱到你怀疑人生!

  3. CAN总线终端电阻
    → 120Ω终端电阻必须加在总线两端!不加?数据帧反射全乱套!

  4. UART波特率偏差
    → 晶振误差±5%?通信直接失败!选自动波特率检测或换高精度晶振~


🎯 一招选型法

graph LR  
A[通信需求] --> B{速度要求?}  
B -->|超高速| C[SPI/USB]  
B -->|中低速| D{引脚数量?}  
D -->|紧张(2根)| E[I²C/UART]  
D -->|充足(4根+)| F[SPI]  
A --> G{抗干扰?}  
G -->|强| H[CAN]  
G -->|弱| I[其他]  
A --> J{要无线?}  
J -->|是| K[BLE/Wi-Fi]  

🌰 场景案例

「智能家居温控器」怎么选?

  • 传感器读数:I²C(省线!挂多个BME280)
  • 屏幕驱动:SPI(刷屏快!)
  • 连接手机:BLE(低功耗+手机直连)
  • 固件升级:USB/UART(烧录方便)

关注我👉分享更多知识

 

http://www.xdnf.cn/news/14615.html

相关文章:

  • 入门级STM32F103C8T6无人机遥控(原理图)
  • window显示驱动开发—支持 DXGI DDI(二)
  • 具身智能新突破:Gemini Robotics On-Device,让机器人拥有“本地大脑”
  • 【智能协同云图库】智能协同云图库第二弹:用户管理系统后端设计与接口开发
  • 开源流媒体平台安装使用
  • C# WinForm跨平台串口通讯实现
  • 2023年全国青少年信息素养大赛Python 复赛真题——玩石头游戏
  • 战地2042(战地风云)因安全启动(Secure Boot)无法启动的解决方案以及其他常见的启动或闪退问题
  • 自然语言处理入门
  • LT8311EX一款适用于笔记本电脑,扩展坞的usb2.0高速运转芯片,成对使用,延伸长度达120米
  • 第五课:大白话教你用K邻近算法做分类和回归
  • 用vscode破解最新typora1.10.8
  • 鸿蒙应用开发中的状态管理:深入解析AppStorage与LocalStorage
  • PYTHON从入门到实践2-环境配置与字符串打印用法
  • 【网络安全】从IP头部看网络通信:IPv4、IPv6与抓包工具 Wireshark 实战
  • vscode + Jlink 一键调试stm32 单片机程序(windows系统版)
  • ArkTS与仓颉开发语言:鸿蒙编程的双子星
  • 软件工程:从理论到实践,构建可靠软件的艺术与科学
  • 【4目方案】基于海思3403平台开发4目360°全景拼接相机方案
  • 五种 IO 模式的简单介绍 -- 阻塞 IO,非阻塞 IO,信号驱动 IO,IO 多路复用,异步 IO
  • RISC-V三级流水线项目:总体概述和取指模块
  • 基于java SSM的房屋租赁系统设计和实现
  • python基于微信小程序的广西文化传承系统
  • 【入门级-基础知识与编程环境:3、计算机网络与Internet的基本概念】
  • VLN论文复现——VLFM(ICRA最佳论文)
  • AI-Sphere-Butler之如何将豆包桌面版对接到AI全能管家~新玩法(一)
  • 虚拟 DOM 与 Diff 算法:现代前端框架的核心机制
  • 边缘-云协同智能视觉系统:实时计算与云端智能的融合架构
  • PillarNet: Real-Time and High-PerformancePillar-based 3D Object Detection
  • MySQL 8.x配置MGR高可用+ProxySQL读写分离(二):ProxySQL配置MySQL代理及读写分离