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.

[参考译文] AM6548:AM6548 -在 PRU 上生成 IEP PWM

Guru**** 2546020 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/930411/am6548-am6548---generate-iep-pwm-on-pru

器件型号:AM6548
您好、TI、
 
我们尝试从 PRU 子系统生成 PWM 信号。 如第6.4.13.2.4节 PRU_ICSSG IEP 计时器基本编程序列中所述、我们已配置 IEP 计数器寄存器并在执行时验证了 CMP 状态寄存器。
 
我们将 PWM1_0的初始状态配置为高电平。
表6-399。 状态转换映射表明、与 PWM 设置相关的第一个 CMPx 事件将导致转换。 即使在 CMP 匹配发生后、状态转换也不会发生。
每当匹配发生时、必须根据第6.4.10.3节 PRU_ICSSG 跳闸状态逻辑切换 PWM1_0。 但我们观察到它仍然处于初始状态。
 
我已附上我们从 Linux 尝试过的代码。(shell.sh)
是否需要配置任何其他相关寄存器才能实现此目的?
 
 
在建议的答案中、
"因此、基本而言、每个组的第一个比较事件会将整个组移动到活动状态、但第一个比较事件不会导致该引脚切换。 您需要在  这两组中创建两个献祭 CMP 事件、请尝试使用 CMP2和 CMP9。"
 
您能帮助我们了解并产生献祭 CMP 事件吗?
 
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您能否将初始化序列与 pdk_am65xx_1_0_7\packages/ti\drv\pruss\examples\apps\icssg_pwm\firmware\src\main.c 中的初始化序列进行比较? 它有一个功能示例。 粗略看一下、您忽略了设置控制寄存器等。

    此外、您还需要运行一个程序、该程序每次都会检查和清除比较事件。

    献祭事件意味着它不是每次比较和清除的、并且只是一次设置。 您可以将 CMP2和 CMP9用于上述其他 E2E 中所述的目的。

    此致

    葡萄园