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.

[参考译文] TMS320F28377D:使用 CLA 和写入 GPIO 数据寄存器、EALLOW 受保护寄存器

Guru**** 2524550 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/866723/tms320f28377d-using-cla-and-writing-to-gpio-data-registers-eallow-protected-registers

器件型号:TMS320F28377D

您好!

我将 CLA 用于我的项目。 当我尝试访问某些寄存器时、我会遇到问题。

对于示例:

当我尝试写入 GPIO 数据寄存器时、它不会更新数据。

我也在使用 tripzone 寄存器来实现 ePWM。 当我使用__meallow()指令在 CLA 中启用中断时,CLA 不运行。

3.当我在 CLA 中更新死区时,它不会更新。

我是否需要启用一些寄存器来提供对 CLA 的特殊访问以访问这些寄存器? 我已经介绍了参考手册。 我没有遇到这样的事情。  

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

    让我们缩小这个范围、

    GPIO、提供对 CLA 的访问:

    GPxCSELy:  

    XX00:已选择 CPU1

    xx01:选择 CPU1.CLA1

    xx10:已选择 CPU2

    xx11:已选择 CPU2.CLA1

    2."当我使用_meallow()在 CLA 中启用中断时;"这不会启用"中断"。 这与 EALLOW 相同。

    3.向我展示如何更新死区。

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

    感谢您的回复

    我 为 GPIO 提供了 CLA 访问权限。 现在、我能够更改它们的状态。

    我正在使用"EPwm3Regs.TZEINT.BIT.OST=0;"这个特定寄存 器来启用和禁用受 EALLOW 保护的中断。 我能否在 CLA 中将该寄存器与 __meallow()一起使用;

    3.我将使用以下寄存器更新死区:

    EPwm3Regs.DBRED.bit.DBRED = SRCP_DBVAL;
    EPwm3Regs.DBFED.bit.DBFED = SRCP_DBVAL;  

    这似乎正在发挥作用。 但是、我想让它成为正确的方式。

    现在、我在链接期间面临一个新问题。 它显示以下错误。 e2e.ti.com/.../2837xD_5F00_FLASH_5F00_CLA_5F00_lnk_5F00_cpu1.rarI还附加了链接器文件供您参考

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

    编码部分看起来不错。

    错误针对链接器命令文件、似乎您的程序不适合 CLA 存储器。 太大。

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

    您好!

    我已经尝试增加 cla1prog 内存大小、但仍然得到相同的错误。 您能不能帮助我解决此错误。

    谢谢

    Lowkya

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

    增大它更多。 我看到您正在使用 LS4/5