最新電子鐘課程設計完整創新版_第1頁
最新電子鐘課程設計完整創新版_第2頁
最新電子鐘課程設計完整創新版_第3頁
最新電子鐘課程設計完整創新版_第4頁
最新電子鐘課程設計完整創新版_第5頁
免費預覽已結束,剩余15頁可下載查看

下載本文檔

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

文檔簡介

1、一實驗目的1. 學習 8051 定時器時間計時處理、按鍵掃描及LED數碼管顯示的設計方法。1.1. 設計任務及要求利用實驗平臺上4個 LED數碼管,設計帶有記憶功能的數字時鐘3. 掌握組合邏輯電路、時序邏輯電路及數字邏輯電路系統的設計、安裝、測試方法;4. 進一步鞏固所學的理論知識,提高運用所學知識分析和解決實際問題的能力;5. 提高電路布局布線及檢查和排除故障的能力;6. 培養書寫綜合實驗報告的能力。二、實驗設備STAR ES598PC試驗儀一套、IPC機一臺。三、實驗內容1、使用 8253 定時功能,產生0.5S 的定時中斷給82592、在G5區的數碼管上顯示時間3、允許設置時鐘初值4.

2、使電子鐘帶有記憶功能.設計所涉及的芯片1、 8253 定時器:用于產生秒脈沖,其輸出信號可作為中斷請示信號送IRQ2。2、 8279接口芯片:實現鍵盤輸入和顯示輸出。3、 8259中斷控制器:用于產生中斷。4、 LED:六個LED用于顯示時:分:秒值。5、小鍵盤:用于控制設置。四、實驗要求1. 在 4 位數碼管上顯示當前時間。顯示格式“秒,分,時”2. 由 LED閃動做秒顯示。3. 實現秒表功能(百分之一秒顯示)4. 電子鐘有記憶功能,電子鐘啟動之后,按F 鍵,在顯示秒的地方記錄數據,然后電子鐘重新開始啟動,再次按F 鍵,電子鐘再次記錄數據。五、設計原理利用定時器8253 和 8259 以及鍵

3、盤和數碼顯示電路,設計一個電子時鐘,由8253 中斷定時,小鍵盤控制電子時鐘的啟停及初始值的預置。電子時鐘的顯示格式AA: SS: DD由左到右分別為時、分、秒,最大記時59:59: 59 超過這個時間時分秒位都清零從00: 00: 00 重新開始。設計一個定時顯示裝置,用六個數碼管顯示時間,用小鍵盤控制計時,設置和顯示時間。系統一運行就從00點 00分 00秒開始計時,并在數碼管上顯示秒、分、時當前值,而且,可以用鍵盤設置當前時間。基本工作原理:每百分之一秒對百分之一秒寄存器的內容加一,并依次對秒、分、小時寄存器的內容加一;六個數碼管動態顯示時、分、秒的當前值。C鍵:置初值,顯示00: 00

4、: 00G鍵:顯示動態變化(啟動表);D鍵:顯示靜態不變(表停止);E 鍵:終止程序,返回DOS;P 鍵:設置秒:分:時的值A0, A1 片內寄存器地址輸入信號;CLK 一一 -it 數輸入,用于輸入定時基準脈沖或計數脈沖OUT 輸出信號,以相應的電平指示計數的完成,或輸出脈沖波形GATE- 迭通輸入(門控輸入), 用于啟動或禁止計數器的操作,以使計數器和計測對象同步。六、系統總體設計本系統設計的電子鐘以8088微處理器作為CPU,用8253做定時計數器產生時鐘頻率,8279 做可編程并行接口顯示時鐘和鍵盤電路,8259 做中斷控制器產生中斷。在此系統中,8253的功能是定時,接入8253的

5、CLK信號為周期性時鐘信號。8253 采用計數器0,工作于方式2,使8253 的 OUT0端輸出周期性的負脈沖信號。即每隔20ms, 8253 的OUT0端就會輸出一個負脈沖的信號,此信號接8259 的IR2,當中斷到50 次數后, CPU即處理,使液晶顯示器上的時間發生變化。程序由以下模塊組成:系統共有5 個功能模塊,分別為,主控模塊,顯示模塊,定時模塊,中斷模塊,小鍵盤模塊。系統總體框圖如下:1.CPU模塊8088 最小工作模式,作為整個電子表的核心控制部分。在 8088最小模式中,硬件連接上有如下特點:(1)MN/MX 端接+5V,決定了8088工作在最小模式。(2) 有 1 片 828

6、4A,作為時鐘發生器。(3) 有 3 片 8282,用來作為地址鎖存器。8282 是典型的鎖存器芯片,因為它是8(4) 當系統中所連的存儲器和外設系統較多時,需要增加數據總線的驅動能力,位的,所以需要3 片 8282作為鎖存器。這時,要用兩片8286作為總線收發器。8088 構成的 CPU2. 定時模塊定時模塊是為8259提供中斷請求信號的。由一片 8253實現, 選用定時器0#,3, 由于時鐘應該1 秒走動一次,所以輸出值應為1S, 其輸出信號可8259的中斷請求信號。定時模塊原理圖3. 中斷處理模塊中斷模塊實現動態顯示的,硬件為一片8259, 由于中斷請求信號為每秒一次,只要開中斷,便可實

7、現每秒顯示時間增加4. 顯示模塊和小鍵盤模塊5. 實物硬件連接圖七、實驗步驟1、主機連線說明:E5區 :CLKB2 區: 2ME5區 :CS、 A0A3 區:CS5、 A0E5區 :A、 B、 C、 DG5區:A、 B、 C、 DB3區 :CS、 A0A3 區:CS1、 A0B3區:INT、 INTAES8088: INTR、 INTAB3區:IR0C5 區 : OUT0C5區 :CS( 8253) 、 A0、 A1A3 區:CS2、 A0、 A1C5區 :GATE0C1 區: VCCC5區 :CLK0B2 區: 62.5K2、運行程序,按G5區的 F 鍵,設置時鐘初值;3、觀察G5區數碼管上

8、顯示的時間是否正確。中斷信號送CPU處理。八、演示程序.MODEL TINYEXTRNDisplay8:NEAR, GetKeyA:NEAR, GetKeyB:NEARIO8259_0 EQU0 F000HIO8259_1 EQU0 F001HCon_8253 EQU0 E003HT0_8253 EQU 0E000H.STACK 200 .DATAhalfsecDB 0;0.5 秒計數SecDB0; 秒MinDB0; 分hourDB0;時bufferDB 8 DUP(0) ; 顯示緩沖區,8個字節buffer1 DB 8 DUP(0) ; 顯示緩沖區,8 個字節bNeedDisplay DB

9、0 ; 需要刷新顯示numberDB 0 ; 設置哪一位時間bFlashDB 0 ; 設置時是否需要刷新.CODESTART:MOVAX,DATAMOVD S,AXMOVE S,AXNOPmovs ec,0 ; 時分秒賦初值00:00:00movm in,00movh our,00MOVb NeedDisplay,1; 顯示初始值CALL Init8253CALL Init8259CALL WriIntverSTIMAIN:CALL GetKeyA ; 按鍵掃描JNBM ain1CMPA L,0FH ; 設置時間JNZ Main1CALL SetTimeMain1:CMP bNeedDispl

10、ay,0JZ MAINCALL Display_LED ; 顯示時分秒MOVb NeedDisplay,0;1s 定時到刷新轉速Main2:JMP MAIN; 循環進行實驗內容介紹和測速功能測試SetTime PROC NEARLEASI,buffer1CALL TimeToBufferMOVNumber,0Key:CMPb Flash,0JZ Key2LEAS I,buffer1LEAD I,bufferMOVC X,8REPM OVSBCMPh alfsec,0JNZ FLASHMOVB L,numberNOTB LANDB X,07HLEAS I,bufferMOVB YTE PTR S

11、I+BX,10H ; 當前設置位置產生閃爍效果FLASH:LEA SI,bufferCALL Display8MOVb Flash,0Key2:CALL GetKeyAJNBK eyCMPA L,0EH ; 放棄設置JNZ Key1JMP Main1Key1:CMP AL,0FHJZ SetTime8SetTime1: CMPA L,10JNB Key ; 無效按鍵CMPn umber,0JNZ SetTime2CMPA L,3; 調整時的十位數JNB KeyMOVb uffer1 + 7,ALJMPS etTime7SetTime2: CMPn umber,1JNZ SetTime3CMPb

12、 uffer1 + 7,1 ; 調整時的個位數JZ SetTime2_1CMPA L,4JNBK eySetTime2_1:MOVb uffer1 + 6,ALINC numberJMPS etTime7SetTime3: CMPn umber,3JNZ SetTime4CMPA L,6; 調整分的十位數JNBK eyMOVb uffer1 + 4,ALJMPS etTime7SetTime4: CMPn umber,4JNZ SetTime5MOVb uffer1 + 3,AL; 調整分的個位數INC numberJMPS etTime7SetTime5: CMPn umber,6JNZ S

13、etTime6CMPA L,6; 調整秒的十位數JB SetTime5_1JMPK eySetTime5_1:MOVb uffer1 + 1,ALJMPS etTime7SetTime6: MOVb uffer1,AL ; 調整秒的個位數SetTime7: INC numberCMPn umber,8JNBS etTime8MOVb Flash,1; 需要刷新JMPK eySetTime8: MOVA L,buffer1 + 1; 確認MOVB L,10MULB LADDA L,buffer1MOVs ec,AL; 秒MOVA L,buffer1 + 4MULB LADDA L,buffer1

14、 + 3MOVm in,AL ; 分MOVA L,buffer1 + 7MULB LADDA L,buffer1 + 6MOVh our,AL; 時JMPE xitExit:RETSetTime ENDPTimeToBuffer PROC NEARMOVA L,hourXORA H,AHMOVB L,10DIV BLMOVS I,AHMOVS I + 1,AL; 秒MOVB YTE PTR SI + 2,10H; 這位不顯示MOVA L,minXORA H,AHDIV BLMOVS I + 3,AHMOVS I + 4,AL; 分MOVB YTE PTR SI + 5,10H; 這位不顯示MO

15、VA L,secXORA H,AHDIV BLMOVS I + 6,AHMOVS I + 7,AL; 時RETTimeToBuffer ENDPDisplay_LED PROC NEARLEA SI,bufferCALL TimeToBufferLEAS I,bufferCALL Display8 ; 顯示RETDisplay_LED ENDPTimer0Int: PUSH AXPUSH DXMOV bFlash,1INC halfsecCMPh alfsec,2JNZ Timer0Int1MOVb NeedDisplay,1MOVh alfsec,0INC secCMPs ec,60JNZ

16、Timer0Int1MOVs ec,0INC minCMPm in,60JNZ Timer0Int1MOVm in,0INC hourCMPhour,24JNZTimer0Int1MOVh our,0Timer0Int1:MOVD X,IO8259_0MOVA L,20HOUTD X,ALPOPD XPOPA XIRETInit8253 PROC NEARMOVD X,Con_8253MOVA L,34HOUTD X,AL ; 計數器 T0設置在模式2 狀態,HEX計數MOVD X,T0_8253MOVA L,12HOUTD X,ALMOVA L,7AHOUTD X,AL ;CLK0=62.5

17、kHz,0.5s 定時RETInit8253 ENDPInit8259 PROC NEARMOVD X,IO8259_0MOVA L,13HOUTD X,ALMOVD X,IO8259_1MOVA L,08HOUTD X,ALMOVA L,09HOUTD X,ALMOVA L,0FEHOUTD X,ALRETInit8259 ENDPWriIntver PROC NEARPUSH ESMOVAX,0MOVE S,AXMOVD I,20HLEA AX,Timer0IntSTOSWMOVAX,CSSTOSWPOPE SRETWriIntver ENDPENDS TART九、軟件設計和流程圖1 、數

18、字電子時鐘主程序流程圖請求數字電子時鐘主程序流程圖2、中斷服務程序流程圖中斷服務程序流程圖如下圖所示。3. 實驗結論開始通過運用數字集成電路設計的24小時制的數字電子時鐘,經過試驗,改裝后成功實現了一下基本功能:1. 能準確的實現通過開關控制時分秒。2. 能準確計時,以數字形式顯示秒、分、時的時間。3. 能實現記憶的功能,并能在記錄完數據之后實現交替記錄的功能。十 . 實驗總結通過這次數字電子鐘的課程設計,我們才把學到的東西和實踐相結合。從中對我們學的知識有了更進一步的理解,而且更進一步地熟悉了芯片的結構及掌握了各芯片的工作原理和其具體的使用方法。也鍛煉了自己獨立思考問題的能力和通過查看相關資料來解決問題的習慣。雖然這只是一次簡單的課程設計,但通過這次課程設計我們了解了課程設計的一般步驟,和設計中應注意的問題。設

溫馨提示

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

評論

0/150

提交評論