Thread 中讨论的其他器件:SYSBIOS
工具/软件:TI-RTOS
G'Day All、
这个问题与所附项目有关。
这是一个相对简单的项目。 它的设计指南是一个运行时钟为1MHz 的 RTOS/Simplelink 计时器、每1.6666mSec 切换引脚3.2。
如果您将此代码加载到 MSP432 Launchpad 中、请将示波器连接到引脚3.2、观察您将看到奇怪的情况。
在大多数情况下、引脚每1.666mSec 切换一次、或按预期足够接近、但在大约20秒(以及此后的每5秒)后、引脚3.2会变得疯狂、并像 MAD 一样切换大约1.6mSec。
如果在一切正常工作时我在 testTimer_HWI 中的断点、TAR 和 TACCR0寄存器会按我的预期递增。 例如:
| tar | TACCR0 |
| 13109. | 14760 |
| 14776 | 16426 |
| 16441. | 18092 |
| 18107. | 19758. |
这是有道理的。 我们将继续进行1666次计数(1MHz 计时器上为1.666mSec)。 但是、如果我在引脚3.2快速切换时断点、我会得到更像这样的结果
| tar | TACCR0 |
| 36. | 3322. |
| 98 | 6654. |
| 159. | 9986 |
| 220 | 13318 |
| 282. | 16650 |
| 343 | 19982. |
| 404. | 23314 |
这种模式一直持续到 TACCR0角色返回到0、然后恢复正常运行。 这毫无意义! TACCR0正以其应有的速度递增两倍(3332而不是1666)、TAR 似乎正以大约61的步进而不是1666的步进前进。
在此期间、我还注意到、在 ROV -> Timer (ti.sysbios.family.arm.msp432)-> Device -> Timer_A1中、"currCount"为负...
您是否有建议、这里可能会发生什么情况?? 非常感谢您在这方面的帮助!
谢谢
Julian
//编辑-用仍然显示相同问题的简化项目替换原始项目

