[求助] 关于msp430PWM驱动LED程序问题?

蜗牛snail   2012-1-4 10:58 楼主
/*******************************************************
程序功能:用从P2.3和P2.4输出的PWM波形驱动LED闪烁
          P2.3口输出方波的占空比为75%
          P2.4口输出方波的占空比为25%
-------------------------------------------------------
测试说明:观察LED的亮灭的时间长短
*******************************************************/
#include  
#include  "BoardConfig.h"
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // 关狗
  BoardConfig(0xb0);                        // 关闭数码管和电平转换,打开流水灯
  P2DIR = 0xff;                             // P2端口设置为输出
  P2OUT = 0xff;                             // 关闭其他LED
  P2SEL |= BIT3 + BIT4;                     // P2.3和P2.4连接内部模块
  CCR0 = 4096-1;                            // PWM周期为1S
  CCTL1 = OUTMOD_7;                         // CCR1 reset/set
  CCR1 = 3072;                              // CCR1 PWM duty cycle
  CCTL2 = OUTMOD_7;                         // CCR2 reset/set
  CCR2 = 1024;                              // CCR2 PWM duty cycle
  TACTL = TASSEL_1 + ID_3 + MC_1;           // ACLK/8, up mode

  _BIS_SR(LPM3_bits);                       // Enter LPM3
}
不明白的就是为什么 P2.3, P2.4端口可以,其他端口就不行,其他方面都明白了,我在其他定义里看了,但是都没有找到…… 是否P2.3, P2.4就是F149的PWM输出端……

回复评论 (3)

P2SEL |= BIT3 + BIT4
某些复用端口的特殊功能吗??
点赞  2012-1-4 19:33
那是因为你用的是TA定时器功能,P2.3,P2.4的特殊功能就是TA输出
点赞  2012-1-4 21:50
定时器端口复用,以后的IC这方面会很多
点赞  2012-1-5 10:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复