設計微控制器與8個發光二極體和4個按鍵相連的proteus**電路,程式設計實現如下功能:
按下k1,8個燈按照一定頻率同時閃爍,頻率自定
按下k2,使某個燈閃爍10次後,轉到下個燈閃爍,從左往右(d1到d8)迴圈不停
按下k3,相鄰的4個led燈為一組,兩組led燈每隔約0.5秒交替發亮一次,周而復始
按下k4,從右往左依次點亮,然後全滅,不斷迴圈
k1按下,八個燈同時閃爍。即p1在0xff與0x00之間交替取值。
k2按下,某個燈閃爍十次,然後從左往右迴圈。p1初始時為0xfe,然後p1在0xfe與0xff之間交替取值十次,即最左邊的燈閃爍十次,然後右移,第二個做同樣的操作,直到第八個燈也閃爍了十次,最後再左移即可。
k3按下,相鄰的4個led為一組,交替發亮。即p1在0xf0與0x0f之間交替取值。
k4按下,從右往左依次點亮,然後全滅,不斷重複。從d8到d1,不斷從1變為0即可。
#include
#include
//led
sbit d1 = p1^0;
sbit d2 = p1^1;
sbit d3 = p1^2;
sbit d4 = p1^3;
sbit d5 = p1^4;
sbit d6 = p1^5;
sbit d7 = p1^6;
sbit d8 = p1^7;
//switch
sbit k1 = p0^0;
sbit k2 = p0^1;
sbit k3 = p0^2;
sbit k4 = p0^3;
//延時
void
delay
(int m,
int n)
}void
main()
} p1 =
0xff
;//按下k2,從d1到d8閃爍10次後轉到下個燈
if(k2 ==0)
led =
_crol_
(led,1)
;}//左移
for(i =
0; i <
7; i++
) led =
_cror_
(led,1)
;}} p1 =
0xff;}
if(k3 ==0)
}if(k4 ==0)}}}
發光二極體和光敏二極體
發光二極體和光敏二極體 sun 403 發光二極體是半導體二極體的一種,可以把電能轉化成光能 常簡寫為led。發光二極體與普通二極體一樣是由乙個pn結組成,也具有單向導電性。當給發光二極體加上正向電壓後,從p區注入到n區的空穴和由n區注入到p區的電子,在pn結附近數微公尺內分別與n區的電子和p區的空...
二極體 發光二極體引數詳解
普通發光二極體的正向飽和壓降為 正向工作電流為 led的特性 1 極限引數的意義 1 允許功耗pm 允許加於led兩端正向直流電壓與流過它的電流之積的最大值。超過此值,led發熱 損壞。2 最大正向直流電流ifm 允許加的最大的正向直流電流。超過此值可損壞二極體。3 最大反向電壓vrm 所允許加的最...
紅外發光二極體
紅外燈發光體是由紅外發光二極體 led 矩陣組合而成。紅外發光二極體是由紅外輻射效率高的材料製成的 pn結,再外加正向偏壓向 pn結注入電流,從而激發 出紅外光。光譜功率分布為中心波長 830nm 950nm 半峰頻寬約 40nm 左右,它是窄帶分布,是普通 ccd黑白攝像機可感受的光譜範圍。其最大...