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.

[参考译文] AM2431:设置 MCSPI 位速率

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1196964/am2431-setting-up-mcspi-bit-rates

器件型号:AM2431

各位专家、您好!
我正在使用 AM243处理器(ALV 封装)、并使用 Code Composer Studio 版本12.1.0.00007和 SDK 版本 MCU_PLUS_SDK_am243x_08_03_00_18

我们必须以15MHz 的频率运行 MCSPI 端口、当我在示例中将比特率设置为15000000时、MCSPI 的 syscfg 设置实际上生成的频率大约为12.5MHz。 如何将 SPI 比特率设置为恰好为15Mhz?

谢谢

Rajeev

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

    您好、Rajeev、

    遗憾的是、位速率必须是输入时钟(50MHz)的整数可分频。 要获得针对比特率的15Mhz、您必须使用60MHz (/4)或45MHz (/3)作为 MCSPI 输入时钟频率。

    此致、

    Ming

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

    您好、Ming、
    感谢您的回答。
    如何设置输入时钟频率? 在 ti_drivers_config.c 文件中的自动生成代码中、它会自动设置为50MHz。

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

    您好、Rajeev、

    我了解了 AM243x TRM、MCSPI0功能时钟输入是 MAIN_SYSCLK0/10。 syscfg 设置为50MHz。 也就是说、不应更改它。

    此致、

    Ming

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

    你(们)好
    感谢您的回答。
    这是否意味着我们无法在该器件上实现15Mhz SPI 比特率?

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

    您好、Rajeev、  

    你是对的。 最接近的值为16.67Mhz (50/3)或12.25Mhz (50/4)。

    此致、

    Ming

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

    Ming、您好!  

     MAIN_SYSCLK0编号是什么?  我们可以将其扩展吗?  

    我们是否可以将输入时钟设置为其他值而不是50MHz?  像 MAIN_SYSCLK0/4?  

    谢谢、

    洪  

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

    您好、Hong、

    MAIN_SYSCLK0为500MHz。

    我认为 不可能增加 MAIN_SYSCLK0的电压、但您应该能够减小它的电压。 如果您降低其比例、它将影响您的整个系统性能。

    此致、

    Ming

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

    Ming、您好!  

     MAIN_SYSCLK0有哪些选项?   

    谢谢、

    洪  

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

    您好、Hong、

    MAIN_SYSCLK0必须是2000MHz 的整数可分频(默认为/4)

    您可以使用 PLL0 (主 PLL)和 PLLCTRL0:

    但是、我们不建议这样做、因为  MAIN_SYSCLK0将影响60%- 70%的外设。 500MHz 是验证的默认值。

    此致、

    Ming