嵌入式
嵌入式的知识 规格 元件 具体的代码在rust的esp库中.
PCB
PCB电路板上的元器件的介绍
GND: 地线
PWN: 脉冲宽度调制 用数字信号近似连续信号
模拟信号: 连续信号
数字信号: 01的离散信号
GPIO: 通用输入输出
SPI: 串行外设接口
I2C: 集成电路内置总线
I2S: 集成电路内置音频总线
ADC: 模数转换器 把连续的模拟电压量化为离散信号
UART: 通用异步收发传输器 最经典的串口通讯
LEDC: ESP的LED控制器 也是PWM发生器
RMT: ESP的红外遥控收发器
DAC: 数模转换器 把离散的数字信号转换为连续的模拟电压
WS
世界半导体
WS2812: 内置控制IC的智能控制LED光源
ESP32
ESP32包含多种常见变体
ESP32
ESP32-S系列
ESP32-C系列
ESP32-H系列
ESP32-P系列
其中 ESP32-C6,ESP32-H2,ESP32-P4都是专用于新的无线电标准的
特征 |
ESP32 |
S2 |
S3 |
C3 |
C6 |
H2 |
P4 |
ESP8266 |
|---|---|---|---|---|---|---|---|---|
发射 |
2016 |
2019 |
2020 |
2020 |
2021 |
2021 |
2024 |
2014 |
核心类型 |
LX6 |
LX7 |
LX7 |
RISC-V |
RISC-V |
RISC-V |
RISC-V |
L106 |
核心 |
2 |
1 |
2 |
1 |
1 |
1 |
2 |
1 |
频率 |
240 |
240 |
240 |
160 |
160 |
96 |
400 |
160 |
电压 |
2.3-3.6 |
3.0-3.6 |
3.0-3.6 |
3.0-3.6 |
3.0-3.6 |
3.3-3.6 |
3.0-3.6 |
2.5-3.6 |
GPIO |
34 |
43 |
45 |
22 |
30 |
19 |
50+ |
17 |
SRAM KB |
520 |
320 |
512 |
400 |
320 |
256 |
768 |
160 |
RTC/LP SRAM KB |
16 |
16 |
16 |
8 |
16 |
4 |
16 |
1 |
闪存 MB |
0/2/4 |
0/2/4 |
0/8 |
0/4 |
0/4 |
2/4 |
0/4/8 |
4 |
缓存 KB |
64 |
8/16 |
16 |
16 |
16 |
16 |
32 |
32 |
ROM KB |
448 |
128 |
384 |
384 |
320 |
128 |
384 |
0 |
USB JTAG |
❌ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
❌ |
USB OTG |
❌ |
✅ |
✅ |
❌ |
❌ |
❌ |
✅ |
❌ |
ADC |
2x12位 18通道 |
2x13位 20通道 |
2x12位 20通道 |
1x12位 6通道 |
1x12位 7通道 |
1x12位 5通道 |
2x12位 20通道 |
1x10位 1通道 |
DAC |
2x8位 |
2x8位 |
❌ |
❌ |
❌ |
❌ |
2x8位 |
❌ |
数字视频接口 |
❌ |
✅ |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
定时器 |
4x64位 |
4x64位 |
4x64位 |
2x54位 |
2x54位 |
2x54位 |
4x64位 |
2x23位 |
监督机构 |
3 |
3 |
3 |
3 |
3 |
3 |
3 |
1 |
I2C |
2 |
2 |
2 |
1 |
2 |
2 |
4 |
1 |
I2S |
2 |
1 |
2 |
1 |
1 |
1 |
2 |
1 |
SPI |
4 |
4 |
4 |
3 |
2 |
3 |
4 |
2 |
以太网 |
1 |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
LCD接口 |
✅ |
✅ |
✅ |
❌ |
❌ |
❌ |
✅ |
❌ |
MCU温度 |
❌ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
❌ |
触碰 |
10 |
14 |
14 |
❌ |
❌ |
❌ |
14 |
❌ |
UART |
3 |
2 |
3 |
2 |
3 |
2 |
4 |
2 |
红外/RMT |
8 |
4 |
8 |
4 |
4 |
4 |
8 |
1 |
霍尔传感器 |
1 |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
LED PWM |
16 |
8 |
8 |
6 |
6 |
6 |
16 |
5 |
电机脉宽调制 |
6 |
❌ |
2 |
❌ |
❌ |
1 |
6 |
❌ |
无线上网 |
4/6 |
4 |
4 |
4 |
4/6 |
❌ |
4/5 |
4 |
无线网络速度 |
150 |
150 |
150 |
150 |
150 |
❌ |
150@2GHz, 433@5GHz |
72.2 |
WiFi 5GHz |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
✅ |
❌ |
蓝牙经典版 |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
蓝牙低功耗 (BLE) |
BLE4.2 |
❌ |
BLE5.0 |
BLE5.0 |
BLE5.3 |
BLE5.3 |
BLE5.2 |
❌ |
线程 1.3 |
❌ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
❌ |
Zigbee 3.0 |
❌ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
❌ |
事情 (Matter) |
❌ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
❌ |
HomeKit、MQTT 等 |
❌ |
❌ |
❌ |
❌ |
✅ |
✅ |
✅ |
❌ |
相机接口 |
✅ |
✅ |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
TWAI(CAN 2.0) |
✅ |
✅ |
✅ |
✅ |
✅(2) |
✅ |
✅ |
❌ |
SD主机 |
✅ |
❌ |
✅(2) |
❌ |
❌ |
❌ |
✅ |
❌ |
SD 从设备 |
✅ |
❌ |
❌ |
❌ |
✅ |
❌ |
❌ |
✅ |
JTAG |
✅ |
✅ |
✅ |
✅ |
✅ |
❌ |
✅ |
❌ |
飞行时间 |
❌ |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
AI加速支持 |
❌ |
❌ |
✅ |
❌ |
❌ |
❌ |
✅ |
❌ |
深度睡眠 |
10µA |
20µA |
7µA |
5µA |
7µA |
8µA |
10µA |
20µA |
尺寸(毫米) |
5x5/6x6 |
7x7 |
7x7 |
5x5 |
5x5 |
4x4 |
7x7 |
5x5 |
orangepi zero2w
首先 修改内核启动参数 /boot/orangepiEnv.txt
开启USB的从机模式
verbosity=1
bootlogo=false
console=both
disp_mode=1920x1080p60
overlay_prefix=sun50i-h616
rootdev=UUID=90e39537-8dde-46da-8588-e030a2e198a3
rootfstype=ext4
overlays=usb-gadget
extraargs=modules-load=dwc2,g_serial console=ttyS0,115200 console=ttyGS0,115200
然后在Getty开启GS0的监听
ln -sf lib/systemd/system/serial-getty@.service \
etc/systemd/system/getty.target.wants/serial-getty@ttyGS0.service