這個是我自己用的一個PWM控制LED燈的程序
沒有呼吸燈的效果,但是,是有PWM效果的,你參考一下,我手上沒有這個單片機了,沒有辦法驗證你的代碼
PWM端口為P3.3
void stc8g_pwm1_init()//stc8g_pwm初始化
{
CCON=0x00; //先關閉PCA計數器
CMOD=0x80; //pwm時鐘為系統時鐘/12,空閑模式下停止PCA計數
CCAPM1=0x42; //PWM模式,無中斷
CL=0x00; //
CH=0x00; //
PCA_PWM1=0x00; //輸出為8位PWM
CCAP1L=100; //比較值,當CL的值小于CCAP1L時,輸出低電平
CCAP1H=254; //重載值,CCAP1L=CCAP1H
P_SW1=0x00;
CR=1;
}
更改占空比
CCAP1H=64; //75%占空比
CCAP1H=115; //55%占空比
CCAP1H=180; //30%占空比
首先,你要能輸出PWM,這才是最重要的,能輸出PWM了,呼吸燈就相對簡單了,更改幾次占空比,對比一下LED的亮度,就知道能不能輸出PWM了
不需要什么其它工具的
|