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/TMS320F28379D:使用 CPU1和 CLA1进行 GPIO 切换

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/803696/ccs-tms320f28379d-gpio-toggling-using-both-cpu1-and-cla1

器件型号:TMS320F28379D

工具/软件:Code Composer Studio

您好!

我正在尝试切换2个 GPIO (一个来自 CLA1、另一个来自 CPU1)。 我已更新两个 GPIO 的内核选择寄存器。 我得到的结果是、如果我在代码中首先声明 GPIO (CLA1)、然后声明 GPIO (CPU1)。 仅 GPIO (CLA1)切换、GPIO (CPU1)不起作用。 其他方式也会发生同样的情况。  如果 GPIO (CPU1)首先声明并且 GPIO (CLA1)不起作用、则其工作。 我正在使用 GPXSET 和 GPXCLEAR 寄存器切换 GPIO。 我已添加 GPIO 声明快照。 请帮助

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

    配置后,您能否在 CCS 寄存器视图中检查寄存器位中的值以确保值正确(根据配置)?

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

    感谢您的回答。 我将 GPIO_SetupPinMux 函数替换为 GPXCSEL 寄存器、以更新两个 GPIO 的内核选择寄存器。 它工作正常。 在使用上述函数时、我检查了 GPXCSEL 寄存器。 它应该是这样的(CPU1.CLA1的 GPIACSEL.GPIO6为1、CPU1的 GPCCSEL.GPIO95为0)。 我仍然不明白为什么它不能使用这个函数。 也许我正在写入其他一些我不应该写入的寄存器。