基于單片機(jī)的數(shù)碼管時(shí)鐘_第1頁(yè)
基于單片機(jī)的數(shù)碼管時(shí)鐘_第2頁(yè)
基于單片機(jī)的數(shù)碼管時(shí)鐘_第3頁(yè)
基于單片機(jī)的數(shù)碼管時(shí)鐘_第4頁(yè)
基于單片機(jī)的數(shù)碼管時(shí)鐘_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精品word基于51單片機(jī)的數(shù)碼管時(shí)鐘(帶鬧鐘調(diào)時(shí)秒表)16 / 16/* * * * * * * * * * * *基于51單片機(jī)的數(shù)碼管時(shí)鐘程序 * * * * * * * * * * * * * */#include<stdio.h>#define uint unsigned int #define uchar unsigned charsbit dula=P26;/申明u1鎖存器的鎖存端sbit wela=P27;/申明u2鎖存器的鎖存端sbit key1=P30; /功能鍵sbit key2=P31;/增大鍵sbit key3=P32;/減小鍵sbit key4=P33;

2、/秒表查看鍵sbit beep=P23;/蜂鳴端uchar num,num1,num2,numm;uchar numf,num,nums,num;uchar s,s1,f,f1,m,m1;uchar ns,ns1,nf,nf1;uchar numns,numnf;uchar dingshi;void display(uchar m,uchar m1,ucharf,uchar f1,uchar s,uchar s1);void display1(uchar nf,uchar nf1,uchar ns,uchar ns1);void key();void key1();void alram();v

3、oid di();void delayms(xms);void T0_time() interrupt 1;void miaobiao();uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x77,0x7c,0x39,0x5e,0x79,0x71;/*主函數(shù)void main()*/int main() TMOD=0X01;TH0=(65536-46080)/256;TL0=(65536-46080)%256;EA=1;ET0=1;TR0=1;nums=12;numf=0;num2=0;num=0;while(1) if(dingshi=0) ke

4、yscan(); display(m,m1,f,f1,s,s1); alarm(); else miaobiao(); keyscan1(); display1(nf,nf1,ns,ns1); return 0;/*蜂鳴器函數(shù) di()*/void di() beep=0; delayms(100); beep=1;/*按鍵調(diào)時(shí)函數(shù)key()*/void keyscan() if(key1=0) delayms(10);if(key1=0) nums+;if(nums=24);nums=0;while(!key1);di();display(m,m1,f,f1,s,s1); if(key2=0

5、) delayms(10);if(key2=0) numf+;if(numf=24);numf=0;while(!key2);di();display(m,m1,f,f1,s,s1); if(key3=0) delayms(10);if(key3=0)dingshi=dingshi; while(!key1);di();display(m,m1,f,f1,s,s1); /*按鍵設(shè)定鬧鐘函數(shù)keyscan1();*/void keyscan1() if(key1=0) delayms(10);if(key1=0) numns+;if(numns=24);numns=0;while(!key1);

6、di();display1(nf,nf1,ns,ns1); if(key2=0) delayms(10);if(key2=0) numnf+;if(numnf=24);numnf=0;while(!key2);di();display1(nf,nf1,ns,ns1); if(key3=0) delayms(10);if(key3=0)dingshi=0; while(!key1);di();display1(nf,nf1,ns,ns1); /*鬧鐘函數(shù)alram()*/void alram() if(nums=numns)&&(numnf=numf) beep=0; /*秒表函

7、數(shù)miaobiao()*/void miaobiao() if(key4=0) delayms(100);if(key4=0) while(!key4); di(); displaym(uchar m,uchar m1); /*正常顯示函數(shù)display()*/void display(uchar m,uchar m1,ucharf,uchar f1,uchar s,uchar s1) dula=1;P0=tablem1/秒位第1位dula=0;PO=0xff;/ 送入位選信號(hào)前關(guān)閉全部顯示,防止翻開位選鎖存時(shí)wela=1;P0=0xef;wela=0;delayms(10);dula=1;P

8、0=tablem; /秒第2位dula=0;P0=0xff;wela=1;P0=0xdf;wela=0;delayms(100)dula=1;P0=tablef1; /分第1位 dula=0;P0=0xff;wela=1;P0=0xfb;wela=0;delayms(100)dula=1;P0=tablef; /分第2位 dula=0;P0=0xff;wela=1;P0=0xf7;wela=0;delayms(10) dula=1;P0=tables1; /時(shí)第1位dula=0;P0=0xff;wela=1;P0=0xfe;wela=0;delayms(100) dula=1;P0=table

9、s; /時(shí)第2位 dula=0;P0=0xff;wela=1;P0=0xfd;wela=0;delayms(10)/* 調(diào)時(shí)鬧鐘顯示函數(shù)display1()*/void display1(uchar nf,uchar nf1,uchar ns,uchar ns1) nf1=numnf/10; nf=numnf%10; ns1=nums/10; ns=nums%10; dula=1; P0=tablenf1;/分第1位 dula=0; P0=0xff; wela=1; P0=0xfb;/待改參數(shù) wela=0; delayms(10); dula=1; P0=tablenf;/分第2位 dula

10、=0; P0=0xff; wela=1; P0=0xf7;/待改參數(shù) wela=0; delayms(10); dula=1; P0=tablens1;/時(shí)第1位 dula=0; P0=0xff; wela=1; P0=0xfe;/待改參數(shù) wela=0; delayms(10); dula=1; P0=tablens;/時(shí)第2位 dula=0; P0=0xfd; wela=1; P0=0xff;/待改參數(shù) wela=0; delayms(10);/* 秒表顯示函數(shù)displaym()*/void displaym(uchar m,uchar m1) dula=1; P0=tablem1;/秒

11、位第一位 dula=0; P0=0xff; wela=1; P0=0Xbf; wela=0; delayms(10); dula=1; P0=tablem; dula=0; P0=0xff; wela=1; P0=0X7f; wela=0; delayms(10);/* 中斷效勞函數(shù) void T0_time() interrupt 1*/void T0_time() interrupt 1 TH0=(65536-45872)/256; /46080 TL0=(65536-45872)%256; num2+; if(num2=20) num+; num2=0; m=num%10; m1=num/10; f=numf%10; f1=numf/10; s=nums

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論