當前位置:編程學習大全網 - 編程語言 - 時鐘顯示的分鐘編程

時鐘顯示的分鐘編程

做個好人,給個套路,自己研究。

# include & ltreg52.h & gt

char code duma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x 40 };//0-9數碼管,* * *尹

char code wema[]={0xf0,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf 7 };//芯片選擇,1-8數碼管

char j;

char h_num,m_num,s _ num//分別定義小時、分鐘和秒。

char h_shi,h_ge,m_shi,m_ge,s_shi,s _ ge

sbit fm=p3^4;

無效延遲(字符x)

{

char a,b;

for(a = x;a & gt0;答-)

for(b = 100;b & gt0;b-);

}

void inter_init()

{

EA = 1;//打開主機中斷

ET0 = 1;//在本例中,使用了定時器T0。如果使用T1。ET1=0,TMOD=0x10。

TMOD = 0x 01;//定時器工作模式1

TH0 =(65535-50000)/256;//因為晶振用的是11.0592MHZ .取初始值的時候大概定義為50毫秒的中斷。

TL0 =(65535-50000)% 256;

TR0 = 1;

}

空顯示(char h_shi,h_ge,m_shi,m_ge,s_shi,s_ge)

{

P2 =杜馬[h _ Shi];

p 1 = wema[0];

延遲(8);

P2 =杜馬[h _ ge];

p 1 = wema[1];

延遲(8);

P2 =杜馬[10];

p 1 = wema[2];

延遲(8);

P2 =杜馬[m _ Shi];

p 1 = wema[3];

延遲(8);

P2 =杜馬[m _ ge];

p 1 = wema[4];

延遲(8);

P2 =杜馬[10];

p 1 = wema[5];

延遲(8);

P2 =杜馬[s _ Shi];

p 1 = wema[6];

延遲(8);

P2 =杜馬[s _ ge];

p 1 = wema[7];

延遲(8);

}

void main()

{

inter _ init();

s _ num = 55//初始時間設置。它們是秒、分和小時。

m _ num = 59

h _ num = 10;

while(1)

{

如果(j==20)

{

j = 0;

if(s_num==59)

{

s _ num =-1;

if(m_num==59)

{

m _ num =-1;

if(h_num==24)

h _ num =-1;

h _ num++;

FM = 0;//蜂鳴器會在整點後響起。

延遲(50);

FM = 1;

}

m _ num++;

}

s _ num++;

}

h _ Shi = h _ num/10;

h _ ge = h _ num % 10;

m _ Shi = m _ num/10;

m _ ge = m _ num % 10;

s _ Shi = s _ num/10;

s _ ge = s _ num % 10;

display(h_shi,h_ge,m_shi,m_ge,s_shi,s _ ge);

}

}

Voidtime()中斷1使用1//如果使用t 1,應該是中斷3。

{

TH0 =(65535-50000)/256;//因為晶振用的是11.0592MHZ .取初始值的時候大概定義為50毫秒的中斷。

TL0 =(65535-50000)% 256;

j++;

}

  • 上一篇:學生免費軟件推薦
  • 下一篇:求壹篇plc實習心得
  • copyright 2024編程學習大全網