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.

[参考译文] MSP430G2333:我能否从这个芯片中获得两个独立的 PWM 输出和一个定时器?

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1042941/msp430g2333-can-i-get-two-independent-pwm-outputs-plus-a-timer-form-this-chip

器件型号:MSP430G2333

你(们)好

我对 MSP430比较陌生、但到目前为止、我已经在这个芯片中对状态机和大量功能进行了编程、没有遇到任何问题。

我使用 Timer0通过中断生成1ms 计时器节拍、该中断用于 main ()中的大量计时事件-没有问题、运行良好。

现在这个项目中唯一的事情是生成两个 PWM -一个连接到端口 P2.0、另一个连接到端口 P2.1。 它们都可以具有1ms 的周期。 CPU 时钟为1MHz。

我只需要独立改变每个输出上的占空比。 阅读数据表、我认为这是可能的。

如何在不混乱 Timer0的情况下生成两个 PWM 输出? 我能否使用第二个计时器生成两个独立的 PWM 占空比? 如果是、应如何设置寄存器? 非常感谢您的任何建议!

此致、

Dave

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

    一般而言、只要周期相同、您就可以执行此操作。 保持 CCR0中断并适当设置 CCR1和 CCR2。 您可以独立为 CCR1和 CCR2设置中断、但简单 PWM 通常不需要中断。

    您将注意到我说的是 CCR1 (TA1.1=P2.1)和 CCR2 (TA1.2=P2.4)、而不是 CCR0 (TA1.0=P2.0)。 CCR0对于"实际"PWM 不有用、因为导通和关断触发器是相同的。 [参考用户指南(SLAU144J)第12.2.5.1节]

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

    Bruce、您好、非常感谢您的观看。 我认为这会引导我朝着正确的方向前进。 我将在接下来的几天内试一下。 如果一切都好,我得给你一杯啤酒!

    此致、

    David

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

    您的帖子帮助我解决了问题。 由于我的 PCBA 仅处于原型阶段、因此我可以将 P2.0与 P2.4互换(在0.2mm 轨道上进行一些微手术)。 好的! 一切都运行得很好。 我使用 Timer0计时1ms 计时器节拍、使用 TA1CCR1和 TA1CCR2计时独立 PWM。 无论如何都需要重新旋转、因此可以轻松地交换轨道。

    在我执行此操作后、代码的其余部分动态改变占空比是一个重要问题。 项目的固件部分已完成。 用户指南 SLAU144J 非常有用。 谢谢、Bruce。