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.

[参考译文] Compiler/LAUNCHXL-F28069M:Compiler/LAUNCHXL-F28069M

Guru**** 2595800 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/671971/compiler-launchxl-f28069m-compiler-launchxl-f28069m

器件型号:LAUNCHXL-F28069M

工具/软件:TI C/C++编译器

您好!

我目前正在进行 C28x_Microcontroller 多日技术讲座中的实验7、我无法理解'EPwmxRegs.CMPCTL'寄存器对项目的影响。 我已经尝试阅读了实验大纲以及用户手册、但我似乎无法弄清楚'HDWxFULL'位、'HDWxMODE'位和'LOADxMODE'位的功能。 我读出"影子寄存器"是指读取实际寄存器、或仅复制实际寄存器的寄存器。 正确处理该位对于相对较慢的系统有多重要? 我了解了解决方案计划中的完成方式、我是否可以每次都这样设置它们?

最后一点是、 当我尝试通过"Scripts"->"RealTime Emulation Control"->"Run Realtime with Reset"运行程序时、我只会看到 ADC 缓冲区中的更新值在我单击"pause"时更新、这也是图形更新的唯一时间。 对吗?  

谢谢!

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

    您的问题可以通过首先了解"活动"和"活动"寄存器的含义来回答。 这可以在第255页的 F2806x TRM (spruh18g.pdf)中找到。 活动寄存器控制硬件并负责硬件引起或调用的操作。 影子寄存器缓冲或为活动寄存器提供临时保存位置。 它对任何控制硬件都没有直接影响。 在战略时刻、影子寄存器的内容被传输到活动寄存器。 这可防止由于寄存器被软件异步修改而导致损坏或虚假操作。 现在、当查看《车间维修手册》第7-12页(第138页)中的"ePWM 比较控制寄存器"幻灯片时、LOADxMODE 位域决定影子寄存器何时加载到活动寄存器、 SHDWxMODE 位域决定是否使用影子模式或是否立即加载活动寄存器。 SHDWxFULL 位域只是用于确定影子寄存器是否已满的状态位。 这里的关键消息是、您希望活动寄存器在已知的时刻(例如、当 CTR = 0、CTR = PRD 等)具有新值。

    当使用脚本以实时仿真模式运行实验练习时、您还应使用脚本停止代码(而不是"pause"图标)。 要更新图形、您必须首先为该窗口启用持续刷新。 请参阅第6-23页的实验6 (第123页)、了解有关使用实时仿真模式的更多信息。

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken