?? rgbled.c
字號(hào):
#include "COMM.h"
#define LED_R TIM4->CCR1
#define LED_G TIM4->CCR3
#define LED_B TIM4->CCR2
//使能RGB LED的輸出
//t:0,關(guān)閉輸出,1,使能輸出
void ENRGB(u8 t)
{
if(t)TIM4->CCER=0X0111; //OC1,2,3 輸出使能
else TIM4->CCER=0X0000; //OC1,2,3 輸出關(guān)閉
}
void RGBLED_Init(void)
{
//此部分需手動(dòng)修改IO口設(shè)置
RCC->APB1ENR|=1<<2; //TIM4時(shí)鐘使能
RCC->APB2ENR|=1<<3; //PB時(shí)鐘使能
GPIOB->CRL&=0X00FFFFFF;//PB6.7輸出
GPIOB->CRL|=0XBB000000;//PB6,7復(fù)用功能輸出
GPIOB->CRH&=0XFFFFFFF8;//PB8輸出
GPIOB->CRH|=0X0000000B;//復(fù)用功能輸出
GPIOB->ODR|=0X07<<6;//PB6,7,8上拉
TIM4->ARR=500;//設(shè)定計(jì)數(shù)器自動(dòng)重裝值 144Khz的輸出頻率
TIM4->PSC=0; //預(yù)分頻器不分頻
TIM4->CCMR1=0X0060;//PWM1模式
//TIM4->CCR1=0X01F4; //50%占空比輸出
//IM4->CCER=0X0001; //OC1 輸出使能
TIM4->CCMR1|=0X6000;//PWM1模式
//TIM4->CCR2=0X0077; //37.5%占空比輸出
//TIM4->CCER|=0X0010; //OC2 輸出使能
TIM4->CCMR2=0X0060;//PWM1模式
//TIM4->CCR3=0X0204; //50%占空比輸出
//TIM4->CCER|=0X0100;//OC3 輸出使能
TIM4->CCMR1|=0X0808;//t1,2預(yù)裝載使能
TIM4->CCMR2|=0X0008;//t3預(yù)裝載使能
TIM4->CR1=0x0080; //ARPE使能
TIM4->CR1|=0x01; //使能定時(shí)器4
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -