STM32F103 学习笔记-20-通信的基本概念

引言

在嵌入式系统中,通信是设备之间数据传输的基础。STM32微控制器支持多种通信协议,如USART、I2C、SPI等。理解通信的基本概念对于后续学习外设编程至关重要。本笔记基于《零死角玩转STM32》的"通信的基本概念"章节,详细讲解通信的核心原理,帮助新手小白建立扎实的基础。

1. 串行与并行通信

通信方式分为串行和并行两类,它们决定了数据位的传输形式。

  • 串行通信:数据位按顺序依次传输,只需一条数据线。优点是成本低、抗干扰强、适合远距离通信,但传输速率较慢。常见应用如UART、USB、以太网。

  • 并行通信:多个数据位同时通过多条数据线传输。优点是速率高,但成本高、抗干扰弱、距离短。例如,STM32的GPIO口可配置为并行模式,用于LCD屏控制。

特性对比见下表:

特性 串行通讯 并行通讯
通讯距离 较远 较近
抗干扰能力 较强 较弱
传输速率 较慢 较高
成本 较低 较高

原理:串行通信逐位传输,节省引脚资源;并行通信一次传输多比特,但需要同步时钟,易受干扰。在STM32中,大多数外设(如串口)采用串行方式,以平衡效率和成本。

2. 全双工、半双工和单工

数据流向决定了通信的灵活性:

  • 全双工:双方可同时收发数据(如电话通话)。例如,STM32的USART支持全双工,TX和RX引脚独立工作。

  • 半双工:双方可收发数据,但不能同时进行(如对讲机)。例如,I2C总线在半双工模式下,SDA线分时用于发送和接收。

  • 单工:数据只能单向传输(如广播)。例如,STM32的ADC读取传感器数据时,数据仅从传感器流向MCU。

应用场景:全双工适合实时交互(如调试串口),半双工适合多设备共享总线(如传感器网络),单工适合简单数据采集。

3. 同步与异步

时钟同步方式影响通信的可靠性和效率:

  • 同步通信:收发方使用共享时钟信号,数据位在时钟边沿采样。效率高,但时钟偏差会导致错误。常见于SPI、I2C。

  • 异步通信:无共享时钟,双方依赖预定义的波特率。数据包包含起始位、停止位等标识符,容错性强,但效率较低。常见于UART。

对比:同步通信数据中有效比例高,但对时钟精度要求严格;异步通信通过帧结构保证可靠性,时钟允许误差大。在STM32中,配置通信协议时需根据场景选择同步或异步模式。

4. 通信的速率

速率是衡量通信性能的关键:

  • 比特率:每秒传输的二进制位数(bit/s)。例如,115200 bit/s表示每秒传输115200比特。

  • 波特率:每秒传输的码元个数。一个码元可携带多个比特(通过调制),但在二进制系统中,波特率等于比特率。

码元概念

  • 单二进制位码元:0V代表"0",3.3V代表"1",每个码元携带1比特。

  • 多二进制位码元:如4电平调制(0V/2V/4V/6V),每个码元可表示2比特(00/01/10/11),波特率相同时比特率翻倍。

在STM32中,设置USART波特率时,实际是配置比特率。需确保收发方波特率一致,否则数据错乱。

总结

  • 串行/并行是数据传输形式,影响引脚数和速率。

  • 全双工/半双工/单工决定数据流向灵活性。

  • 同步/异步关乎时钟同步方式,影响效率和可靠性。

  • 比特率和波特率是速率核心参数,需匹配硬件配置。

掌握这些概念后,后续学习STM32的具体通信外设(如USART、SPI)将更轻松。建议结合实验(如串口通信)加深理解。


本文档参考《零死角玩转STM32》,及配套章节PPT

相关推荐
ting_zh1 小时前
STM32F7系列MCU上电启动流程
stm32·单片机·嵌入式硬件
Tel199253080041 小时前
全新C-Components高压继电器P/N 500-214
单片机·物联网·自动化·工业自动化
非凡ghost2 小时前
Wireshark中文版(网络抓包工具)
网络·windows·学习·测试工具·wireshark·软件需求
五羟基己醛3 小时前
【嵌入式入门】STM32之封装自己的静态链接库(.lib文件)
stm32·单片机·嵌入式硬件
摇滚侠4 小时前
三天学通 Groovy—Groovy 程序设计,Groovy 中的数据类型,笔记 1-13
笔记·groovy
wdfk_prog4 小时前
[Linux]学习笔记系列 -- [driver]base
linux·笔记·学习
am心4 小时前
学习笔记-套餐接口
笔记·学习
思为无线NiceRF4 小时前
UWB 智能门锁系统在现有手机生态下的可行性分析
嵌入式硬件·物联网·智能家居
科技林总5 小时前
【系统分析师】3.6 操作系统
学习
钿驰科技5 小时前
TC-BL2430无刷电机驱动板在多领域的应用
单片机·嵌入式硬件