新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)輸出矩陣波實(shí)驗(yàn)

單片機(jī)輸出矩陣波實(shí)驗(yàn)

作者: 時(shí)間:2012-11-06 來(lái)源:網(wǎng)絡(luò) 收藏
這個(gè)程序的本意是輸出一個(gè),但是如果用實(shí)驗(yàn)板來(lái)運(yùn)行的話就會(huì)發(fā)現(xiàn)似乎P1^1(即為第二個(gè)一直在發(fā)光),其實(shí)并不是程序有問(wèn)題使得它一直在亮,而使通段的頻率對(duì)人眼睛來(lái)說(shuō)太快了,根據(jù)視覺(jué)暫留,所以會(huì)覺(jué)得led一直在亮。我開(kāi)始也是有此懷疑的,可以在程序里面修改使得通段的頻率變低,就可以看出來(lái)其實(shí)是一直在工作的。在注釋符號(hào)后面的程序就是更改后的;

#includereg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit D1=P1^1; //uint i=0;
void main()
{
TMOD=0x01;
TH0=(65536-50000)%256;
TL0=(65536-5000)/256;
EA=1;

ET0=1;
TR0=1;
while(1)
{
while(TF0==0) //if(TF0==0) i++;
{ //if(i==10)
D1=~D1; //{ D1=~D1; }
}
}
}
void timer0() interrupt 1
{
TH0=(65536-5000)/256;
TL0=(65536-50000)%256;
}


更改后的程序變成了但計(jì)時(shí)器溢出十次,中斷運(yùn)行,即二十個(gè)溢出為此的一個(gè)周期。



關(guān)鍵詞: 單片機(jī) 矩陣波 led管

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉