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.
如果在没有警告的情况下突然出现 通过 CCP0事件中断加载的较低值匹配计数、 则会阻塞通过 GPTM 计数架构检索递减计数匹配值寄存器。
当这种情况发生时、它会突然将 PWM 占空比从50%变为100%、并且无法再进行匹配计数负载。 以 不同的方式双清零中断处理程序源或设置 CCP0中断事件边沿模式对停止干扰 GPTM 匹 配值寄存器没有影响。
值得注意的 是、这个问题似乎出现在相对 ADC1温度传感器勘误表#09中、这种情况下 NHS 编码的任何级别都无法停止。 MCU 温度的较低2位值 变为非常高的32位 随机数、然后返回到较低的十进制值。 因此、如果(>)用于检测 故障温度值 、但(=)在发生 ADC #09时 WA 似乎停止了误跳闸、则可能会错误地发生 MCU 温度警报。
不确定您要传达的内容、但如果周期小于占空比、则您观察到的内容将是预期的。
您可能想重申您的问题吗?
[报价用户="Charles Tsaa"]如果您想更改匹配值,我建议您根据 PWM 边沿(即上升或下降或两者)中断进行更改。
这就是 GPTM PWM CCP0事件边沿中断 被测试的方式 (POS/NEG/两者) 、然而不管 INT 优先级的设置如何、所有边沿类型在不同的时间锁定匹配寄存器。 根据设计、匹配值应与 GPTM 的加载方式同步。
将 CCP0中断处理 程序代码移至另一个 GPTM SS1 INT 处理程序是 WA 或修复 了 GPTM 匹配计数加载 时序问题。 然而 、GPTM 匹配计数相对于 SS1样本仍在跳跃、可能在特定的 AHB 流量级别。
随机 ADC0采样 计数跳转会导致 快速匹配计数保持不变 、但仅当 PWM 模块驱动 PWM 输出控制块时。 更改 ADC1 SS1的 INT 优先级、 NHS 保持时间或 GPTM INT 优先级 不会阻止该跳转发生。 SS1 中断阵列值是静态的、不应 丢弃采样保持、但似乎这种情况 仅发生 在 ADC1 SS1采样和 MCU 温度 SS3上。 所有内容都是 两 个 LM94022读数的 SS1样本、即使 通过静态 热源测试、直到 PWM0外设 优先处理 AHB 和 NVIC。 然后 、LM94022采样 值随机跳过10*C 或更高、因此风扇听起来像是旋转 电机周期引擎变室的油门。
将打开有关该问题的另一个帖子。
你先生-开一个(非常)硬的交易。 记者将与史密森尼的“鬼翼”联系——正如您所指...