篮球组运动组任务(12.19到12.26任务)
本周任务:
理论学习:
- 了解STM32时钟结构
- 了解单片机中的事件和中断是什么,弄清它们之间的区别
- 理解中断优先级
- 了解STM32的定时器,并学习定时器的基本结构和功能
实践项目:
- 通过按键控制LED灯的亮灭,并利用定时器中断,对按键进行消抖
- 利用定时器,实现呼吸灯的效果(选做)
思考题(下次开会将会讨论):
-
我们现在使用的库文件为HAL库,如何理解库中的GPIOB
-
文件库中的.c和.h文件之间是如何关联在一起的
-
延时去抖和定时器去抖的优劣
部分参考资料:
-
正点源子 STM32F4-基于探索者F407教学视频 该视频的第六讲有助于了解时钟结构以及思考题第一问
-
群文件中的关于定时器和中断的文档
-
定时器简便计算公式:其中84MHz和168mHZ仅适用于F407,该频率是定时器所在总线的频率
-
(定时器去抖思路)按键状态可以分为四种状态,正在按下,正在抬起,按下,抬起。利用定时器中断,可以在中断中读取按键相连的GPIO口电平,通过前后两个电平比较,实现按键状态的判断,从而实现去抖。
-
STM32参考手册第113页 ‘8.2 GPIO寄存器描述’ ,该章节结合代码会对第一问理解更加深入
-
善用MDK5中的“go to definition”功能,选中你想要了解的变量,变量名和函数名,使用该功能能够让你跳转到其定义的位置。(选中后右键即可找到该功能)
-
该图有助于了解STM32基本结构