我希望你学会一步一步地调试程序,而不是一上来就一股脑的把代码都加进去,结果出问题了,就很主观地认为是哪里哪里出问题。
你的思路是没问题的,但是你看不到实际的结果就以为是中断出了问题。
我建议你这样,
1、先查找一下你所使用的芯片数据手册,看一下外中断接口是哪一个IO。
2、只做外中断功能,检测到下降沿之后让一个连接LED的IO电平翻转,观察中断是否成功。
3、只做定时器功能,定时时间到让连接LED的IO电平翻转,观察定时器是否成功。
4、在定时器中的服务函数里,做AD采样功能,观察AD是否成功采样。
5、把上述的功能联合起来。
你可以在中断服务程序里设个断点,看程序有没有进入中断。有时候中断进入你没法识别 。设个断点如果程序停在断点处说明程序进入了断点。
还有就是你看看CMD文件中PIE地址有没有分配
回复
netdoger
不行吧,这里的代码只是申请了irq,设置了handle,enable只是使能中断,即启用中断报告,并不能实际触发中断,实际的中断触发得需要实际的irq
line上有中断信号才行,你得确认10号irq上连接的硬件设备,需要该设备触发中断才行。
以上就是关于STM32外部中断无法进入中断程序,请问下面的程序哪里不对呀全部的内容,包括:STM32外部中断无法进入中断程序,请问下面的程序哪里不对呀、TMS320F2812使用软仿真时,及simulator时,进不去中断程序、为什么没有触发中断程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)