LPC1700 MCPWM:无死区边沿对齐输出与案例详解

需积分: 35 1 下载量 183 浏览量 更新于2024-08-20 收藏 2.56MB PPT 举报
MCPWM是电机控制PWM(脉宽调制)的一种实现方式,适用于三相交流AC和直流DC电机控制,以及需要通用定时、捕获和比较的其他应用场景。LPC1700系列Cortex-M3微控制器集成了MCPWM功能,提供三个独立通道,支持边沿对齐和中心对齐两种PWM输出模式。 MCPWM的核心结构包括两个输入捕获通道,用于匹配控制和内部计数,以及一个快速中止输入通道,确保系统的安全性。每个通道可以配置成三相AC或DC输出模式,支持带有死区的边沿对齐输出,通过调整边界寄存器(MCLIMx)和匹配寄存器(MCMATx)来控制周期(T)和占空比。例如,为了生成1KHz、占空比为1/6的PWM波形,通道0可以设置MCLIM0为24000(对应1KHz的周期),MCMAT0为4000(6%的占空比)。 MCPWM的波形产生过程涉及控制周期和占空比的计算,以及对MCOA0和MCOB0输出的管理。MCOA0和MCOB0分别代表A相和B相的输出,它们会在单周期内输出一个或两个跳变,具体取决于所选的对齐方式。对于边沿对齐,输出会在周期的边缘切换,而对于中心对齐,则会在周期中心两侧各有一次跳变,形成关于中心对称的两个跳变。 死区特性在电机驱动电路中至关重要,特别是在H桥电机驱动中,通过设定适当的死区时间,可以防止在电机换向过程中功率元件因电流过大而损坏。MCPWM通过软件配置来管理这些死区时间,确保电机控制的平稳和可靠性。 MCPWM的编程配置涉及到寄存器的设置,如写入MCLIMx和MCMATx值,以及初始化输出状态。对于LPC1700系列的特定型号,如写入24000到MCLIM0和5000到MCMAT0,能够实现所需的功能。此外,还需要理解各个引脚的作用,如MCOA0~3、MCOB0~3、MCABORT、MCFB0~3等,以正确连接和配置硬件。 MCPWM在LPC1700系列Cortex-M3微控制器中的高效运用,对于电机控制以及其他需要精确定时和控制的应用具有重要意义。通过深入理解其功能结构和编程方法,开发者可以充分利用这一功能,实现高效的电机控制和通用定时任务。