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.
您好!
有关我们的设计的一些信息、以了解该问题:
为了检查实时中断和 PWM 之间的同步性、我们每个周期切换 GPIO。
我们期望 PWM 信号与 GPIO 同步、即两者之间的固定偏移显然只有一点点抖动。
但是、在该配置中、我们观察到这两个器件随着时间的推移相互移位。
如果我们将 CPU 定时器0 TBPRD 寄存器设置为19999、此移位操作就会消失、这并不能完全实现逻辑关断。 TRM。
我们在帖子顶部的设计假设是否正确? 或者我们是否错过了 TRM 中的某个内容。
谢谢、
克莱蒙特
您好、Cl é ment、
您是否有示波器读数的图像或显示此行为的类似图像?
此致、
Jason Osborn
您好 Jason、
图像不会显示问题、视频会出现问题、但由于安全限制、我要做的事情很复杂。
我的解释中有什么不清楚的地方?
我们基本上看到的是、在顶部指定的配置中、由于计时器和 PWM 周期是倍数、我们期望 PWM 和生成的信号是同步的、但当在一个上触发时、另一个上的信号是移动的。 然而、在定时器周期上的-1为负 (并非根据 TRM 获得所需频率的逻辑)时、这两个都是同步的。
因此、可能是 TBPRD 寄存器的配置问题、但我们按照 TRM 指令操作、不明白为什么我们需要在定时器 TBPRD 中放置一个减号、以便信号彼此同步。
克莱蒙特
您好!
您能告诉我 PWM 中断是如何触发的? 即事件触发器设置、尤其是 ETSEL[INTSEL]寄存器。
忽略此帖子、请参阅下面的。
此致、
Jason Osborn
实际上、抱歉-我认为我有更好的方法来解释我认为引起混淆的原因。
本质上、CPU 定时器可以被视为一个简单的递增计数定时器-它们从0递增到目标值、然后复位回0。 请看26.4.3部分中的图26-6计算器件 TRM 的 PWM 周期和频率:
如果我们想象这里的 ePWM 递增计数器是 CPU 计时器、那么让我们将其与递增-递减计数器进行比较、然后让我们看看每个计时器的 TPWM 计算结果。 这是否会使您看到的内容更加清晰?
此致、
Jason Osborn
您好 Jason、
是的、这确实更清楚了、这是我们从调查中想到的、但我们希望确保。
无论如何、对于计时器 Ttimer =(PRD + 1) x Tsysclk 没有任何说明(不在 TRM 中、也不在 driverlib CPUTimer_setPeriod 函数文档中)、因此这可能是值得说明的事情。
此致、
克莱蒙特