关于飞控的硬件设计
H743飞控+ESP32S3
各层之间是需要互相通信的,最主要的就是串口通信,最终由ESP32S3接收信息并处理。
ESP32S3共有三个硬件串口(三个都要用),可以通过交换矩阵连接到任一IO。因为板子是自己画的,在Maixduino中可用引脚是D2-D13。
DOMV(Dual-OpenMV),两个OpenMV,靠近机头位置的是OMV1,负责无人机底部影像。靠近机尾位置的是OMV2,为备用摄像头。
K210共有三个硬件串口(用一个就够了),可以通过交换矩阵连接到任一IO。在Maixduino中可用引脚是D2-D13。K210默认串口接在UNO的D0、D1引脚,负责与Maixpy IDE通信,所以其他板子此接口均不能使用。
ASR01为语音识别模块,可以通过语音控制无人机起飞。将其他层所有芯片复位引脚连到UNO的RESET引脚上,ASR01通过需要控制UNO的RESET引脚即可控制无人机起飞。本层为顶层,还有受其他层控制的指示灯,便于观察。
UNO | 飞控 | DOMV | K210 | ASR01 | UNO | 飞控 | DOMV | K210 | ASR01 |
SCL | SCL | ○ | SCL | 引出 | |||||
SDA | SDA | ○ | SDA | 引出 | |||||
NC | NC | NC | NC | NC | |||||
GND | GND | GND | GND | GND | |||||
NC | NC | NC | NC | NC | D13 | ○ | BAT | BAT | ○ |
NC | NC | NC | NC | NC | D12 | FLAG4 | ○ | FLAG4 | ○ |
RST | RST | RST | RST | CTRL | D11 | FLAG5 | ○ | FLAG5 | ○ |
3V3 | 3V3 | 3V3 | 3V3 | 3V3 | D10 | FLAG6 | ○ | FLAG6 | ○ |
5V | 5V | 5V | 5V | 5V | D9 | ||||
GND | GND | GND | GND | GND | D8 | ||||
GND | GND | GND | GND | GND | |||||
VIN | 5V | 5V | 5V | 5V | D7 | RX0 | TX | ○ | ○ |
D6 | TX0 | RX | ○ | ○ | |||||
A0 | RLED | ○ | ○ | RLED | D5 | RX1 | TX | ○ | ○ |
A1 | ○ | GLED | ○ | GLED | D4 | TX1 | RX | ○ | ○ |
A2 | ○ | ○ | BLED | BLED | D3 | RX2 | ○ | TX | ○ |
A3 | FLAG1 | FLAG1 | ○ | ○ | D2 | TX2 | ○ | RX | ○ |
A4 | FLAG2 | FLAG2 | ○ | ○ | D1 | ○ | ○ | TX (X) | ○ |
A5 | FLAG3 | FLAG3 | ○ | ○ | D0 | ○ | ○ | RX (X) | ○ |
解释说明:
R\G\BLED,可指示运行状态。R\G\B分别由ESP32S3、OMV2、K210控制
FLAG,标志位,可以用Arduino中的DigitalRead代替串口通信。
FLAG1 OMV1
FLAG2-3 OMV2
FLAG4-6 K210
前面所说的LED也是可以当做标志位来用的。
BAT,电池电压采样,K210的ADC对该引脚进行采样,并将电量显示到屏幕上。