请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TM4C123GH6PM 对于定时器(driverlib\timers)、TivaWare 提供函数 TimerEnable()和 TimerDisable()。 我没有看到相应的 TimerIsEnabled()函数来查询计时器的启用状态。 这样一个函数可能看起来像这样(尽管这是**未经**测试的)--
// // //! 检查是否启用了定时器 //! //! \param ui32Base 是定时器模块的基址。 //! \param ui32Timer 指定要检查的计时器;必须是 //! \b TIMER_A、\b TIMER_B 或\b TIMER_Both。 //! //! 如果启用了指定的计时器、则返回 true;如果禁用、则返回 false // ********* bool TimerIsEnabled (uint32_t ui32Base、uint32_t ui32Timer) { uint32_t TmrOCtl = HWREG (ui32Base + TIMER_O_CTL); uint32_t Expected = ui32定时器和(TIMER_CTL_TAEN | TIMER_CTL_TBEN); assert (_TimerBaseValid (ui32Base)); 断言((ui32Timer == TIMER_A)||(ui32Timer ==TIMER_B)|| (ui32Timer = Timer_both); 返回((TmrOCtl & Expected)== Expected)? true : false ; }
在 TivaWare 的未来版本中是否有可能发生这种情况?