MSP430 程序库之定时器TA 的PW M 输出 定时器是单片机常用的其本设备,用来产生精确计时或是其他功能;ms p430 的定时器不仅可以完成精确定时,还能产生PWM 波形输出,和捕获时刻值(上升沿或是下降沿到来的时候)。这里完成一个比较通用的PWM 波形产生程序。 1. 硬件介绍: 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): 计数模式: 增计数模式 捕获/比较寄存器CCR0 用作Timer_A 增计数模式的周期寄存器,因为CCR0为16 位寄存器,所以该模式适用于定时周期小于65 536 的连续计数情况。计数器TAR 可以增计数到 CCR0 的值,当计数值与 CCR0 的值相等(或定时器值大于CCR0 的值)时,定时器复位并从 0 开...