一.上拉/下拉输入,浮空输入
二.端口重映射
引脚重映射配置过程(以串口1为例)
- 使能GPIO时钟(重映射后的IO口)
- 使能功能外设时钟(例如串口1)
- 使能AFIO时钟。重映射必须使能AFIO时钟
- 开启重映射
什么情况需要开启AFIO辅助功能时钟?
对寄存器AFIO_MAPR(配置复用功能重映射),AFIO_EXTICRX(配置外部中断线映射),AFIO_EVCR(配置EVENTOUT事件输出)进行读写操作前,应该首先打开AFIO时钟。
三.NVIC
NVIC中断优先级分组
中断管理方法:首先,对STM32中断进行分组,组0~4。对于每个中断设置一个抢占优先级和一个响应优先级值。
分组配置在寄存器SCB->AIRCR中配置
组 | AIRCR[10:8] | IP bit[7:4]分配情况 | 分配结果 |
0 | 111 | 0:4 |
0位抢占优先级,4位响应优先级 |
1 | 110 | 1:3 | 1位抢占优先级,3位响应优先级 |
2 | 101 | 2:2 | 2位抢占优先级,2位响应优先级 |
3 | 100 | 3:1 | 3位抢占优先级,1位响应优先级 |
4 | 011 | 4:0 | 4位抢占优先级,0位响应优先级 |
关于抢占优先级和响应优先级(以a,b两个中断为例)
- 若a的抢占优先级高于b,则,a可以打断b(值越小优先级越高)。
- 若a和b的抢占优先级相同,则,若a的响应优先级高于b,则a先执行。