Quantcast
Channel: 蓝牙论坛 - 最近的话题
Viewing all articles
Browse latest Browse all 7485

CC2541PWM

$
0
0

//PWM初始化
void PWM_init(uint16  arr){
 
    RGB_Callback(&PWM_DateCBs);//函数注册
    P0DIR= BV(3)|BV(4)|BV(5);
 //设置pwm端口为外设端口,非gpio
    P0SEL= BV(3)|BV(4)|BV(5);
    PERCFG = 0x03; //将UART切换到备用位置2,防止占用PWM输出
    T1CTL &= 0;
    T1CC0L = arr%0xFF;
    T1CC0H = arr/0xFF;
    //ch1
    T1CC1L = 200%0xFF;
    T1CC1H = 200/0xFF;
    T1CCTL1 = 0x2C; 
    //ch2
    T1CC2L = 500%0xFF;
    T1CC2H = 500/0xFF;
    T1CCTL2 = 0x2C;
    //ch3
    T1CC3L = 500%0xFF;
    T1CC3H = 500/0xFF;
    T1CCTL3 = 0x2C;
    //star tiner1
//必须设置以下两句,否则定时器不工作, 但是我们这里只用pwm, 因此可以直接用pwm的中断, 不用t1的定时器中断, 因此不用设置
    T1CCTL0 = 0x2C;            // IM = 1, CMP = Clear output on compare; Mode = Compare
    T1CTL   = 0x02;
}

大家帮我看有没有什么问题?


Viewing all articles
Browse latest Browse all 7485

Trending Articles