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.

[参考译文] CCS/msp430f6435:如何使用_delay_cycle ()生成延迟

Guru**** 2556740 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/599127/ccs-msp430f6435-how-to-generate-delay-using-_delay_cycle

器件型号:MSP430F6435

工具/软件:Code Composer Studio

我尝试使用 mu 代码中的_delay_cycles()来生成1秒延迟。

我无法生成确切的延迟、因为我不知道如何计算 提供给_delay_cycles ()的值

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    CPU 速度由 MCLK 控制。 因此、您必须知道您是如何配置 MCLK 的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您没有更改 MCLK 速度并使用1MHz 时钟、 然后、您将使用以下代码获得1秒的时间:

    unsigned int i;
    for (i=0;i<1000;i++)

    _DELAY_CYCLES (1000);


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

    以微秒为单位,不精确:((

    在我的项目中使用2个 func:uDelay 和 mDelay

    /* uDelay - delay Microsecunds */
    void uDelay (unsigned int us){while (us--)_delay_cycles (5);}// MSP430FR5959上为8MHz、5 -手动选择的值
    /* mDelay -延迟毫秒*/
    void mDelay (unsigned int ms){while (while (ms-_8MHz)、MSP430FR5959上为_ 8000 ms)