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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

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

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

11、資料的過程中我也學(xué)到了許多新的知識(shí),在和同學(xué)協(xié)作過程中增進(jìn)同學(xué)間的友誼,使我對(duì)團(tuán)隊(duì)精神的積極性和重要性有了更加充分的理解。最后,感謝老師一個(gè)學(xué)期來對(duì)我們的教育,正是由于老師的精彩的課程和對(duì)我們嚴(yán)格的要求,使得我的課程設(shè)計(jì)能夠順利的完成,同時(shí)在課程設(shè)計(jì)過程中,我們鞏固和學(xué)習(xí)了我們的單片機(jī)知識(shí)。相信這對(duì)我以后的課程設(shè)計(jì)和畢業(yè)設(shè)計(jì)乃至今后的工作將會(huì)有很大的幫助!參考文獻(xiàn)(1) 張齊.單片機(jī)原理與嵌入式系統(tǒng)設(shè)計(jì) 電子工業(yè)出版社(2) 周潤景.protues入門實(shí)用教程 機(jī)械工業(yè)出版社(3) 任向民.微機(jī)接口技術(shù)實(shí)用教程 清華大學(xué)出版社(4) 附錄1附錄2#include<reg52.h>#

12、include<absacc.h>#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()i

13、e=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;count<239;count+)m-;void display(unsigned char shi,unsigned char fen,unsigned char miao)unsigned char shi0,shi1,fen0,fen1,miao0,miao1;shi0=shi/10; shi1=shi%10;fen0=fen/10; fe

14、n1=fen%10;miao0=miao/10; miao1=miao%10;pa=0x80;pb=shushi0;delay(5);pa=0x40;if(flag_set=3&&!flag_tr)pb=shushi1&0x7f;elsepb=shushi1;delay(5);pa=0x20;pb=shufen0;delay(5);pa=0x10;if(flag_set=2&&!flag_tr)pb=shufen1&0x7f;elsepb=shufen1;delay(5);pa=0x08;pb=shumiao0;delay(5);pa=0x04;

15、if(flag_set=1&&!flag_tr)pb=shumiao1&0x7f;elsepb=shumiao1;delay(5);void main()init();while(1) display(shi,fen,miao);if(flag_set)tr0=0;if(flag_set=1&&up=0)while(up=0);miao+;if(miao=60)miao=0;if(flag_set=1&&down=0)while(down=0);miao-;if(miao>60)miao=59;if(flag_set=2&&

16、amp;up=0)while(up=0);fen+;if(fen=60)fen=0;if(flag_set=2&&down=0)while(down=0);fen-;if(fen>60)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(shi>24)shi=23; if(flag_tr=1)tr0=1;elsetr0=0;if(flag_tr=1&&fen=0&&miao=0)for(i=0;i<shi;i+)display(shi,fen,miao);fmq=0;delay(300);fmq=1;delay(300);while(miao=0);void timer0() interrup

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論