新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)中斷定時(shí)程序的應(yīng)用

單片機(jī)中斷定時(shí)程序的應(yīng)用

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
學(xué)習(xí)進(jìn)度真的有點(diǎn)慢,我覺(jué)得也許我不應(yīng)該顧這顧那了,學(xué)習(xí)東西不能太“貪”,既學(xué)這方面的又學(xué)那方面的,學(xué)知識(shí)更要靠自己,自己為主,別人為輔。不能既學(xué)中斷,定時(shí),計(jì)數(shù),又想著學(xué)數(shù)碼管,按鍵的控制,我想這樣只能讓我魚(yú)和熊掌兼失也。所以,李俊軒。好好的給自己定一個(gè)目標(biāo),然后努力吧,不要再撿了芝麻又丟了瓜了。

這是最近一直沒(méi)有寫(xiě)日志的原因吧,最近學(xué)習(xí)的進(jìn)度感覺(jué)特別慢。哎。又是浪費(fèi)了一些天了,罪過(guò)罪過(guò)。

本文引用地址:http://m.butianyuan.cn/article/201611/323752.htm

昨天楊老師給我布置的作業(yè)我想了好久都沒(méi)有做出來(lái),哎,失敗,特別是那句更何況你是一個(gè)大學(xué)生,也許吧,我都沒(méi)有做到一個(gè)學(xué)生的樣,接下來(lái)的日子要好好努力了。至于13至27的顯示,我想我會(huì)完成的,再給自己點(diǎn)時(shí)間,在51hei看N次這課中斷http://www.51hei.com/mcuteach/234.html后今天終于真正的把定時(shí)和中斷應(yīng)用和利用好了,做了幾個(gè)程序,都成功了,呵呵,下面把其中一個(gè)程序拿出來(lái)作點(diǎn)留念吧。畢竟學(xué)這方面的知識(shí)浪費(fèi)了自己不少時(shí)間,也許是自己努力還不夠吧,現(xiàn)在想來(lái),定時(shí)中斷這些其實(shí)也挺簡(jiǎn)單的,只是之前聽(tīng)我們老師說(shuō),定時(shí)和中斷會(huì)了,你的單片機(jī)就上了一個(gè)臺(tái)階了。所以自己把定時(shí)中斷看得太高,太難學(xué)了。相信一句話:“一步一個(gè)腳印,堅(jiān)持必有奇跡”,但更要把一些困難看得低一點(diǎn),只要平時(shí)多思考,我相信我可以學(xué)好單片機(jī)的,雖然一個(gè)13至27現(xiàn)在把我難倒了,但我相信隨著我知識(shí)學(xué)習(xí)的深入,這不是什么大問(wèn)題的。努力。

程序:#include
int j=0;int i=0,a=0;
unsigned char number[10]={
0xc0,
0xf9,
0xa4,
0xb0,
0x99,
0x92,
0x82,
0xf8,
0x80,
0x90
};
void delay()
{
int x,y;
for(x=1001;x>0;x--)
for(y=120;y>0;y--);
}
void main()
{
TMOD |= 0x10;
TMOD &= 0xdf;
TH1 = (65536-50000)/256;
TL1 = (65536-50000)%256;
ET1 = 1;
EA = 1;
TR1 = 1;
while(1)
{
P2 =~(1<delay();
if(j==8)
j=0;
}
}
void timer0() interrupt 3
{
TH1 = (65536-50000)/256;
TL1 = (65536-50000)%256;

a++;
if (a==40)
{
a = 0;

P0 = number[i];
i++;
if(i==10)
i=0;

}
}


程序是用P2口控制LED燈以1S速度做流水燈功能的,P0口是用定時(shí)中斷控制數(shù)碼管加1的。



評(píng)論


技術(shù)專區(qū)

關(guān)閉