當前位置:編程學習大全網 - 編程語言 - 找課程設計程序與單片機設計

找課程設計程序與單片機設計

//12M晶體振蕩器。4位* * *陰極數碼管,P0段代碼,P2.1~P2.3位控制。

//顯示00.0~99.9

//2011 12 12 E:\ DPJ _ C \ 00.00 \ 00.0 . C

# include & ltreg 51 . h & gt;

#定義uchar無符號字符

//sbit p20=p2^0;

sbit p21=p2^1;

sbit p22=p2^2;

sbit p23=p2^3;

sbit p07=p0^7;

sbit ks=p1^0;//開始

sbit kr=p1^1;//重置

烏恰時間,xs,葛,石,白,錢;

uchar代碼頁簽[]= {

0x3F,/*0*/

0x06,/*1*/

0x5B,/*2*/

0x4F,/*3*/

0x66,/*4*/

0x6D,/*5*/

0x7D,/*6*/

0x07,/*7*/

0x7F,/*8*/

0x6F,/*9*/

};

void delay _ ms(unsigned int ms)//1毫秒延遲

{

uchar a;

當(毫秒)

for(a = 123;a & gt0;a-);

}

void顯示();

void t 0 intinit()////定時器T0初始化

{

TMOD = 0x 01;

TH0 =(65536-10000)/256;//10ms計時

TL0 =(65536-10000)% 256;

EA = 1;

ET0 = 1;

}

void main()

{

t 0 intinit();

while(1)

{

顯示();

而(!KS) //開始鍵

{

顯示();

如果(KS)

TR0 = 1;

}

而(!KR) //清除鍵

{

顯示();

如果(KR)

TR0 = 0;

錢= 0;

白= 0;

Shi = 0;

ge = 0;

}

if(白==10)

{

白= 0;

錢++;

}

if(錢==10)

{

錢= 0;

TR0 = 0;

}

}

}

空顯示( )

{

P23 = 0;

P0 = tab[Shi];

delay _ ms(1);

P23 = 1;

p22 = 0;

P0 = tab[Bai];

p07 = 1;

delay _ ms(1);

p22 = 1;

p 21 = 0;

P0 = tab[Qian];

delay _ ms(1);

p 21 = 1;

//P20 = 0;

P0 = tab[Qian];

delay _ ms(1);

//P20 = 1;

}

Void T0int()中斷1 //定時器T0中斷模式1

{

TH0 =(65536-10000)/256;//重新安裝10ms定時常數。

TL0 =(65536-10000)% 256;

ge++;

if(ge==10)

{

ge = 0;

石++;

}

if(shi==10)

{

Shi = 0;

白++;

}

}

  • 上一篇:適合初中學歷的30種技術
  • 下一篇:童畫作文怎麽寫三年級
  • copyright 2024編程學習大全網