
L9663驱动开发
STM32MP135D的TIM2使用ETR作为外部时钟时,无法使用PE15作为输入
stm32H743 定时器溢出
如何鉴别芯片的进口版本和国产版本
cudeide执行run是烧录还是只是执行呢
定时器使用DMA突发传输功能时,传入指针从常量数组改为变量数组后,传输功能异常。测试官方用例一样,是何原因?
cubeIDE在run后出现错误
分享一个PWM+DMA的BUG
F103RCT6芯片对AFIO->MAPR寄存器写入时出错
STM32的TIM触发SPI的DMA发送使用NSS时MSSI的问题
[md]SV,PendSV,SysTick系统自动设置其使能且优先级为0s0。 我自己的代码,优先级组2,USART1为3s3,TIM4为0s3,EXTI9_5_IRQn为1s1,EXTI15_10_IRQn为1s1。 TIM4中断程序中,更新70ms变量标记;EXTI中断程序中,更新编码器数值;main中,读取70ms变量标记值和编码器数值。都只是变量读写,没有看出死锁。 死马当活马医,尝试把上面几个中断的优先级统一设为0s0,居然不死机了! 再试,优先级统一设为1s0,还是死机。 再试,我虽然USART1、EXTI设置有使能中断,但没插串口、没插编码器,不会有中断吧?打断点,确实没有USART1、EXTI的中断,只有TIM4中断在跑。 中断的优先级统一设为0s0不死机,设为1s0会死机,这是为什么呢?
[md]教训: 1、EXTI等中断虽然没跑,但优先级不能随便。 2、搞不清原因,不妨先把全部中断的优先级统一设为0s0或0s1试试。 问题暂时规避了,但根本原因还是不清不楚啊。
[md]优先级统一一样了,说明各个中断不能彼此打断和嵌套了。问题应该是中断嵌套后导致的,具体你后面有时间再对着代码再研究吧。
可能中断处理时间过长,一次没处理完就进下一次了