1、中断的原理
2、M3内核的中断结构
3、STM32的中断
4、编写外部中断和USART中断
你在图书馆学习stm32,你朋友突然要来学校找你,给你打电话,说,我坐公交,快到的时候给你打电话,那么,你有两种方式,一种就是一直拿着手机,等着电话响;另一种就是你先学习,等电话响的时候才去接电话,然后把你同学带上来。
1.中断的原理:
例如:判断一个按键是否按下?
1--查询 (软件-- 一直去读该管脚是否被按下)
while(1)--CPU一直在判断按键是否按下!!!
2--中断:(硬件产生的--当CPU检测到按键按下之后,立刻去执行相关函数)
1.中断:预先知道某件事情要发生,但是不知道什么时间发生,我们就把该事件分配为中断。(当事件发生,CPU执行中断服务函数)
2.中断源:能够发生中断的这个事件
3.中断服务函数:当CPU检测到有中断发生后,自动去执行的函数。
中断执行过程:
1、响应中断(保存原CPU执行中的数据) ---接到同学的电话
2、执行中断(执行中断服务函数) ---下楼去把同学接上来
3、退出中断(恢复原CPU执行的数据 ) ---继续学习
4. 中断优先级:
当多个中断同时到达,根据中断优先级的大小,去执行中断服务函数。
2、M3内核的中断结构:
1.STM32 -- CPU -- M3内核
对于优先级执行中断的顺序是通过中断的管理者NVIC来决定的;
M3内核中有一个NVIC中断控制器:中断的管理者--根据优先级分配中断执行的顺序!
2.查看M3技术手册: