單片機課程設(shè)計多功能數(shù)字萬年歷_第1頁
單片機課程設(shè)計多功能數(shù)字萬年歷_第2頁
單片機課程設(shè)計多功能數(shù)字萬年歷_第3頁
單片機課程設(shè)計多功能數(shù)字萬年歷_第4頁
單片機課程設(shè)計多功能數(shù)字萬年歷_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計 任 務(wù) 書題 目 單片機課程設(shè)計 多功能數(shù)字萬年歷 系 (部) 專 業(yè) 班 級 學生姓名 學 號 12 月 02 日至 12 月 06 日 共 1 周指導教師(簽字) 系 主 任(簽字) 2013年 12 月 06 日一、 設(shè)計內(nèi)容及要求基本內(nèi)容:以80C51單片機為核心,設(shè)計,編程,仿真,調(diào)試一個具有顯示時間(時、分、月、日、星期),并可以通過按鍵輸入調(diào)整的萬年歷時鐘。擴展內(nèi)容:閏年月、溫度顯示、時間掉電保留等等其他內(nèi)容。要求:在仿真軟件keilProtues環(huán)境中可以正常輸入調(diào)試及顯示運行。二、 設(shè)計原始資料教材、元器件數(shù)據(jù)手冊、網(wǎng)上相關(guān)資料。三、 設(shè)計完成后提交的文件和圖

2、表文字部分: 一、設(shè)計思路、程序清單(可打印)、安裝調(diào)試體會、經(jīng)驗、問題,總結(jié)。 二、操作使用方法。 圖紙部分: 設(shè)計原理圖、電路圖、程序流程圖,仿真調(diào)試過程抓圖、正常工作圖片。 仿真環(huán)境下的可運行電子文檔。以及上述文檔的電子稿。 電子文檔:上述內(nèi)容的電子稿。四、進程安排布置任務(wù), 1小時查找資料、熟悉相關(guān)電原理圖,交流設(shè)計思路 一天設(shè)計、分析電原理圖 。 一天仿真、 調(diào)試電路 二天調(diào)試程序、寫報告。 一天四、 主要參考資料單片機、數(shù)字電子技術(shù)、模擬電子技術(shù)教材及元器件手冊 各類網(wǎng)絡(luò)資源成 績 評 定 表口試(答辯)成績報告成績總評成績單片機課程設(shè)計多功能數(shù)字萬年歷 班級:姓名:學號:指導教師

3、:摘要本設(shè)計是基于51系列的單片機進行的電子萬年歷設(shè)計,可以顯示年月日時分秒及周信息,具有可調(diào)整日期和時間功能。在設(shè)計的同時對單片機的理論基礎(chǔ)和外圍擴展知識進行了比較全面準備。在硬件與軟件設(shè)計時,沒有良好的基礎(chǔ)知識和實踐經(jīng)驗會受到很大限制,每項功能實現(xiàn)時需要那種硬件,程序該如何編寫,算法如何實現(xiàn)等,沒有一定的基礎(chǔ)就不可能很好的實現(xiàn)。在編寫程序過程中發(fā)現(xiàn)以現(xiàn)有的相關(guān)知識要獨自完成編寫任務(wù)困難重重,在老師和同學的幫助下才完成了程序部分的編寫。關(guān)鍵詞:時鐘電鐘;單片機;AT89C51;萬年歷AbstractThis design is based on the design of electroni

4、c calendar 51 series MCU can display YYMMDDHHMMSS and weekly information, with adjustable date and time functions. In the design, while the theoretical basis for the microcontroller and peripheral expansion of knowledge more comprehensive preparation. Hardware and software design, without good found

5、ation of knowledge and practical experience will be greatly restricted, each function requires the kind of hardware implementation, the program how to write, how to implement the algorithm so it is impossible without some good foundation implementation. Found in the programming process with existing

6、 knowledge to complete the difficult task of writing alone, with the help of teachers and students to complete the preparation of the next part of the program.Keyword:Clock electric clock; SCM; AT89C51; calenda目錄一、課程設(shè)計題目1二、內(nèi)容要求1三、目的和意義1四、總體方案設(shè)計思路1五、仿真電路設(shè)計25.1 AT89C51的芯片概述25.2 管腳說明35.3 電路設(shè)計45.3.1 數(shù)碼管

7、日歷顯示電路45.3.2 74HC238片選電路:55.3.3 AT89C51單片機控制電路65.3.4 硬件電路的總體框圖6六、軟件設(shè)計86.1 主程序流程圖8七、軟件程序9八、仿真調(diào)試13九、Proteus ISIS簡介14十、實際目標時情況15十一、課程設(shè)計心得體會15十二、參考文件16一、課程設(shè)計題目以80C51單片機為核心,設(shè)計,編程,仿真,調(diào)試一個具有顯示時間(時、分、月、日、星期),并可以通過按鍵輸入調(diào)整的萬年歷時鐘。擴展內(nèi)容:閏年月、溫度顯示、時間掉電保留等等其他內(nèi)容。二、內(nèi)容要求1.具有年、月、日、星期、時、分、秒等功能;2.時間與陰、陽歷能夠自動關(guān)聯(lián);3.具有溫度計功能;4

8、.具備年、月、日、星期、時、分、秒校準功能5. 在仿真軟件keilProtues環(huán)境中可以正常輸入調(diào)試及顯示運行。三、目的和意義1、進行一次實際開發(fā)的實驗,提高用戶實際開發(fā)的能力。2、全面利用所學的電子技術(shù)方面的知識,進行這次綜合的運用,同時深入了解匯編語言在單片機上的運用。3、綜合運用所學的單片機原理與應(yīng)用理論知識,通過實踐加強對所學知識 的理解,具備設(shè)計單片機應(yīng)用系統(tǒng)的能力。 4、 通過本次課程設(shè)計加深對單片機掌握定時器、外部中斷的設(shè)置和編程原理的全面認識復(fù)習和掌握,對單片機實際的應(yīng)用作進一步的了解。5、 通過本次試驗,增強自己的動手能力。認識單片機在日常生活中的應(yīng)用的廣泛性,實用性。四、

9、總體方案設(shè)計思路本實驗利用單片機的定時器/計數(shù)器定時和記數(shù)的原理,通過采用proteus仿真軟件來模擬實現(xiàn)。模擬利用AT89C51單片機、LED數(shù)碼管以及控件來顯示日期的變更。選用電子萬年歷芯片時,應(yīng)重點考慮功能實在、使用方便、單片存儲、低功耗、抗斷電的器件。根據(jù)選用的電子萬年歷芯片設(shè)計外圍電路和單片機的接口電路。在硬件設(shè)計時,結(jié)構(gòu)要盡量簡單實用、易于實現(xiàn),使系統(tǒng)電路盡量簡單。根據(jù)設(shè)計的硬件電路,編寫控制89C51芯片的單片機程序。通過編程、編譯、調(diào)試,并實現(xiàn)本設(shè)計的功能。在硬件電路和軟件程序設(shè)計時,主要考慮提高人機界面的友好性,方便用戶操作等因素。軟件設(shè)計時必須要有完善的思路,要做到程序簡單

10、,調(diào)試方便。單片機電子萬年歷的制作有多種方法,可供選擇的器件和運用的技術(shù)也有很多種。所以,系統(tǒng)的總體設(shè)計方案應(yīng)在滿足系統(tǒng)功能的前提下,充分考慮系統(tǒng)使用的環(huán)境,所選的結(jié)構(gòu)要簡單使用、易于實現(xiàn),器件的選用著眼于合適的參數(shù)、穩(wěn)定的性能、較低的功耗以及低廉的成本。系統(tǒng)的功能往往決定了系統(tǒng)采用的結(jié)構(gòu),經(jīng)過成本,性能,功耗等多方面的考慮決定用9個8進制74HC573外接8位數(shù)碼管顯示日期變化,74HC238作為譯碼器決定某個74HC573工作。芯片采用89C51。從而實現(xiàn)電子萬年歷的功能。五、仿真電路設(shè)計5.1 AT89C51的芯片概述 AT89C51是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k

11、Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序內(nèi)存,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89C51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。 其工作電壓在4.5V,一般我們選用5V電壓。外形及引腳排列如圖2所示 圖1:89C51的核心電路框圖5.2 管腳說明(1)電源及時鐘引腳(4個)Vcc: 電源接入引腳

12、Vss:接地引腳XTAL1:晶振震蕩器接入的一個引腳(采用外部振蕩器時,此引腳接地);XTAL2:晶體振蕩器的另一個引腳(采用外部振蕩器時,此引腳作為外部振蕩器信號的輸入端)。(2)控制線引腳(4個)RST/Vpd:復(fù)位信號輸入引腳/備用電源輸入引腳;ALE:地址鎖存允許信號輸出引腳/編程脈沖輸入引腳:EA:內(nèi)外內(nèi)存選擇引腳/片外EPROM編程電壓輸入引腳;PSEN:外部程序內(nèi)存選通信號輸出引腳。(3)并行I/O引腳P0.0-P0.7:一般I/O口引腳或數(shù)據(jù)/低位地址總線復(fù)用引腳;P1.0-P1.7:一般I/O口引腳;P2.0-P2.7:一般I/O口引腳或高位位址總線引腳;P3.0-P3.7:

13、一般I/O口引腳或第二功能引腳5.3 電路設(shè)計5.3.1 數(shù)碼管日歷顯示電路 圖1元件參數(shù):1、74HC57374HC573包含八進制3態(tài)非反轉(zhuǎn)透明鎖存器,是一種高性能硅門CMOS器件。74HC573跟LS/AL573的管腳一樣。器件的輸入是和標準CMOS輸出兼容的,加上拉電阻他們能和LS/ALSTTL輸出兼容。74HC573管腳:1腳三態(tài)允許控制端低電平有效,1D8D為數(shù)據(jù)輸入端,1Q8Q為數(shù)據(jù)輸出端。74HC573引腳圖74HC573引腳圖74HC573內(nèi)部原理圖2、數(shù)碼管我選用的是7SEG-MPX1-CA型號的數(shù)碼管,共陽,如圖5所示:圖5 7SEG-MPX1-CA數(shù)碼管總共有九個引腳,

14、遠離八個引腳的一個可以接地,可以接上拉電阻后接地,若把單獨的引腳放在右邊,從左往右數(shù),依次對應(yīng)a,b,c,d,e,f,g(小數(shù)點)5.3.2 74HC238片選電路:74HC238連接鎖存器74HC573選擇控制某一個數(shù)碼管顯示。74HC238片選電路圖元件參數(shù):74HC238譯碼器,74HC238也是3-8譯碼器,輸出高電平選中。74HC238引腳圖74HC238引腳連接說明5.3.3 AT89C51單片機控制電路5.3.4 硬件電路的總體框圖按鍵與按鈕 電路顯示電路總體開關(guān)復(fù)位等輔助電路電源系統(tǒng)CPUAT89C51六、軟件設(shè)計6.1 主程序流程圖CPU系統(tǒng)初始化定時器初始化串口初始化讀寫日

15、期、時間信息分離日期時間信息顯示子程序顯示出的時間時間是否正確?日期、時間修改子程序返回七、軟件程序 ;定義變量K EQU 30H ;T0定時計數(shù)MER EQU 31H ;月計數(shù)RER EQU 32H ;日計數(shù)SER EQU 33H ;時計數(shù)FER EQU 34H ;分計數(shù)XQR EQU 35H ;星期計數(shù)MMR EQU 36H ;秒計數(shù)DA1 EQU 40H ;9個顯示單元的顯示段碼DA2 EQU 41H ;第二個DA3 EQU 42H ;DA4 EQU 43H ;DA5 EQU 44H ;DA6 EQU 45H ;DA7 EQU 46H ;DA8 EQU 47H ;DA9 EQU 48H

16、;第九個顯示緩存 ;定義位標志XSBZ BIT 00H ;T0BZ BIT 01H ;BLBZ BIT 02H ;LED1 BIT P1.4 ; 1;定義端口;程序部分 ORG 0000H LJMP MAIN ORG 0003H ; LJMP WZD0 ORG 0013H ; LJMP T0ZD/ ORG 000BH ;/ LJMP WZD1/ ORG 001BH ;/ LJMP T1ZD/ ORG 0023H ;/ LJMP UAZD ORG 0030HTAB1: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;共陰段碼 DB 7FH,6FH,77H,7CH,39H,

17、5EH,79H,71H,00HTAB2: DB 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82 ;共陽顯示段碼 DB 0xf8,0x80,0x90,0x88,0x83,0xa7,0xa1 ;0-F,全滅DB 0x86,0x8e,0xffMAIN: MOV SP,#5FH; MOV A,#0FFH; MOV P0,A ; MOV P1,A MOV P2,A MOV P3,A MOV TMOD,#20H ;T1方式1 MOV TH0,#3CH ;50ms定時 MOV TL0,#0B0H ;/ MOV SCON,#50H ;方式1,開接收/ MOV PCON,#00H ;不加倍

18、 SETB TR0 ;打開T1 SETB ET0 ;開T0中斷 SETB EA ;總中斷 MOV R7,#9 ;初始化顯示緩存區(qū) MOV DPTR,#TAB2 ;送入0-9段碼 MOV R0,#30H ;變量首地址 MOV R1,#40H ;顯緩首地址CSXS: CLR A ; MOV R0,A ;清變量 MOVC A,A+DPTR ;讀入段碼 MOV R1,A ;送到顯緩 INC R1 ;地址加一 INC R0 ; INC DPTR ; DJNZ R7,CSXS; SETB XSBZ ;置顯示標志LOOP: NOP; CALL T0CL ;調(diào)定時處理 CALL XSZC ;調(diào)顯示輸出 CAL

19、L SJCL ;調(diào)數(shù)據(jù)處理 SJMP LOOP ;SJCL: JB BLBZ,SJCL1 ;數(shù)據(jù)處理,有要求? RETSJCL1: MOV R0,#40H ;Y,顯緩首址 MOV DPTR,#TAB2 ;段碼表首地址 MOV A,MER ;月份拆分 MOV B,#10 ;十位數(shù)取出 DIV AB ; MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 ;指向下一顯緩 MOV A,B ;取個位 MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 MOV A,RER ;日拆分 MOV B,#10 ;十位數(shù)取出 DIV AB ; MOVC A,

20、A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 ;指向下一顯緩 MOV A,B ;取個位 MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 ; MOV A,SER ;時拆分 MOV B,#10 ;十位數(shù)取出 DIV AB ; MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 ;指向下一顯緩 MOV A,B ;取個位 MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 INC R0 ; MOV A,FER ;分拆分 MOV B,#10 ;十位數(shù)取出 DIV AB ; MOVC A,A+DPTR ;取段碼

21、MOV R0,A ;送顯緩 INC R0 ;指向下一顯緩 MOV A,B ;取個位 MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 MOV A,XQR ;星期拆分 MOVC A,A+DPTR ;取段碼 MOV R0,A ;送顯緩 SETB XSBZ ; RETXSZC: JB XSBZ,XSC0 ; 有顯示要求? RET ;XSC0: CLR XSBZ ;有,清標志 MOV R7,#9 ;9個單元 MOV R6,#00H ;第一單元位碼 MOV R1,#40H ;XSC1: MOV A,R6 ;送出位碼 MOV P2,A; MOV A,R1 ;送出段碼 MOV P0,A ;

22、INC R1 ; 地址加一 INC R6 ; DJNZ R7,XSC1 ; RETT0CL: JB T0BZ,T0CL0 ; RETT0CL0: CLR T0BZ ; INC K ; MOV A,K ; CJNE A,#10,TCLM; MOV K,#0 ; CPL LED1 INC MMR ; MOV A,MMR ; CJNE A,#120,TCLM ; MOV MMR,#0 ; INC FER ; MOV A,FER ; CJNE A,#60,TCLM1 ; MOV FER,#0 ; INC SER ; MOV A,SER ; CJNE A,#24,TCLM1 ; MOV SER,#0 ;

23、 INC XQR ; MOV A,XQR ; CJNE A,#8,T0CL1 ; MOV XQR,#0 ; INC XQRT0CL1: INC RER ; MOV A,RER ; CJNE A,#32,TCLM1 ; MOV RER,#0 ; INC RER INC MER ; MOV A,MER ; CJNE A,#13,TCLM1 ; MOV MER,#0 ; INC MER TCLM1: SETB BLBZ ;TCLM: NOP RET ;中斷程序WZD0: NOP ; RETIWZD1: NOP RETI T0ZD: NOP ; MOV TH0,#3CH ;50ms定時 MOV TL0

24、,#0B0H ; SETB T0BZ ; RETIT1ZD: NOP RETIUAZD: NOP PUSH PSW PUSH ACC JNB RI,UAZD1 ; CLR RI ; MOV A,SBUF ; MOV DPTR,#TAB1 ; MOVC A,A+DPTR ; MOV P0,A ;UAZD1: CLR TI ; POP ACC POP PSW RETI END 八、仿真調(diào)試通過在Keil下對源程序的編譯,改正了其中的很多錯誤,然后運行,保證源程序的正確性。同時,按原理圖選擇正確合理的電器元件,畫出正確的電路圖。然后,連接單片機為AT89C51,選擇Options for targe

25、t,選擇OUTPUT子菜單,在Create HEX Fi前打鉤,DeBug子菜單中,Settings選擇ProteusVSM Simulator,USE前打鉤,再次運行文件,成功后在目錄下會生成HEX文件,打開Proteus軟件,或直接點擊DSN檔,雙擊單片機模板,點擊文件夾式樣的圖標選擇對應(yīng)的HEX驅(qū)動文件,然后點擊開始,進行調(diào)試。順利實現(xiàn)了單片機數(shù)字電子鐘的“小時”、“分鐘”、“秒”的顯示。該電子萬年歷的顯示效果如圖九、Proteus ISIS簡介Labcenter公司開發(fā)的電路分析與實物仿真軟件。它運行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路。該軟件

26、的特點是:(1)全部滿足我們提出的單片機軟件仿真系統(tǒng)的標準,并在同類產(chǎn)品中具有明顯的優(yōu)勢。(2)具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、I2 C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。(3)目前支持的單片機類型有:ARM7系列、68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。(4)支持大量的存儲器和外圍芯片??傊?,該軟件是一款集單片機和SPICE分析于一身的仿真軟件,功能極其強大 ,可仿真ARM、51、

27、AVR、PIC。Proteus啟動畫面:十、實際目標時情況在仿真,基本滿足題目要求,可以做到計時,日期的變更,但在程序變量的設(shè)置上出現(xiàn)過問題,還是對這次的設(shè)計進度有一定的影響十一、課程設(shè)計心得體會課程設(shè)計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程.隨著科學技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當今計算機應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在。因此作為二十一世紀的大學生,掌握單片機的開發(fā)技術(shù)是十分重要的。此次設(shè)計立足于電子技術(shù)的實際運用,不斷實踐,開拓了思維,設(shè)計以考查、調(diào)研、搜集資料、擬訂方案、進行系統(tǒng)規(guī)

28、劃、編程、仿真、調(diào)試的流程,使我深刻的體會到了在學習我們專業(yè)的過程中理論與實踐相結(jié)合的重要性,同時也解決了以前學習比較模糊的專業(yè)知識點,使自己掌握的專業(yè)知識更加結(jié)構(gòu)化、系統(tǒng)化首先擺在我面前的是要先弄懂所要設(shè)計電路的原理,于是最開始我在拿到題目之后就查找了大量的相關(guān)的數(shù)據(jù),再加上平時理論課的學習以及充分利用了網(wǎng)絡(luò)資源和在圖書館借了相關(guān)的書籍資料,在仔細分析了這個題目所要達到的目的之后,初步確定了原理圖。接下來的是單元電路的設(shè)計,以及進一步的分析其原理,實現(xiàn)哪些功能需要哪些電路,在此之間我們用到了以前沒有用到過的芯片,但最終我們還是弄清楚了其原理。經(jīng)過幾天研究,終于確定好了符合要求的電路。在電路確定之后就需要編寫程序,經(jīng)過多次的修改和仿真,程序也順利的編寫完成。經(jīng)過這些天的學習我深刻的體會到實際與理論有很大的區(qū)別。在我們學習的過程中

溫馨提示

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

評論

0/150

提交評論