关于STM32L0的闹钟A中断
准备用STM32L053做一个板子,用到了RTC的两个闹钟A,结果碰到了问题闹钟B处理中断服务程序的时候,闹钟A发生中断会导致两个RTC的闹钟中断都失效,再也无法触发,
反之,闹钟A处理中断服务程序的时候发生闹钟B中断,闹钟B中断服务程序会乖乖地等闹钟A中断执行完后再执行.
而且闹钟A这个中断,处理的时候,如果发生其它优先级更高的中断,其它中断都会石沉大海,就算执行完闹钟A后也不继续执行。。。
闹钟B却正常可以优先级嵌套其它的中断,
程序是用STM32cubemx生成的工程和代码,
实在没办法了,求大神们指点一二
666666666666666666666666666666666666666 看下手册,这两个中断是不是有区别 挺可怕的 响应优先级 抢占优先级 估计是你代码的问题,尤其中断优先级的安排。
另外,stm32cubeMx只是个基本配置工具,侧重于时钟、管脚等,
往往还需自己添加用户代码才能正确运行。
另外,STM32CUBEL0库里有RTC ALARM的工程,你可以参考下。 cube自动生成的stm32l0xx_hal_rtc.c里,是先调用回调函数再清标志位的,我把它改成先清标志位再调用回调函数,问题就解决了,但不知道会不会发生什么别的问题。。。
页:
[1]