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

【嵌入式系统设计师(软考中级)】第二章:嵌入式系统硬件基础知识——④定时器计数器和系统总线及通信接口

文章目录

  • 5. 定时器与计数器
    • 5.1 定时器(Timer)
    • 5.2 计数器(Counter)
    • 5.3 定时器与计数器的关系
  • 6. 嵌入式系统总线及通信接口技术
    • 6.1 板级与板间总线技术
      • 6.1.1 PCI (Peripheral Component Interconnect)
      • 6.1.2 PCI Express (PCIe)
      • 6.1.3 EISA (Extended Industry Standard Architecture)
      • 6.1.4 VME (VersaModule Eurocard)
      • 6.1.5 CompactPCI (CPCI)
      • 6.1.6 PCMCIA (PC Card)
    • 6.2 设备互连接口技术
      • 6.2.1 USB (Universal Serial Bus)
      • 6.2.2 串口 (UART/RS-232/RS-485)
      • 6.2.3 红外通信 (IrDA)
      • 6.2.4 并口 (IEEE 1284)
      • 6.2.5 SPI (Serial Peripheral Interface)
      • 6.2.6 I²C (Inter-Integrated Circuit)
      • 6.2.7 IEEE 1394 (FireWire)
      • 6.2.8 CAN (Controller Area Network)
    • 6.3 网络通信技术
      • 6.3.1 以太网 (Ethernet)
      • 6.3.2 WLAN (IEEE 802.11)
      • 6.3.3 蓝牙 (Bluetooth)
      • 6.3.4 Zigbee (IEEE 802.15.4)
      • 6.3.5 AFDX (Avionics Full-Duplex Switched Ethernet)
      • 6.3.6 FC (Fibre Channel)
    • 6.4 高速串行通信接口
      • 6.4.1 Serial RapidIO (sRIO)
      • 6.4.2 Select IO
    • 6.5 移动通信接口
      • 6.5.1 3G (UMTS/WCDMA)
      • 6.5.2 4G (LTE/LTE-Advanced)
      • 6.5.3 5G (NR)
    • 总结与选型建议

快速读懂本文😄

🚀 本文说明了嵌入式系统中的定时器/计数器工作原理及各类通信接口技术:包括定时器的自动重载模式和计数器的事件统计功能;从传统板级总线(如PCI、EISA)到现代高速接口(如PCIe、RapidIO)的演进;各类设备互连技术(USB、I2C、SPI、CAN)的特性差异;网络通信协议(以太网、WLAN、5G)的技术要点;最后针对不同应用场景提出了选型建议。

🔥对于软考而言,需要重点掌握定时器参数计算、各类总线的拓扑结构与带宽特性(特别是PCIe版本演进)、通信协议的仲裁机制(如CAN的非破坏性仲裁)以及典型应用场景的匹配选择。

5. 定时器与计数器

5.1 定时器(Timer)

定时器用于时间管理,如延时、周期性任务调度、PWM信号生成等。

工作原理

  • 时钟源:由CPU时钟或外部晶振提供基准频率(如1MHz)。
  • 计数寄存器:递增或递减计数,达到设定值后触发中断或输出信号。
  • 工作模式
    • 单次模式(One-shot):计数到设定值后停止,需手动重启。
    • 自动重载模式(Auto-reload):计数到设定值后自动重置,实现周期性触发。

示例

  • 在STM32中,配置定时器实现1ms延时:
    • 时钟源=72MHz,分频后1MHz → 计数值=1000(1ms)。

5.2 计数器(Counter)

计数器用于统计外部事件(如脉冲信号、传感器触发)。

工作原理

  • 外部输入信号:通过GPIO或专用引脚接入(如编码器输出)。
  • 计数方式
    • 上升沿/下降沿计数:每检测到一个边沿,计数值+1。
    • 方向计数:支持加减计数(如正交编码器)。

示例

  • 工业流水线上用计数器统计产品数量(光电传感器触发)。

5.3 定时器与计数器的关系

  • 定时器本质是计数器:但时钟源固定(内部时钟)。

  • 计数器可作定时器:若外部信号频率已知(如1Hz方波)。

  • 定时器计数值计算

    • 已知时钟频率 f c l k f_{clk} fclk和分频系数 P S C PSC PSC,定时时间 T T T为:
      T = ( A R R + 1 ) × ( P S C + 1 ) f c l k T = \frac{(ARR + 1) \times (PSC + 1)}{f_{clk}} T=fclk(ARR+1)×(PSC+1)
      • A R R ARR ARR:自动重载值(设定计数值)。
      • P S C PSC PSC:预分频系数(降低计数频率)。

上面公式要“+1”是因为ARR和PSC都是从0开始算的。

6. 嵌入式系统总线及通信接口技术

6.1 板级与板间总线技术

6.1.1 PCI (Peripheral Component Interconnect)

在这里插入图片描述

基本原理:PCI总线是一种同步的32位或64位并行总线,采用主从架构,工作频率为33MHz或66MHz。它使用地址/数据复用技术,通过集中式仲裁机制管理总线访问。

特点

  • 带宽:32位/33MHz配置下理论带宽为133MB/s
  • 拓扑结构:支持总线型拓扑,最多可连接10个电气负载
  • 即插即用:支持自动配置(通过PCI配置空间)
  • 中断共享:允许多个设备共享中断线
  • 优势:低延迟、高可靠性,广泛用于PC和嵌入式系统
  • 局限:并行总线受时钟偏斜影响,频率提升受限

典型应用:早期的显卡、网卡、声卡等扩展卡

实际上严格来说32位/33MHz配置下理论带宽为132MB/s,但是行业通用133MB/s表示。

6.1.2 PCI Express (PCIe)

基本原理:PCIe采用点对点串行连接,使用差分信号传输,基于数据包进行通信。采用分层架构(事务层、数据链路层和物理层),支持多通道绑定。

特点

  • 带宽:单通道(x1)v1.0为250MB/s,v4.0 x16可达32GB/s
  • 拓扑结构:星型拓扑,通过Switch扩展连接
  • 差分信号:使用LVDS技术,抗干扰能力强
  • 高级特性:支持热插拔、QoS、虚拟化等
  • 能效比:相比PCI功耗更低,带宽更高

版本演进

版本发布时间单通道速率编码效率x16带宽
1.020032.5GT/s8b/10b4GB/s
2.020075GT/s8b/10b8GB/s
3.020108GT/s128b/130b16GB/s
4.0201716GT/s128b/130b32GB/s
5.0201932GT/s128b/130b64GB/s

典型应用:现代显卡、NVMe SSD、高速网卡等

PCIe的详细介绍可以参考此前文章:【自动驾驶汽车通讯协议】深入理解PCI Express(PCIe)技术

6.1.3 EISA (Extended Industry Standard Architecture)

在这里插入图片描述

基本原理:EISA是ISA总线的32位扩展,保持向后兼容,使用更深的插槽设计。采用同步总线协议,时钟频率8MHz。

特点

  • 带宽:32位带宽,理论传输率33MB/s
  • 总线仲裁:支持多主控总线仲裁
  • 配置机制:通过特定端口和配置文件进行手动配置
  • 局限:已被PCI取代,复杂性高但性能提升有限

典型应用:早期的服务器和高性能工作站

6.1.4 VME (VersaModule Eurocard)

基本原理:VME总线采用Eurocard机械标准,定义多级并行总线架构(数据传输总线、仲裁总线、中断总线等)。支持多主控架构,采用异步协议。

特点

  • 带宽:32位版本理论带宽40MB/s,VME64x可达160MB/s
  • 机械结构:坚固的Eurocard结构,适合工业环境
  • 实时性:确定性的总线仲裁机制
  • 扩展性:支持多达21个插槽的背板系统
  • 标准体系:IEEE 1014标准,长期稳定支持

典型应用:军事、航空航天、工业控制系统

6.1.5 CompactPCI (CPCI)

在这里插入图片描述

基本原理:CPCI将PCI电气标准与Eurocard机械结构相结合,使用2mm高密度连接器,支持热插拔。

特点

  • 带宽:与PCI相同,32位/33MHz为133MB/s
  • 连接器:J1/J2用于PCI总线,J3-J5用于用户定义I/O
  • 可靠性:符合IEC-1101抗震标准
  • 热插拔:支持带电插拔(需特殊设计)
  • 衍生产品:CompactPCI Serial(改用PCIe协议)

典型应用:电信设备、工业控制系统、军用电子

6.1.6 PCMCIA (PC Card)

在这里插入图片描述

基本原理:PCMCIA标准定义了68针的紧凑型扩展接口,最初用于内存扩展,后发展为通用I/O接口。

类型

  • Type I:3.3mm厚,主要用于内存
  • Type II:5mm厚,通用I/O设备
  • Type III:10.5mm厚,大容量存储

后续发展:ExpressCard标准取代了PCMCIA,采用PCIe和USB接口

典型应用:早期的笔记本网卡、调制解调器、存储卡

6.2 设备互连接口技术

6.2.1 USB (Universal Serial Bus)

这个不用上图了吧……

版本演进

版本发布时间速率电流特性
USB1.019961.5Mbps100mA低速设备支持
USB1.1199812Mbps500mA全速规范
USB2.02000480Mbps500mA高速模式,广泛普及
USB3.020085Gbps900mASuperSpeed,全双工
USB3.1201310Gbps2ASuperSpeed+,Type-C接口
USB3.2201720Gbps多通道操作
USB4201940Gbps基于Thunderbolt 3,PCIe隧道

拓扑结构:树形拓扑,最多支持127个设备,通过Hub扩展

关键特性

  • 热插拔:支持即插即用和热插拔
  • 供电能力:USB PD规范可提供高达100W功率
  • 协议栈:包含物理层、链路层、协议层和应用层
  • Type-C:可逆插接,支持Alternate Mode(DP、Thunderbolt等)

典型应用:外设连接、移动设备充电、数据存储

6.2.2 串口 (UART/RS-232/RS-485)

在这里插入图片描述

UART基础

  • 帧格式:起始位(1)+数据位(5-8)+校验位(可选)+停止位(1-2)
  • 波特率:常见300-115200bps,最高可达数Mbps(取决于硬件)
  • 全双工:独立收发通道

RS-232

  • 电平标准:±3V至±15V(负逻辑)
  • 距离:理论最大15米(115200bps时实际<5米)
  • 连接器:DB9或DB25

RS-485

  • 差分传输:抗干扰能力强
  • 多点通信:支持32个驱动器/接收器
  • 距离:可达1200米(低速时)
  • 半双工:需要方向控制

典型应用:工业设备控制、传感器接口、调试终端

UART的详细介绍请见此前文章:【自动驾驶汽车通讯协议】UART通信详解:理解串行数据传输的基石

6.2.3 红外通信 (IrDA)

在这里插入图片描述

基本原理:使用红外LED进行近距离无线通信,基于异步串行协议

版本

  • SIR:最高115.2kbps(兼容UART)
  • MIR:1.152Mbps
  • FIR:4Mbps
  • VFIR:16Mbps

特点

  • 距离:通常<1米,定向通信
  • 安全:不易被窃听(需视线范围内)
  • 功耗:低于RF技术
  • 局限:易受环境光干扰,需对准

典型应用:旧式手机数据传输、遥控器、医疗设备

6.2.4 并口 (IEEE 1284)

在这里插入图片描述

模式

  • SPP:标准模式,单向输出
  • EPP:增强型,双向500KB/s
  • ECP:扩展能力端口,使用DMA,2MB/s

连接器:DB25或36针Centronics

现状:已被USB取代,但在某些工业设备中仍有使用

6.2.5 SPI (Serial Peripheral Interface)

四线制

  • SCLK:时钟(主设备产生)
  • MOSI:主出从入
  • MISO:主入从出
  • SS:片选(低有效)

特点

  • 全双工:同时收发
  • 速度:可达50MHz(短距离)
  • 无寻址:依赖硬件片选
  • 模式:通过CPOL/CPHA配置时钟极性相位

变种

  • Dual SPI:使用MOSI/MISO进行双工传输
  • Quad SPI:新增DATA2/DATA3线提升带宽

典型应用:Flash存储器、传感器、显示屏

SPI详细介绍请见此前文章:【自动驾驶汽车通讯协议】SPI通讯:深入理解与应用

6.2.6 I²C (Inter-Integrated Circuit)

两线制

  • SCL:串行时钟
  • SDA:串行数据(开漏输出)

特性

  • 多主控:支持总线仲裁
  • 寻址:7位或10位地址模式
  • 速度
    • 标准模式:100kbps
    • 快速模式:400kbps
    • 高速模式:3.4Mbps
    • 超快模式:5Mbps
  • 上拉电阻:典型值1kΩ-10kΩ(取决于总线电容)

协议帧

起始位 | 地址字节(R/W) | ACK | 数据字节 | ACK/NACK | ... | 停止位

典型应用:EEPROM、温度传感器、RTC芯片

I²C的详细介绍请见此前文章:【自动驾驶汽车通讯协议】I2C(IIC)总线通讯技术详解

6.2.7 IEEE 1394 (FireWire)

版本

  • 1394a:400Mbps,电缆长度4.5米
  • 1394b:800Mbps,电缆长度100米(光纤)

特点

  • 对等网络:支持设备间直接通信
  • 等时传输:保障带宽,适合音视频
  • 供电:通过电缆提供45W功率
  • 拓扑:最多63节点,支持树形和菊花链

与USB对比

  • 更低CPU占用
  • 更确定的延迟
  • 更复杂的协议栈

典型应用:专业视频设备、音频接口

6.2.8 CAN (Controller Area Network)

帧类型

  • 数据帧:携带实际数据
  • 远程帧:请求数据
  • 错误帧:指示错误状态
  • 过载帧:请求延迟

仲裁机制:基于标识符的非破坏性逐位仲裁(低ID优先级高)

版本

  • CAN2.0A:11位标识符
  • CAN2.0B:29位标识符
  • CAN FD:灵活数据速率,最高5Mbps

物理层

  • 差分电压:CAN_H 2.5-3.5V,CAN_L 1.5-2.5V
  • 终端电阻:120Ω(两端各一个)

典型应用:汽车电子、工业控制、医疗设备

6.3 网络通信技术

6.3.1 以太网 (Ethernet)

标准演进

标准速率介质编码最大距离
10BASE-T10Mbps双绞线Cat3Manchester100m
100BASE-TX100Mbps双绞线Cat54B5B100m
1000BASE-T1Gbps双绞线Cat5ePAM-5100m
10GBASE-T10Gbps双绞线Cat6a128-DSQ100m
40GBASE-SR440Gbps多模光纤NRZ100m
100GBASE-LR4100Gbps单模光纤PAM410km

MAC协议:CSMA/CD(传统以太网),全双工模式下无需冲突检测

帧结构

前导码(7B) | SFD(1B) | 目的MAC(6B) | 源MAC(6B) | 类型/长度(2B) | 数据(46-1500B) | FCS(4B)

工业变种

  • EtherCAT:实时以太网,从站处理帧"on the fly"
  • PROFINET:支持IRT(等时实时)通信
  • Power over Ethernet:IEEE 802.3af/at/bt,最高90W供电

6.3.2 WLAN (IEEE 802.11)

标准对比

标准频段最大速率调制方式MIMO特点
802.11a5GHz54MbpsOFDM-早期标准,干扰少
802.11b2.4GHz11MbpsDSSS-普及广,干扰多
802.11g2.4GHz54MbpsOFDM/DSSS-兼容b,性能提升
802.11n2.4/5GHz600MbpsOFDM4×4引入MIMO,帧聚合
802.11ac5GHz6.93GbpsOFDM8×8更宽信道(160MHz),256QAM
802.11ax2.4/5/6GHz9.6GbpsOFDMA8×8WiFi6,高效频谱利用

安全协议

  • WEP:已被破解,不安全
  • WPA:TKIP加密
  • WPA2:强制AES-CCMP
  • WPA3:SAE握手,192位加密

嵌入式考虑

  • 低功耗模式(PS-Poll)
  • 简化协议栈(LWIP)
  • 天线设计(PCB天线 vs 外接天线)

6.3.3 蓝牙 (Bluetooth)

版本演进

版本关键特性最大速率距离
1.x基础速率,易受干扰1Mbps10m
2.x+EDR增强数据速率3Mbps30m
3.0+HS802.11作为传输层24Mbps与WiFi同
4.x LE低功耗,蓝牙智能1Mbps100m(理论)
5.02Mbps PHY,长距离,广播扩展2Mbps300m

协议栈

  • 控制器:PHY+LL(硬件实现)
  • 主机:L2CAP、ATT、GATT、GAP等
  • 配置文件:基于GATT的服务定义(如HID、A2DP)

Mesh网络:基于广播的泛洪网络,支持多跳通信

6.3.4 Zigbee (IEEE 802.15.4)

ZigBee是一种基于IEEE 802.15.4标准的低功耗、低速率的无线通信技术,主要面向物联网和嵌入式设备组网,典型传输距离10-100米。

ZigBee支持星型、树型和网状网络拓扑,单个网络可容纳超过6.5万个节点,具有自组网和自修复能力。其协议栈包含物理层、MAC层、网络层和应用层,采用AES-128加密保障安全。

由于极低的功耗特性(终端设备电池可工作数年),ZigBee广泛应用于智能家居(如灯光控制、安防传感器)、工业自动化(无线传感器网络)、智能电表和医疗监护等领域。相比Wi-Fi和蓝牙,ZigBee以更低的成本和功耗实现设备间可靠的中低速数据传输。

在这里插入图片描述

网络拓扑

  • 星型:协调器为中心
  • 树型:带路由功能
  • 网状:多跳自组织

协议栈

  • PHY:2.4GHz(全球)、915MHz(美洲)、868MHz(欧洲)
  • MAC:CSMA-CA,保障时隙(GTS)
  • NWK:路由管理
  • APS:端点管理
  • ZDO:设备管理

特点

  • 低功耗:终端设备可电池供电数年
  • 低速率:250kbps(2.4GHz)
  • 高节点数:支持65000+节点
  • 安全:AES-128加密

6.3.5 AFDX (Avionics Full-Duplex Switched Ethernet)

航空电子特性

  • 确定性延迟:通过虚拟链路(VL)保障
  • 冗余管理:双冗余网络
  • 流量管制:带宽分配间隙(BAG)控制
  • 帧格式:基于标准以太网,但增加序列号等字段

参数配置

  • BAG:典型值1ms-128ms
  • Smax:最大帧大小(通常1024字节)
  • Jitter:严格控制在几十微秒内

6.3.6 FC (Fibre Channel)

拓扑结构

  • 点对点:简单连接
  • 仲裁环:FC-AL,最多126节点
  • 交换结构:Fabric,数千节点

协议层

  • FC-0:物理层(光纤/铜缆)
  • FC-1:编码/解码(8b/10b)
  • FC-2:帧协议
  • FC-3:公共服务
  • FC-4:上层协议映射(如SCSI)

速率:1GFC至128GFC(当前主流16G/32G)

应用:存储区域网络(SAN)、航空电子

6.4 高速串行通信接口

6.4.1 Serial RapidIO (sRIO)

协议分层

  • 物理层:1x/4x链路,2.5/3.125/5/6.25Gbaud
  • 传输层:包路由(8/16位设备ID)
  • 逻辑层:直接IO/DMA/消息传递

包结构

  • 控制符号:链路维护
  • 数据包:最大256字节有效载荷

特点

  • 低延迟:亚微秒级
  • 高可靠:CRC校验,链路级重传
  • 拓扑:支持星型、网状、树型
  • 应用:无线基站、雷达、高性能计算

6.4.2 Select IO

Xilinx FPGA技术

  • 电压标准:支持LVCMOS、LVDS、HSTL等
  • 阻抗匹配:可编程驱动强度与终端
  • Bank划分:不同Bank可配置不同电压
  • 高速接口
    • HP Bank:最高1.8Gbps
    • HR Bank:最高950Mbps

设计考虑

  • 信号完整性分析
  • IBIS模型仿真
  • 时序约束管理

6.5 移动通信接口

6.5.1 3G (UMTS/WCDMA)

关键技术

  • 宽带扩频:5MHz信道
  • 功率控制:1500Hz快速功控
  • 核心网:分组交换与电路交换并存

演进路线

  • HSDPA:下行14.4Mbps
  • HSUPA:上行5.76Mbps
  • HSPA+:64QAM,MIMO,84Mbps

6.5.2 4G (LTE/LTE-Advanced)

核心技术

  • OFDMA:下行,抗多径干扰
  • SC-FDMA:上行,低峰均比
  • MIMO:最多8×8配置
  • 全IP:无电路交换回退

载波聚合

  • Intra-band:同频段连续/非连续
  • Inter-band:跨频段聚合
  • 最大带宽:100MHz(5CA)

性能指标

  • 延迟:用户面<5ms
  • 速率:理论下行3Gbps(4×4 MIMO+256QAM+5CA)

6.5.3 5G (NR)

创新技术

  • 毫米波:24GHz以上频段
  • Massive MIMO:64/128天线阵列
  • 波束赋形:动态波束跟踪
  • 灵活 numerology:可配置子载波间隔
  • 网络切片:逻辑专网

三大场景

  • eMBB:增强移动宽带(20Gbps峰值)
  • URLLC:超可靠低延迟(1ms延迟)
  • mMTC:大规模机器通信(百万/km²连接)

嵌入式应用

  • C-V2X车联网
  • 工业物联网
  • AR/VR实时传输

总结与选型建议

总线/接口选择矩阵

需求推荐技术
板内高速互连PCIe、RapidIO
低功耗传感器网络I2C、SPI、Zigbee
工业控制CAN、PROFINET、EtherCAT
移动设备连接USB-C、Bluetooth 5
高可靠航空电子AFDX、FC
无线宽带5G NR、802.11ax
长距离有线通信RS-485、工业以太网
http://www.xdnf.cn/news/2513.html

相关文章:

  • 全面解析Java(上)------多线程编程:从线程生命周期到并发机制的深度剖析与实践指南
  • 组件的基本知识
  • 力扣hot100,739每日温度(单调栈)详解
  • 【Spring Boot】Maven中引入 springboot 相关依赖的方式
  • linux
  • Maven 使用教程
  • C语言复习笔记--内存函数
  • 土壤有机质含量
  • adb常用的20个命令
  • java_基础Java 转义字符学习笔记
  • Top-k问题的解法
  • 在线重定义——分区表改造
  • 收藏按钮变色问题
  • 18.电源滤波器的量化选型方法
  • IP地址如何切换到国内别的省份?一步步指导
  • 蓝桥杯 11. 打印大X
  • 设计模式每日硬核训练 Day 16:责任链模式(Chain of Responsibility Pattern)完整讲解与实战应用
  • 从零到精通:深入剖析GoFrame的gcache模块及其在项目中的实战应用
  • 实现 Babylon.js 鼠标输入管理单例 (MouseController) 的最佳实践
  • WebGIS面试题目整合资料
  • 分享!RASP的技术应用
  • 鸿蒙OSS文件(视频/图片)压缩上传组件-能够增删改查
  • 软件功能设计视角下的能源管理系统功能清单构建与实践​
  • 构建事件驱动的云原生后端系统 —— 从设计到实践
  • 多模态大语言模型arxiv论文略读(四十五)
  • 【数据结构_堆
  • 虚函数表的设计和多态的实现
  • 《AI大模型应知应会100篇》第38篇:大模型与知识图谱结合的应用模式
  • 计算机三大主流操作系统的前世今生 - Linux|macOS|Windows
  • 多商户 | 可二次开发【全开源】小程序源码商城挑选指南!