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.

[参考译文] MSP430G2553:SLAA196中针对 HDQ 的代码示例、定时器连续模式不确定

Guru**** 2553260 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/592697/msp430g2553-code-example-in-slaa196-for-hdq-timer-continous-mode-doubt

器件型号:MSP430G2553

你好、

///----------------------------------
//空 HDQBreak (空)
//
//本地函数发送 HDQ 中断传输以提供安全保护
//通信开始。
///----------------------------------
静态空 HDQBreak (空)

          TACCR0 = TAR + tBreak * 2;//使用双中断时间
          TACCTL0 = OUTMOD_0 + CCIE;//复位 OUT0、启用内部
          ISRMode = imDelay;//设置 ISR 模式
          LPM0;//等待 ISR 完成
          TACCR0 += TBR;//中断恢复时间
          TACCTL0 = OUTMOD_0 + OUT + CCIE;//设置 OUT0、启用内部
          LPM0;//等待 ISR 完成

我不知道为什么在上面的代码中、在寄存器 TACCR0中使用要计数的值 tBreak 的两倍。  

定时器被声明为 SMCLK 相关和连续模式。

谢谢。

Andr é s Felipe Rodríguez í a

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Andres、您好、我不确定此代码的来源是什么、除了在2006年的旧在线文章中找到它的副本。
    为了回答你的问题,我认为除了过于谨慎之外,没有其他理由。 它会降低通信速度。 如果正确选择了 tBreak、则无需等待两次。

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

    你好、Nima、

    ´s 回答得这么快、我认为代码和您一样、只是这个协议对我来说是新的、而且缺乏经验、让您对所有问题都有怀疑。

    我的帖子中的代码位于 www.ti.com/lit/an/slaa196/slaa196.pdf中的 zip 文件中、是一个2004帖子。

    再次感谢您在这么短的时间内做出响应。

    Andr é s Felipe Rodríguez í a。