標(biāo)題:
單片機(jī)C語(yǔ)言使用數(shù)組點(diǎn)亮LED
[打印本頁(yè)]
作者:
51黑ele
時(shí)間:
2016-4-28 03:12
標(biāo)題:
單片機(jī)C語(yǔ)言使用數(shù)組點(diǎn)亮LED
P0口接了八個(gè)led,采用共陽(yáng)的接法,通過(guò)以下程序可以讓這八個(gè)led按要求點(diǎn)亮。單片機(jī)中經(jīng)常會(huì)使用到數(shù)組,尤其以后的數(shù)碼管和led點(diǎn)陣,所有這部分學(xué)習(xí)放在前面。
led采用共陽(yáng)的接法的意思就是,led的兩個(gè)引腳中,陽(yáng)極通過(guò)一個(gè)限流電阻接在5V電源上,陰極接在可以控制的IO口上,這樣八個(gè)led都通過(guò)這種方式接,接好后就如下圖:
#include <AT89X51.H>
//定義數(shù)組
unsigned char code table[]={0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f,
0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f,
0x7f,0xbf,0xdf,0xef,
0xf7,0xfb,0xfd,0xfe,
0x7f,0xbf,0xdf,0xef,
0xf7,0xfb,0xfd,0xfe,
0x00,0xff,0x00,0xff,
0x01};
//定義無(wú)符號(hào)的變量i
unsigned char i;
//定義延時(shí)函數(shù)的聲明及實(shí)現(xiàn)
void delay(void)
{
unsigned char m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
void main(void)
{
while(1)
{
//判斷是否為數(shù)組最后一個(gè)元素,如不是,則繼續(xù)執(zhí)行
if(table[i]!=0x01)
{
//把第i個(gè)元素賦給p2口
P2=table[i];
//循環(huán)變量i自加
i++;
//調(diào)用延時(shí)函數(shù)
delay();
}
else
{
i=0;
}
}
}
復(fù)制代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1