430 定时器 TA 的 PWM 输出
定时器是单片机常用的其本设备,用来产生精确计时或是其他功能;msp430 的定时器不
仅可以完成精确定时,还能产生 PWM 波形输出,和捕获时刻值(上升沿或是下降沿到来的
时候)。这里完成一个比较通用的 PWM 波形产生程序。
硬件介绍:
MSP430 系列单片机的 TimerA 结构复杂,功能强大,适合应用于工业控制,如数字化
电机控制,电表和手持式仪表的理想配置。它给开发人员提供了较多灵活的选择余地。
当 PWM 不需要修改占空比和时间时,TimerA 能自动输出 PWM,而不需利用中断维
持 PWM 输出。
MSP430F16x 和 MSP430F14x 单片机内部均含有两个定时器,TA 和 TB;TA 有三个
模块,CCR0-CCR2;TB 含有 CCR0-CCR67 个模块;其中 CCR0 模块不能完整的输出
PWM 波形(只有三种输出模式可用);TA 可以输出完整的 2 路 PWM 波形;TB 可以输出
6 路完整的 PWM 波形。
定时器的 PWM 输出有有 8 种模式:
输出模式 0 输出模式:输出信号 OUTx 由每个捕获/比较模块的控制寄存器 CCTLx 中
的 OUTx 位定义,并在写入该寄存器后立即更新。最终位 OUTx 直通。
输出模式 1 置位模式:输出信号在 TAR 等于 CCRx 时置位,并保持置位到定时器复位
或选择另一种输出模式为止。
输出模式 2 PWM 翻转/复位模式:输出在 TAR 的值等于 CCRx 时翻转,当 TAR 的值等
于 CCR0 时复位。
输出模式 3 PWM 置位/复位模式:输出在 TAR 的值等于 CCRx 时置位,当 TAR 的值等
于 CCR0 时复位。
输出模式 4 翻转模式:输出电平在 TAR 的值等于 CCRx 时翻转,输出周期是定时器周
期的 2 倍。
输出模式 5 复位模式:输出在 TAR 的值等于 CCRx 时复位,并保持低电平直到选择另一
种输出模式。
输出模式 6PWM 翻转/置位模式:输出电平在 TAR 的值等于 CCRx 时翻转,当 TAR 值
等于 CCR0 时置位。
输出模式 7PWM 复位/置位模式:输出电平在 TAR 的值等于 CCRx 时复位,当 TAR 的
值等于 CCR0 时置位。
下图是增计数模式下的输出波形(本程序使用的是增模式 3 和 7):