【从定性到定量:单片机中的速度】
【基本概念】
bit/s = Bits/s = b/s = bps = bit per second = 每秒传输的比特数
Byte/s = B/s = Bps = byte per second = 每秒传输的字节数
1M = 100w = 1000k
1w = 10k
Hz和bps:Hz表频率;bps表传输速度,常用于通信领域
但在单片机领域,两者关系紧密(因为信号传输均为0/1,依赖于由高低电平变化)
举例:GPIO速度为10MHz,表示每秒电平可以翻转100万次
SPI通信速度为8Mbps,表示每秒可以传输80万个bit
而每1个bit都是由1个GPIO的电平状态表示,因此不严谨的说Hz等价于Mbps
【GPIO】
低速2MHz
中速10 MHz
高速50 MHz
【USB】
USB2.0:USB2.0 LS(低速):<= 1.5 Mbps
USB2.0 FS(全速):<= 12 Mbps
USB2.0 HS(高速):<= 480 Mbps
USB3.0:5.0 Gbps
【IIC】
标准模式Sm: <= 100 kbps = 0.1 Mbps (常用)
快速模式Fm: <= 400 kbps = 0.4 Mbps (常用)
快速增强模式Fm+: <= 1000 kbps = 1 Mbps
高速模式HSm: <= 3400 kbps = 3.4 Mbps
超快模式UFm: <= 5000 kbps = 5 Mbps
【SPI】
18Mbps ,一般取几兆到几十兆bps,面包板跳线一般不超过10Mbps
【串口】
115200 ~ 115 kbps ~ 0.1 Mbps
4500000 ~ 4.5 Mbps
波特率(Baud Rate)是衡量串行通信中数据传输速率的参数,表示 每秒传输的符号数(symbols per second),单位为 波特(Baud)
1. 核心概念
- 符号(Symbol):一个信号变化(如电压高低、频率变化等)代表的信息单元。在二进制通信中,1 符号 = 1 比特(bit);但在多电平调制中,1 符号可携带多比特信息。
- 波特率:每秒传输的符号数(Baud),反映信号变化的频率。
- 比特率(Bit Rate):每秒传输的比特数(bps),取决于波特率和每个符号携带的比特数。
1. 比特率是指每秒比特数,而波特率即每秒钟内离散信号事件的个数。
2. 只有当每个信号事件仅代表一个二进制位的情况下,波特率才相当于比特率(每秒比特数),在其他情况下波特率并不直接等于比特率。
2. 波特率 vs 比特率
参数 | 单位 | 计算公式 | 关系说明 |
---|---|---|---|
波特率 | Baud | - | 信号变化的物理速率 |
比特率 | bps (bits per second) | 比特率 = 波特率 × 每符号比特数 | 实际数据传输速率 |
示例:
- 二进制通信(1 符号 = 1 比特): 波特率 = 比特率(如 115200 Baud = 115200 bps)。
115200 bps = 0.1152 Mbps,1 Mbps (兆比特每秒) = 1,000,000 bps (比特每秒) - QPSK 调制(1 符号 = 2 比特): 波特率 2400 Baud → 比特率 4800 bps。
调制方式 | 符号状态数 | 每符号比特数 | 示例(状态代表) |
---|---|---|---|
BPSK | 2 | 1比特 | 0°→0 ,180°→1 |
QPSK | 4 | 2比特 | 0°→00 ,90°→01 ... |
8PSK | 8 | 3比特 | 0°→000 ,45°→001 ... |
16QAM | 16 | 4比特 | 幅度+相位组合 |
3. 常见应用场景
(1)串口通信(UART)
- 典型值:9600、115200 Baud(默认 1 符号 = 1 比特)。
(2)无线通信(如蓝牙、Wi-Fi)
- 使用复杂调制技术(如 QAM、FSK),波特率与比特率差异显著。 例如:Wi-Fi 6 的符号可携带 10 比特,波特率 100 MBaud → 比特率 1 Gbps。
【MQTT】
MQTT传输速度有多快?
平时开发时习惯先把要传输的内容printf出来,后续换成MQTT,但是当要打印的数据量大时,发现有时候预定时间内打不完(速度慢、一般115200波特率),因此想知道换成MQTT协议(以WiFi传输)后速度会提升多少。
以下内容未经核实,仅供参考
场景 | QoS | 速度(Mbps) | 速度(MB/s) | 条件 |
---|---|---|---|---|
工业传感器(高频) | 0 | 58.4 | 7.3 | EMQX, 128字节消息 |
智能家居控制 | 1 | 40.96 | 5.12 | 树莓派Broker, 低延迟 |
金融交易(严格) | 2 | 24.58 | 3.07 | 云端Broker, 加密传输 |
如果这个数据是正确的,这么看:
即使最慢的24Mbps,也比115200波特率(0.1152 Mbps)快200多倍。
1. QoS 0(最快,无确认)
吞吐量:
高性能Broker(如EMQX)可达 57,000 TPS(消息/秒)。
若每条消息为128字节,则:
57,000 × 128 × 8 = 58.4 Mbps(约 7.3 MB/s)。
适用场景:传感器数据(允许丢包)。
2. QoS 1(中等,需确认)
吞吐量:
EMQX约 40,000 TPS。
128字节消息下:
40,000 × 128 × 8 = 40.96 Mbps(约 5.12 MB/s)。
额外开销:每个消息需PUBACK确认,增加约40%数据量(如QoS 1比QoS 0多消耗341字节 vs 229字节)。
3. QoS 2(最慢,严格确认)
吞吐量:
EMQX约 24,000 TPS。
128字节消息下:
24,000 × 128 × 8 = 24.58 Mbps(约 3.07 MB/s)。
额外开销:四步握手流程(PUBREC/PUBREL/PUBCOMP),数据量比QoS 1多50%。
【以太网】
带宽:我们平时所说的“宽带多少M”,指的是宽带的带宽大小,单位是 Mbps(兆比特每秒),表示网络传输速率的理论最大值。
1. “M”的含义
- Mbps:宽带套餐中的“M”代表 Mbps(Megabits per second,兆比特每秒),是带宽的单位,衡量每秒传输的数据量(比特数)
- 与下载速度的区别:下载软件显示的 MB/s(兆字节每秒) 是实际文件传输速度的单位。1字节(Byte)=8比特(bit),因此: 下载速度(MB/s)=带宽(Mbps)8下载速度(MB/s)=8带宽(Mbps) 例如,100M宽带的下载速度理论值为12.5MB/s
2. 带宽与网速的关系
带宽是上限:带宽决定网络的理论最高速率,但实际网速受多种因素影响,如:
- 硬件限制:路由器、网线、光猫需支持千兆(如百兆路由器会限制200M宽带实际速度)
- 网络拥塞:高峰时段或共享带宽可能导致速度下降
- 服务器性能: 下载资源时,若服务器限速,带宽再高也无法突破
3. 常见带宽对应的下载速度
带宽(Mbps) | 理论下载速度(MB/s) | 适用场景 |
---|---|---|
50M | 6.25MB/s | 轻度浏览、视频通话 |
100M | 12.5MB/s | 高清视频、在线游戏 |
200M | 25MB/s | 多设备4K流媒体 |
1000M(千兆) | 125MB/s | 大型文件下载、8K视频 |
参考:一文详解bit/s、b/s、bps、Byte/s、B/s、Bps的转换关系及注意事项_java bite 转 bps-CSDN博客