在调试中停止 STM32F4 RTC
Stop STM32F4 RTC in debug
我的教授给我布置了一个测试。
在测试中,我需要通过使用内部 RTC 使 STM32f4XX 发现像时钟一样工作,并能够随时停止它,然后时钟能够恢复计数(像秒表)。
测试的要点之一是能够通过 STMCube 调试器停止程序,例如暂停执行或断点,并且当恢复执行时,“时钟”继续在它离开的确切位置。
可能吗?
此时,如果我在调试器中暂停执行然后点击恢复,时钟会“跳”到另一个 second/minute,就像我从未暂停过一样。因为 RTC 仍在后台 运行。
根据芯片的参考手册,RTC一旦启动,需要芯片断电才能停止。
有可能吗?
调试外围设备有特殊的寄存器,您可以在其中将哪个外围设备编程为 运行 或在调试顶级模式下停止。它们被称为“冻结寄存器”
因此,如果您希望在处理器被断点停止时停止 RTC,您需要对这些寄存器进行编程。
我的教授给我布置了一个测试。
在测试中,我需要通过使用内部 RTC 使 STM32f4XX 发现像时钟一样工作,并能够随时停止它,然后时钟能够恢复计数(像秒表)。
测试的要点之一是能够通过 STMCube 调试器停止程序,例如暂停执行或断点,并且当恢复执行时,“时钟”继续在它离开的确切位置。
可能吗?
此时,如果我在调试器中暂停执行然后点击恢复,时钟会“跳”到另一个 second/minute,就像我从未暂停过一样。因为 RTC 仍在后台 运行。
根据芯片的参考手册,RTC一旦启动,需要芯片断电才能停止。
有可能吗?
调试外围设备有特殊的寄存器,您可以在其中将哪个外围设备编程为 运行 或在调试顶级模式下停止。它们被称为“冻结寄存器”
因此,如果您希望在处理器被断点停止时停止 RTC,您需要对这些寄存器进行编程。