robomaster电控——GPIO
时间:2022-11-12 23:00:00
STM32
1、stm32芯片由内核和外设组成
2、e.g.:STM32F103C8T6
F=通用类型
103(产品子系列)
[101=基本型
102=USB基本型,USB2.0全速设备
103=增强型
105或107=互联型]
C(引脚数)
【T=36脚
C=48脚
R=64脚
V=100脚
Z=144脚】
8(闪存存储容量)
【4=16K闪存存储器的字节
6=32K闪存存储器的字节
8=64K闪存存储器的字节
B=128K闪存存储器的字节
C=256K闪存存储器的字节
D=384K闪存存储器的字节
E=512K字节闪存储器
T(封装)
H=BGA
T=LQFP
U=VFQFPN
Y=WLCSP64
6(温度范围)
6 = -40工业温度范围°C~85°C
7 =-40工业温度范围°C~105°C
keil中国工程中引用的所有头文件路径必须包含在最后一集目录中。
GPIO
(FT):即IO口可以容忍5v;e.g.:例如,输出只能3.3v,但在IO口加上5v;也可以识别
(大部分的IO口可以容忍5v)
GPIO工作方式:
(1)四种输入模式
①输入浮空
②输入上拉
(不同于浮动输入:连接上面的开关,并添加上拉电阻30-50k】)
③输入下拉(与上拉输入相反)
④模拟输入
(电源0-3.3v)
(2)4种输出模式
①开漏输出
由输出数据寄存器控制
1或0由决定(控制)
输出控制电路为1,N-MOS无效;电频由外部上下拉电压决定
输出控制电路为0,N-MOS开启即有效; 就被拉到vss,IO端口低电平有效
②开漏复用功能
(类似于泄漏输出;区别:0/1来源:)
③推挽式输出
由输出数据寄存器控制
输出控制电路为1,P-MOS导通,N-MOS截止;则IO口输出1
输出控制电路为0,P-MOS截止,N-MOS导通;则IO口输出0
④推挽式复用功能
(类似于推挽输出;区别在于:由复用功能输出控制)
区别:
推挽输出:
可以输出强高低电平,连接数字设备
开漏输出:
只可以输出强低电平,高电平必须由外部电阻提高。输出端相当于三极管的集电极.需要上拉电阻才能获得高电平状态.适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)
(3)三种最大翻转速度
2MHZ
10MHZ
50MHZ
GPIO寄存器的相关配置
*除了00,其他输出模式都是
IDR寄存器低16位,每位控制组IO的一个IO口。对应的是IO口的输入电平。
ODR寄存器跟IDR相反,是控制IO口输出。低16位每位控制一个IO口的输出电平是高是低。
(ODR寄存器也可以在输入模式中配置上拉or下拉)
BSRR寄存器(端口位置设置/清除寄存器)低16位,对应位置设置1IO口输出为高电平,对应位置为0IO嘴没有任何影响。高16位相反。
BRR寄存器(端口位置清除寄存器)的功能BSRR寄存器的高位功能相同
STM32引脚说明
端口复用:
有些端口不仅可以作为通用端口IO口,也可以用来引脚一些外设,比如PA9,PA10可以复用为STM32串口资源(功能:最大度的利用端口资源)
端口重映射:
就是可以把某些功能引脚映射到其他引脚。比加串口1默认引脚是PA9 ,PA10可以通过配詈重映射映到PB6,PB7(作用:方便布线)
*所有IO口都可以作为中断输入