本帖最后由 地瓜patch 于 2025-8-29 10:35 编辑
串口1通过中断接收数据,当PC模拟发送六个字节时,串口1卡死在接收中断void USART1_IRQHandler(void)里。
当我在memory1中查询串口1接收寄存器0x40011004数据时,程序恢复正常,能够继续往下跑。
写上0x40011004这个地址,点回车瞬间,恢复正常。
神奇不
进一步测试,1.在call stack...标签,pc发送数据,程序卡在接收中断void USART1_IRQHandler(void)。
2.在memory1标签,此时观察寄存器为0x40011004这个地址的数据,pc发送数据,程序正常。
3..在call stack...标签,pc发送数据,程序卡在接收中断void USART1_IRQHandler(void)。切换到memory1标签,程序正常。
4.在memory1标签,此时观察寄存器为其他地址,比如0x80011004这个地址的数据,pc发送数据,程序卡在接收中断void USART1_IRQHandler(void)。切换地址到0x40011004,程序正常。
5.通电不仿真,程序没跑,估计卡在中断里了。
|