微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于STM32外部中断不能进入问题

关于STM32外部中断不能进入问题

时间:10-02 整理:3721RD 点击:
     跟着用原子教程的学习,用函数库的方法学习外部中断,但是都设置好,怎么也进不了中断函数中去,搞了好几天,网是也没个有用答案,发了问题, 成功了也都不说最后是怎么弄好的,真是郁闷。大部分都说设置基本没问题,都进不去。我看我的设置基本也没问题,教程中有的头文件里的东西也看不到,所以肯定跟教程有点出入(网上看的教程没有购买哦,嘿嘿)。
       后来看到有说中断向量没设置等,但这都是寄存器直接操作的,而现在还不清楚用函数库时函数是怎么去操作寄存器的,所以也不太明白。最后实在没办法了,看看数据手册的寄存器,感觉会不会是中断屏蔽没有打开,但是用函数库对寄存器操作有点反感了,差点没去尝试,正好又看到网上一个文章里是用寄存器操作的中断,方便了一把,把中断屏蔽打开的那句话EXTI->IMR=0x02给复制过去,没想到竟然成功了。
        我想总结的是,如果用寄存器操作出问题的可能性要小一些,特别是对初学者,因为库函数的具体实现过程不够明白。
       还有就是我们参考的资料有时候不够完整,造成了不必要的浪费时间,
       因此当用库函数不行的时候就用寄存器来试试吧。
来几张图,给后来者参考一下。
主函数部分


中断设置


优先级设置,顺便说说这个函数的头文件在misc.h里面,不知者还真找不到,我也是没法加进去试试才知道了。


来一张软件仿真图镇楼,哈哈,没有钱买板子

初学者还是老老实实的先学寄存器,寄存器会了再用库函数!

寄存器也看得明白,只是没有清楚函数库函数的具体实现过程,而且看看它的函数也懒的去仔细看,所以就在外面浪费时间找答案,如果耐心去研究一下它的函数估计是很有好处的,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top