基于51單片機的實時時鐘設計(8255擴展io口)_第1頁
基于51單片機的實時時鐘設計(8255擴展io口)_第2頁
基于51單片機的實時時鐘設計(8255擴展io口)_第3頁
基于51單片機的實時時鐘設計(8255擴展io口)_第4頁
基于51單片機的實時時鐘設計(8255擴展io口)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄摘要1第一章51單片機簡介21.151系列單片機每部結構21.251單片機的封裝及引腳2第二章實時時鐘的設計方案42.1單片機最先系統(tǒng)42.28255a模塊42.3數(shù)碼管顯示模塊52.4時間調(diào)節(jié)模塊62.5整點報時7第三章實時時鐘的程序設計83.1時間調(diào)節(jié)程序流程圖83.2主程序流程圖9第四章小結10參考文獻11附錄112附錄21318摘要單片計算機即單片微型計算機。由ram ,rom,cpu構成,定時,計數(shù)和多種接口于一體的微控制器。它體積小,成本低,功能強,廣泛應用于智能產(chǎn)業(yè)和工業(yè)自動化上。而51系列單片機是各單片機中最為典型和最有代表性的一種。通過本子課程設計掌握單片機的基本原理,加

2、深對課堂知識的理解,從而達到學習、設計、開發(fā)單片機軟硬的能力。 本設計主要設計了一個基于at89c52單片機的電子時鐘,由定時器定時并在數(shù)碼管上顯示相應的時間,通過中斷和按鍵掃描實現(xiàn)對時間的停止、啟動和設置調(diào)整。應用proteus軟件實現(xiàn)了單片機電子時鐘系統(tǒng)的設計與仿真。該方法仿真效果真實、準確,節(jié)省了硬件資源。關鍵字:單片機;子時鐘;鍵盤控制。第一章 51單片機簡介單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發(fā)提供了便利條件。同時,學習使用單片機是了解計算機原理

3、與結構的最佳選擇。 這種單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統(tǒng)、家用電器等,比方說用來控制路口紅綠燈的亮滅 公交車報站 。各種產(chǎn)品一旦用上了單片機,就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞“智能型”,如智能型洗衣機等。1.1 51系列單片機每部結構51系列單片機中主要有8031、8051、8751三種機型,它們的指令系統(tǒng)和芯片引腳完全兼容,只是片內(nèi)程序存儲器(rom)有所不同,其中8031片內(nèi)沒有rom,8051片內(nèi)有4k的掩膜rom,8751片內(nèi)有4k的紫外線可擦除rom。其主要資源有:8位cpu、片內(nèi)帶震蕩器及時鐘電路、128b片內(nèi)數(shù)據(jù)存儲器、4

4、k片內(nèi)程序存儲器(8031無)、21b特殊功能寄存器、4個8位的io口、一個全雙工串行接口、兩個16位定時器、中斷系統(tǒng)有5個中斷源、111條指令。其內(nèi)部結構如圖1.1所示。圖1.1 單片機內(nèi)部結構1.2 51單片機的封裝及引腳 在封裝上,51單片機有常用的三種封裝:pqfp-44、dip-40和plcc-44。我們學習中最常見的封裝為dip-40型的封裝,其封裝圖如圖1.2所示。該封裝的單片機共有40個引腳,其中可分為端口線電源線和控制線三類。端口線有32條,為4個并行的8為io端口,由于地址或數(shù)據(jù)的傳送,其中p0口為開漏輸出,在作為通用io使用時需要加上上拉電阻。在外部擴展時分時提供系統(tǒng)的數(shù)

5、據(jù)總線和地址總線;p2口可作為通用io接口和外部擴展時的地址總線;p1口只作為通用io口使用;p3口作為通用io口外,還附有第二功能,如表1.1所示。表1.1p3口的位第二功能p3.0rxd(串行口輸入)p3.1txd(串行口輸出)p3.2int0(外部中斷0輸入)p3.3int1(外部中斷1輸入)p3.4t0(定時器/計數(shù)器0的外部輸入)p3.5t1(定時器/計數(shù)器1的外部輸入)p3.6wr(片外數(shù)據(jù)存儲器寫允許)p3.7rd(片外數(shù)據(jù)存儲器讀允許)電源線有兩根:vcc為+5v電源線,gnd為接地。控制線有6根,其中ea為片外存儲器訪問選擇線;psen為片外rom選通線;rst為復位線;xt

6、al1和xtal2為片內(nèi)震蕩電路輸入線;ale為地址鎖存允許線。圖1.2 單片機引腳圖第二章 實時時鐘的設計方案本課設制作的實時時鐘由單片機外擴一片8255a芯片,用8255a的pa口和pb口控制6位8段共陽數(shù)碼管顯示時鐘,并由定時器控制時鐘精準的計時,中斷和按鍵掃描共同完成對時間的初始化、啟停和調(diào)整。整體完成實時時鐘的設計,精準的計時。整體仿真原理圖見附錄1。2.1 單片機最先系統(tǒng)單片機最小系統(tǒng)就是能使單片機工作的最少的器件構成的系統(tǒng)。對于本課設所使用的at89c52來講,其最小系統(tǒng)為at89c52單片機芯片、時鐘電路和復位電路,器仿真原理圖如圖2.1所示。圖2.1單片機最小系統(tǒng)2.2 82

7、55a模塊8255a是一種可編程的i/o接口芯片,可以與mcs-51系統(tǒng)單片機以及外設直接相連,廣泛用作外部并行i/o擴展接口。8255a內(nèi)部由pa、pb、pc三個8位可編程雙向i/o口,a組控制器和b組控制器,數(shù)據(jù)緩沖器及讀寫控制邏輯四部分電路組成。數(shù)據(jù)總線(8條):d0d7,用于傳送cpu和8255a間的數(shù)據(jù)、命令和狀態(tài)字??刂瓶偩€(6條):reset:復位線,高電平有效。/cs:片選線,低電平有效。/rd、/wr:/rd為讀命令線,/wr為寫命令線,皆為低電平有效。a0、a1:地址輸入線:用于選中pa、pb、pc口和控制寄存器中哪一個工作。本次課設中8255a的設計如圖2.2。圖2.2

8、8255a連接圖其中dod7連接在單片機的外擴數(shù)據(jù)總線p0口上,wr和rd分別接在單片機的wr和rd口,reset接在單片機rst上,cs、a1和a0分別接在p2.7、p2.6和p2.5上,從而8255a的a口地址可為0000h,b口地址可為2000h,c口地址可為4000h控制口地址可為6000h。2.3 數(shù)碼管顯示模塊本課設采用8段共陽數(shù)碼管,其中abcdefg七段構成日字形dp段位小數(shù)點位,當陽極那端為高電平時相應的段為低電平則該段點亮,從而顯示不同的數(shù)字和符號。本次利用8255a控制數(shù)碼管,其連接圖如圖2.3所示。圖2.3 數(shù)碼管顯示原理圖2.4 時間調(diào)節(jié)模塊時間調(diào)節(jié)時利用中斷和按鍵掃

9、描來實現(xiàn)的,其連接圖如圖2.4所示。圖2.4 按鍵連接圖其中,定時器啟停有外部中斷0控制,設置時分秒由外部中斷1控制,而調(diào)時間時的加減是由按鍵連接p1.0和p1.1口。2.5 整點報時利用蜂鳴器實現(xiàn)整點報時,仿真原理圖如圖2.5所示。圖2.5 蜂鳴器控制第三章 實時時鐘的程序設計程序設計中主要包括初始化,定時器0的控制,中斷和按鍵掃描,蜂鳴器控制等。程序清單見附錄2。3.1 時間調(diào)節(jié)程序流程圖時間調(diào)節(jié)程序流程圖如圖3.1所示。圖3.1 時間調(diào)節(jié)程序流程圖3.2 主程序流程圖主程序流程圖如圖3.2所示。圖3.2主程序流程圖第四章 小結本次我和本組另外一名同學完成了這次單片機課程設計課題中的實時時

10、鐘設計,通過這次的設計使我認識到本人對單片機方面的知識知道的太少了,對于書本上的很多知識還不能靈活運用,尤其是對程序設計語句的理解和運用,不能夠充分理解每個語句的具體含義,導致編程的程序過于復雜,使得需要的存儲空間增大。損耗了過多的內(nèi)存資源。本次的設計使我從中學到了一些很重要的東西,那就是如何從理論到實踐的轉化,怎樣將我所學到的知識運用到我以后的工作中去。在大學的課堂的學習只是在給我們灌輸專業(yè)知識,而我們應把所學的用到我們現(xiàn)實的生活中去,此次的實時時鐘設計給我奠定了一個實踐基礎,我會在以后的學習、生活中磨練自己,使自己適應于以后的競爭,同時在查找資料的過程中我也學到了許多新的知識,在和同學協(xié)作

11、過程中增進同學間的友誼,使我對團隊精神的積極性和重要性有了更加充分的理解。最后,感謝老師一個學期來對我們的教育,正是由于老師的精彩的課程和對我們嚴格的要求,使得我的課程設計能夠順利的完成,同時在課程設計過程中,我們鞏固和學習了我們的單片機知識。相信這對我以后的課程設計和畢業(yè)設計乃至今后的工作將會有很大的幫助!參考文獻(1) 張齊.單片機原理與嵌入式系統(tǒng)設計 電子工業(yè)出版社(2) 周潤景.protues入門實用教程 機械工業(yè)出版社(3) 任向民.微機接口技術實用教程 清華大學出版社(4) /view/a5a9ceebf8c75fbfc77db2be.ht

12、ml附錄1附錄2#include#include#define pa xbyte0x0000#define pb xbyte0x2000#define pc xbyte0x4000#define cmd xbyte0x6000sbit up=p10;sbit down=p11;sbit fmq=p13;bit flag_tr=0;unsigned char flag_set=0,shi=0,fen=0,miao=0,temp=0,i;unsigned char shu10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;void init()

13、ie=0x87;tmod=0x01;th0=0x4c;tl0=0x00;tcon=0x05;cmd=0x80;void delay(unsigned int m)unsigned char count;while(m!=0)for(count=0;count60)miao=59;if(flag_set=2&up=0)while(up=0);fen+;if(fen=60)fen=0;if(flag_set=2&down=0)while(down=0);fen-;if(fen60)fen=59;if(flag_set=3&up=0)while(up=0);shi+;if(shi=24)shi=0;if(flag_set=3&down=0)while(down=0);shi-;if(shi24)shi=23; if(flag_tr=1)tr0=1;elsetr0=0;if(flag_tr=1&fen=0&miao=0)for(i=0;ishi;i+)display(shi,fen,miao);fmq=0;delay(300);fmq=1;delay(300);while(miao=0);void timer0() interrupt 1ea=0;th0=0x4c;tl0=0x00;flag_set=0;temp

溫馨提示

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

評論

0/150

提交評論