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.

[参考译文] TM4C1290NCZAD:TM4C1290NCZAD 计时器问题

Guru**** 2510055 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1271328/tm4c1290nczad-tm4c1290nczad-timer-problem

器件型号:TM4C1290NCZAD

团队成员:

   关于计时器的配置、我想问一个问题。

我根据参考例程配置了 TM4C 的1ms 计时器。 我的系统的主频率是80MHz、计时器的加载值设置为80k。 每1ms 计时器过期、就会进入一个计时器中断服务功能。
我的第一个问题是:我不知道库函数中的加载值是如何计算的。

第二个问题是、我知道在计时器设置加载值后、如果系统现在正在倒计数、那么加载值将从计时器中断降低、直到达到0时才会触发、 但我目前正在测试的情况是、我的计时器在负载值达到0之前进入中断。 我不知道这是否与计时器配置有关。 发生什么事了?

顺便说一下、我在计时器中断中设置一个断点。 我发现每次输入计时器中断时、相应计时器的当前计数值都是不同的。 当加载值降至0时、是否不输入中断?


注意:根据我以前对计时器的理解、当我要配置周期为1ms 的计时器时、首先我要根据计时器时钟和频分系数计算负载值。 该加载值表示1s 到期。 ,计时器中的计数值应该是多少。 然后、根据我要设置和配置的计时器周期(例如、1ms)、我将执行转换以获得配置的1ms 计时器以及我的加载值。

我所说的内容可能有点详细。 我希望专家能够耐心地帮助我回答。 非常感谢。

以下是我的计时器的相关配置:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    我根据参考例程配置了 TM4C 的1ms 计时器。 我的系统的主频率是80MHz、计时器的加载值设置为80k。 每1ms 计时器过期、就会进入一个计时器中断服务功能。
    我的第一个问题是:我不知道库函数中的加载值是如何计算的。

    您好!

     我真的没有看到您的计时器模块配置有问题。 但是、我不知道您是如何配置系统时钟的。 您能展示如何设置80MHz 吗?  

    Unknown 说:
    第二个问题是、我明白在计时器设置加载值后、如果系统现在正在倒计数、那么加载值将从计时器中断减少到0时才会触发、 但我目前正在测试的情况是、我的计时器在负载值达到0之前进入中断。 我不知道这是否与计时器配置有关。 发生了什么?

    正确、在定时器达到0时超时前、不应触发中断。  

    您可以在寄存器窗口中启用 Continuous Refresh。 您看到 TimerB 计数器也在计数吗? 请参阅下面的内容并单击上方菜单上的图标。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

     我没有听到你的回应。 希望您的问题得到解决。 我现在将关闭该主题。 如果有任何更新、只需写入此帖子、该主题将自动重新打开。