C51單片機數字時鐘系統原理解析_第1頁
C51單片機數字時鐘系統原理解析_第2頁
C51單片機數字時鐘系統原理解析_第3頁
C51單片機數字時鐘系統原理解析_第4頁
C51單片機數字時鐘系統原理解析_第5頁
已閱讀5頁,還剩2頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

C51單片機數字時鐘系統原理解析有關的硬件原理圖:c程序://溫馨提示:/*程序還沒有調試完成,實際電路板調節時間時時-分-秒都會有閃爍現象,其實我是不知道的,why,也求解釋#include//包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義#include//與_nop_有關sbitduan=P2^2;//定義鎖存使能端口段鎖存sbitwei=P2^3;//位鎖存sbitkey1=P1^1;sbitkey2=P1^2;sbitkey3=P1^3;sbitkey4=P1^4;unsignedcharcodeduanma[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//顯示段碼值0~9unsignedcharcodeweima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分別對應相應的數碼管點亮,即位碼unsignedchartemp[8];//存儲顯示值的全局變量charhour;minute;second,num,t,i;//函數聲明voiddelay(unsignedintt);voidinitial();voiddelay20ms();voidkeyscan();voidcaifen();voiddisplay();/*------------------------------------------------主函數------------------------------------------------*/voidmain(){initial();//調用初始化程序while(1){keyscan();//調用鍵盤掃描caifen();//調用拆分以時-分-秒的形式display();//調用時間的顯示程序}}//初始化程序voidinitial(){TMOD=0x01;//設置T1工作于定時方式1(有16位計數)TH0=(65536-2000)/256;//定時器1賦初值,是TH1而不是TH0噢(若要設置是定時器0的話,把1改為0,下同);計數了2000次,即為2msTL0=(65536-2000)%256;EA=1;//開中斷TR0=1;//開定時器0ET0=1;//開啟定時器中斷0hour=23;//賦初值minute=59;//賦初值second=57;//賦初值}//中斷服務程序voidtime0(void)interrupt1{TH0=(65536-2000)/256;//重新賦值TL0=(65536-2000)%256;num++;//中斷500次后即2msX500=1000MS=1S,(一般可計數久點如50000ms,中斷20次,這樣誤差就不會太大)if(num==500){num=0;second++;if(second==60)//秒為60則miao置0,minute加一{second=0;minute++;if(minute==60)//分為60則minute置0,hour加一{minute=0;hour++;if(hour==24)//小時為24則hour置0{hour=0;}}}}}//鍵盤掃描程序,可執行時分的加減voidkeyscan(){if(key1==0){delay20ms();//延時20ms,去抖動while(key1==0);//等待(上升沿則執行下一行,TRO=0)TR0=0;//關定時器0t++;//t++與調節時分秒有關}switch(t)//選擇調節時分秒有關,與上面的t相關聯{case1:if(key2==0){delay20ms();if(key2==0){while(key2==0);hour++;if(hour==24){hour=0;}}}if(key3==0){delay20ms();if(key3==0){while(key3==0);hour--;if(hour==-1)//因為hour是char型,所以可以有負數,若是unsignedchar則不允許,下面的minute同理{hour=23;}}}break;case2:if(key2==0){delay20

溫馨提示

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

評論

0/150

提交評論