This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C123GH6PM:定时器匹配中断未触发

Guru**** 2325560 points
Other Parts Discussed in Thread: TM4C123GH6PM
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/589640/tm4c123gh6pm-timer-match-interrupt-not-firing

器件型号:TM4C123GH6PM

您好!

我有 Tiva C 系列 TM4C123G Launchpad。 我一直在尝试为 Timer0配置比较匹配中断、但无法将其触发。 如果有人能帮我解决问题、我会很高兴。 以下是我的代码。

void Timer0AIntHandler (void)
{
//清除计时器中断
TimerIntClear (TIMER0_BASE、TIMER_CAP_MATCH);

GPIOPinWrite (GPIO_PORTF_BASE、GPIO_PIN_1、GPIO_PIN_1);

}

void timer_init0 ()
{

SysCtlPeripheralEnable (SYSCTL_Periph_TIMER0);
TimerConfigure( TIMER0_BASE,TIMER_CFG_PERIODICRACASE );

TimerLoadSet (TIMER0_BASE、TIMER_A、8000);
TimerMatchSet (TIMER0_BASE、TIMER_A、5000);

IntEnable (INT_TIMER0A);

TimerIntEnable (TIMER0_BASE、TIMER_CAP_MATCH);
IntMasterEnable();

TimerIntRegister (TIMER0_BASE、TIMER_A、Timer0AIntHandler);

TimerEnable (TIMER0_BASE、TIMER_A);

} 

此外、我还无法理解什么是预分频器和预分频器匹配。 我的经验告诉我、预分频器用于为计时器获取不同于系统时钟的时钟频率。 使用预分频器时、预分频器是否与定时器匹配?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    您是否可以更改为 TimerConfigure( TIMER0_BASE、TIMER_CFG_SPLIT_PAIR | TIMER_CFG_A_PERIODICASE )?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    已尝试。 不奏效。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、我想我在用于 TM4C123GH6PM 的 TivaWare 中发现了一个很大的穿孔。 计时器 API 没有为设置比较匹配计时器定义函数参数。 比较匹配的中断也是如此。

    您必须手动设置硬件寄存器才能完成此工作。

    //启用 Timer1比较匹配中断
    Timer1_IMR_R |= 0x10;

    //清除 Timer1比较匹配中断
    Timer1_ICR_R = 16;
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rohin、
    很抱歉,我昨天不在办公室。 正如我在我们的私人消息中向您提到的、我也无法使其正常工作、因为 API 仅具有 TIMER_CAP_MATCH、并且在其他选项中可选择不包含实际定时器比较匹配中断的中断、除非您直接写入寄存器以启用相应的中断。 这是 API 中的一个缺点、我们将注意到它并了解我们可以做些什么。