久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4928|回復: 3
收起左側

剛看到的一個程序,有些地方不明白,請大蝦指點迷津

[復制鏈接]
ID:26634 發表于 2010-10-31 22:34 | 顯示全部樓層 |閱讀模式
 

51單片機脈沖寬度調制(PWM)控制LED燈亮度

程序如下:

 

#include "AT89X51.H"  //模擬PWM輸出控制燈的10個亮度級
unsigned int scale;   //占空比控制變量
void main(void)       // 主程序
{ unsigned int n;    //延時循環變量
TMOD=0x02;  //定時器0,工作模式2(0000,0010),8位定時模式
TH0=0x06;   //寫入預置初值6到定時器0,使250微秒溢出一次(12MHz)
TL0=0x06;   //寫入預置值
TR0=1;    //啟動定時器
ET0=1;    //允許定時器0中斷
EA=1;     //允許總中斷
while(1)   //無限循環,實際應用中,這里是做主要工作
{ for(n=0;n<50000;n++);  //每過一段時間,就自動加一個檔次的亮度
scale++;    //占空比控制變量scale加1
if(scale==10)  scale=0;  //如果scale=10,使scale為0
} }
timer0() interrupt 1    //定時器0中斷服務程序
{ static  unsigned int   tt ;   //tt用來保存當前時間在一秒中的比例位置
tt++;    //每250微秒增加1
if(tt==10)   //2.5毫秒的時鐘周期
{ tt=0;  //使tt=0,開始新的PWM周期
P2_0=0;  //使LED燈亮
}
if(scale==tt)  //按照當前占空比切換輸出為高電平
P2_0=1;        //使LED燈滅

/*程序中從tt=0開始到scale為低電平,從scale開始到tt=10為高電平,由于scale是變量,所以改變scale就可以改變占空比。*/

 

 

 

我直接將該程序寫入單片機里面,單片機上指示燈的從亮→閃爍→滅,如此不斷循環,如果我想讓單片機上的指示燈到最后一直保持在20%的亮度,而不是滅,此程序該如何修改?請高手指點迷津,小弟感激不盡!!!

回復

使用道具 舉報

ID:26634 發表于 2010-11-10 14:52 | 顯示全部樓層

沒人回貼,自己給自己頂一個吧

回復

使用道具 舉報

ID:26754 發表于 2010-11-11 10:12 | 顯示全部樓層

其實你是要一個LED一直亮著且保持著20%的亮度!再程序中讓它一直開著好了啊!亮度問題其實通過硬件實現的!

回復

使用道具 舉報

ID:26754 發表于 2010-11-11 10:17 | 顯示全部樓層

#include "AT89X51.H" 

void main(void)   

 {P2_0=0;

   } 

就這樣應該就好了!

亮度是改變電阻的大小實現的!

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: www久久久久| 国产午夜在线观看 | 日本黄色a级片 | 欧美黄色片在线观看 | 免费视频国产 | 国产麻豆精品视频 | 麻豆精品一区二区 | 69福利视频 | 日韩一级免费视频 | 国产suv精品一区 | 成人一区在线观看 | 国产精品免费一区二区三区 | 日韩午夜片 | 日韩欧美不卡 | 成年在线观看 | 在线一区视频 | 午夜免费小视频 | 黄色小视频在线免费观看 | 免费看成人片 | 神马午夜久久 | 特大黑人巨交吊性xxxx视频 | 小日子的在线观看免费第8集 | 欧美日韩成人一区二区三区 | 久久狠狠干 | 一区二区免费在线观看 | 日本精品视频 | 国产一级二级 | 黄色成人在线 | 国产精品偷拍 | 日日干夜夜骑 | 中文在线免费观看 | 日韩成人在线观看视频 | 99久久精品国产一区二区成人 | 免费在线观看黄 | 伊人久久久久久久久久 | 91视频一区二区三区 | 精品久久久久久久久久久久久久久久 | 欧美激情一区二区 | 曰韩av | 国产精品一区二区免费 | 激情导航|