利用MCS-51芯片及相關芯片設計數(shù)字鐘_第1頁
利用MCS-51芯片及相關芯片設計數(shù)字鐘_第2頁
利用MCS-51芯片及相關芯片設計數(shù)字鐘_第3頁
利用MCS-51芯片及相關芯片設計數(shù)字鐘_第4頁
利用MCS-51芯片及相關芯片設計數(shù)字鐘_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 緒論電子鐘已成為人們日常生活中必不可少的物品,廣泛用于個人、家庭以及車站、影院、辦公室等公共場所,給人們的生活、學習、工作帶來了極大的方便。隨著電子技術的發(fā)展,人們已不再滿足于鐘表原先最簡單的報時,希望出現(xiàn)一些新的功能,諸如日歷的顯示、鬧鐘的非接觸式止鬧、秒表功能、重要日期倒計時顯示等,以帶來更大的方便,而所有這些,又都是以數(shù)字化的電子時鐘為基礎的。因此,研究數(shù)字電子鐘及其擴展應用,有著非?,F(xiàn)實的意義和實用價值。單片機是指將微處理器、一定容量的RAM和ROM以及I/O口、定時器等電路集成在一塊芯片上的完整計算機系統(tǒng)。89C51單片機是一種低功耗、高性能的,它采用CMOS工藝和高密度非易失性

2、存儲器(NURAM)技術,其輸出引腳和指令系統(tǒng)都與MCS-51兼容;片內的Flash ROM允許在系統(tǒng)內改編程序或用常規(guī)的NURAM編程器來編程。因此,89C51是一種功能強、靈活性高,而且價格合理的單片機,可以方便的利用AT89C51定時器和6位7段數(shù)碼管,設計一個電子時鐘。顯示格式位 “XX XX XX”,從左向右分別是:時、分、秒。1.1 設計目的利用MCS-51芯片及相關芯片設計數(shù)字鐘。1.2 設計內容1)硬件設計設計數(shù)字鐘的電路原理圖,用PROTEUS繪制硬件電路。制作實物。2)軟件設計(1)時、分、秒的設置及顯示;(2)畫出程序框圖;(3)調試與分析。用PROTEUS仿真。2 硬件

3、設計2.1 設計的總體思路硬件系統(tǒng)主要由單片機最小應用系統(tǒng)、LED數(shù)碼管顯示模塊、晶振模塊、按鍵模塊等組成。在使用單片機的過程中必定會使用單片機的最小系統(tǒng),由于我購買的單片機內部沒有晶振,所以設計了外接的晶振模塊。鑒于本次課程設計要求制作數(shù)字鐘,所以使用了六位7段數(shù)碼管來顯示“XX XX XX”,從左向右分別是:時、分、秒。除了能上電復位,還設計了用三個按鍵實現(xiàn)時、分、秒的調制,使用方便靈活。2.2 單片機最小系統(tǒng)對51系列單片機來說,單片機+晶振電路+復位電路,便組成了一個最小系統(tǒng)。見圖2.1。圖2.12.3 晶振模塊在AT89C51芯片內部有一個高增益反相放大器,其輸入端為芯片引腳XTAL

4、1(19腳),輸出端為引腳XTAL2(18腳)。而在芯片內部,XTAL1和XTAL2之間跨接晶體振蕩器和微調電容,從而構成一個穩(wěn)定的自激振蕩器。時鐘電路產生的振蕩脈沖經(jīng)過觸發(fā)器進行二分頻之后,才成為單片機的時鐘脈沖信號。見圖2.2。圖2.22.4 按鍵模塊用三個按鍵實現(xiàn)對時分秒的設置,其中一個按鍵實現(xiàn)對時分秒的控制,接P1.4口,另外兩個按鍵接單片機的P1.5和P1.6口實現(xiàn)加一和減一的功能。2.5 LED數(shù)碼管顯示模塊本次課程設計由于要顯示時、分、秒,所以采用廣泛使用的數(shù)碼管動態(tài)顯示接口。動態(tài)驅動是將所有數(shù)碼管的8個顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數(shù)碼管的

5、公共極COM增加位選通控制電各自獨立的I/O線控制,當單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是哪個數(shù)碼管會顯示出字形,取決于單片機對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅動。在輪流顯示過程中,每位數(shù)碼管的點亮時間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應,盡管實際上各位數(shù)碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I

6、/O端口,而且功耗更低。將數(shù)碼管的位選信號接P2口的六個位,段選信號接P0口的八個位。再通過Keil軟件以及51C語言編程實現(xiàn)數(shù)字鐘的功能。本系統(tǒng)利用6位LED數(shù)碼管顯示時間,共陰極結構,當要顯示某個數(shù)字時只要將數(shù)字所對應的引腳送入低電平。2.6 硬件連接圖通過對設計電路的各個模塊的分析,可以用PROTEUS繪制硬件電路。如圖2.3所示。圖2.32.7制作實物(見附錄A)3 軟件設計單片機最主要的功能是通過程序來實現(xiàn)各種功能,有了硬件的描述,再加上軟件的編程,通過不斷的調試與修改程序就能實現(xiàn)本次課程設計的目的。3.1 程序流程圖系統(tǒng)總的流程圖,見圖3.1。圖3.13.2 調試與分析由于在焊接實

7、物之前,我大量查閱了資料,弄明白了此次課程設計任務的基本原理,對原理有了基本的認識后,就開始了焊接工作。雖然焊接花費了我大量的時間,但是在焊好以后上電時,所有的數(shù)碼管都亮,說明焊接連線沒有短路情況。硬件連接好以后就是軟件編程,但是編寫程序中遇到了挺多問題,比如:編寫程序是沒有消除抖動。在同學的幫助下,使得數(shù)碼管能正常實現(xiàn)數(shù)字鐘的功能。3.3 源程序(見附錄B)4 心得與結論本次課程設計以AT89C51為核心部件,實現(xiàn)時間的設置功能。通過六位7段數(shù)碼管顯示可方便地校對時間,利用Keil軟件編程完成時鐘的功能。通過實物的焊接以及軟件的仿真和編寫程序基本完成了數(shù)字電子鐘的功能,盡量做到了硬件電路簡單

8、穩(wěn)定,減小電磁干擾和其它環(huán)境干擾,充分發(fā)揮了軟件編程的優(yōu)點,減小了因器件精度不夠引起的誤差。由于時間有限和本身知識水平的局限,我認為此次設計還有需要改進和提高的地方,例如選用更高精度的元器件,硬件電路更加精確穩(wěn)定等。參考文獻1 楊文龍.單片機原理及應用M.西安電子科技大學出版社,1993.2 李朝青.單片機原理及接口技術M.北京航空航天大學出版社,2003.3 胡漢才.單片機原理及系統(tǒng)設計M.清華大學出版社,2003.4 楊忠煌,黃博俊,李文昌.單芯片8051實務與應用M.中國水利水電出版社,2001.5 王守中,51單片機開發(fā)入門與典型實例M.人民郵電出版社.6 黃文梅.系統(tǒng)分析與仿真:MA

9、TLAB語言及應用M.國防科技大學出版社,1999.7 閻石.數(shù)字電子技術(第五版)M.北京高等教育出版社,2006.8 蔡明文,馮先成.單片機課程設計M.華中科技大學出版社,2007.9 陳明螢.8051單片機課程設計實訓材料M.清華大學出版社,2004.10 李可為.數(shù)字鐘電路及應用M.電子工業(yè)出版社,1996.11 夏繼強,沈德金.單片機實驗與實踐教程(二)M北航出版社,2001.12 張紅潤,藍清華.單片機應用技術教程M清華大學出版社,1997.13 周立功.單片機實驗與實踐M北京航空航天大學出版社,2004.14 何立民.單片機應用文集(一)M.北京航空航天大學出版社,1991.15

10、 方大千,鮑俏偉.使用電子控制電路M.國防科技出版社,2003. 16 曾繁泰.EDA工程概論M.清華大學出版社,2002.17 譚會生,張昌凡.EDA技術及應用M.西安電子科技大學出版社,2004.18 李強.鍵盤接口程序計數(shù)J.電子設計出版社,2003.19 肖來勝.單片機技術實用教程M.華中科技大學出版社,2004.20 楊曉川.Portel設計指導教程M.清華大學出版社,2003.致謝首先,很感謝學院給我們電氣工程及其自動化專業(yè)的學生一次把理論加深的機會,使得我們更好的理解單片機原理及接口技術這門課程,通過實物的焊接以及軟件仿真使得自己的動手能力有了一定的提高;其次,雖然這次課程設計是

11、每個人制作一個實物,但是大家一起討論,分析,最終調試成功,使大家的思維更加開闊;最后,感謝余老師的研究生給予我們焊接工具的支持。附錄A制作的實物照片附錄B源程序清單#include#define uint unsigned int#define uchar unsigned charuint hhh,mmm,sss;uint status;/函數(shù)聲明 void delayMS(uint t) ; void keyprocess(unsigned char key);void display();void timer0();main() /主函數(shù) ucharsegcode=0xc0,0xf9,0

12、xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/0,1,2,3,4,5,6,7,8,9 uchar dispbit=0xfe,0xfd,0xfb,0xf7,0xef,0xdf;/數(shù)碼管位選碼 buffer=0,0,0,0,0,0,0,0; bit keyrel; uchar buf; uchar keyin; keyrel=1; buf=0xff; TMOD=0x01; /T0工作在方式1,16位計數(shù)器 TH0=(65536-1000)/256;/ 定時器0設置延時1ms中斷初始值 TL0=(65536-1000)%256; TR0=1; IE=0x82; /開

13、定時器0中斷 status=0; /延時函數(shù) void delayMS(uint t) / 晶振頻率12MHZ uint i; while(t-)for(i=0;i=4) status = 0; break; case 0xd0:switch(status) /按下加1鍵,3種模式下加1 case 0x01:if(hhh24) hhh+; else hhh=0; break; case 0x02:if(mmm60) mmm+; else mmm=0; break; case 0x03:if(sss0) hhh-; else hour=23; break; case 0x02:if(mmm0) mmm-; else min=59; break; case 0x03:if(sss0) sss-; else sss=59; break; break; default:break; /數(shù)碼管顯示函數(shù)void display() uchar i; /正常計時顯示 buffer0=hhh/10; / 顯示時的十位 buffer1=hhh%10 / 顯示時的個位 buf

溫馨提示

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

評論

0/150

提交評論