微機(jī)原理電子鐘設(shè)計(jì)匯編語言_第1頁
微機(jī)原理電子鐘設(shè)計(jì)匯編語言_第2頁
微機(jī)原理電子鐘設(shè)計(jì)匯編語言_第3頁
微機(jī)原理電子鐘設(shè)計(jì)匯編語言_第4頁
微機(jī)原理電子鐘設(shè)計(jì)匯編語言_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、成績(jī) 課程設(shè)計(jì)報(bào)告題 目 可調(diào)時(shí)電子鐘的設(shè)計(jì) 課 程 名 稱 微機(jī)原理及應(yīng)用 院 部 名 稱 專 業(yè) 工程及其自動(dòng)化 班 級(jí) 工程及其自動(dòng)化 學(xué) 生 姓 名 學(xué) 號(hào) 課程設(shè)計(jì)地點(diǎn) 課程設(shè)計(jì)學(xué)時(shí) 指 導(dǎo) 教 師 摘 要運(yùn)用了8086 CPU芯片以及8259A芯片、8253芯片和顯示器等輔助硬件電路,進(jìn)行了可調(diào)時(shí)電子鐘的設(shè)計(jì)。進(jìn)行了軟件設(shè)計(jì)并編寫了源程序。該電子鐘具有時(shí)、分、秒計(jì)時(shí)、顯示功能,并且通過定義鍵盤的字母,可對(duì)電子鐘進(jìn)行時(shí)分秒時(shí)間調(diào)整。 關(guān)鍵詞:可調(diào)時(shí)電子鐘;8259A;8253;8086微機(jī)系統(tǒng)目 錄一 、設(shè)計(jì)任務(wù)與要求1二 、總體設(shè)計(jì)方案與說明1三 、系統(tǒng)硬件部分設(shè)計(jì)2 3.1 80

2、86微處理器的工作原理2 3.2 8259A芯片的工作原理3 3.3 8253芯片的工作原理4 3.4 LED顯示器5 3.5 系統(tǒng)原理圖 6四 、系統(tǒng)軟件部分設(shè)計(jì) 7 4.1 系統(tǒng)軟件流程圖74.2 源程序9五 、系統(tǒng)調(diào)試 17六 、課程設(shè)計(jì)體會(huì) 17七 、參考文獻(xiàn) 17 17一、設(shè)計(jì)任務(wù)與要求設(shè)計(jì)一個(gè)可調(diào)時(shí)電子鐘,要求:1)給出系統(tǒng)設(shè)計(jì)方案;畫出硬件連線圖,并說明工作原理;2)畫出程序框圖并編寫程序完成如下功能:6位七段LED數(shù)碼管可顯示時(shí)、分、秒,并按正常時(shí)間顯示方法工作;二、總體設(shè)計(jì)方案與說明本實(shí)驗(yàn)利用8253做定時(shí)器,用定時(shí)器輸出的脈沖控制8259產(chǎn)生中斷。在8259中斷處理程序中,

3、對(duì)時(shí)、分、秒進(jìn)行計(jì)數(shù),在等待中斷的循環(huán)中用LED顯示時(shí)間。8253用定時(shí)器/計(jì)數(shù)器1,8253片選接CS4,地址為0C000H。8253時(shí)鐘源CLK1接分頻電路的F/64輸出。分頻器的FIN接4MHZ時(shí)鐘。8253的GATE1接VCC。8259中斷INT0接8253的OUT1,片選接CS5,地址為0D000H。顯示電路的KEY/LED CS 接CS0,地址為08000H。系統(tǒng)工作框圖如下:8259A82538086CPU顯示電路圖1系統(tǒng)框圖三、系統(tǒng)硬件部分設(shè)計(jì) 31、8086微處理器 8086微處理器是16位機(jī),1 6 位微處理器比 8 位微處理器有更大的尋址空間、 更強(qiáng)的運(yùn)算能力、 更快的處

4、理速 度和更完善的指令系統(tǒng)。1 6 位微處理器比 8 位微處理器有更大的尋址空間、 更強(qiáng)的運(yùn)算能力、 更快的處理速 度和更完善的指令系統(tǒng)。芯片引腳為40根,20根地址線,16根數(shù)據(jù)線,其最大的地址空間為1MB。 8086從功能上來說可以分成兩個(gè)大部分,總線接口單元BIU和執(zhí)行單元EU。BIU:負(fù)責(zé)與存儲(chǔ)器或I/O接口交換信息,即8086與存儲(chǔ)器或I/O接口之間的信息傳送,都是由BIU負(fù)責(zé)進(jìn)行的,即:(1)BIU從內(nèi)存的指定部分取出指令,送到指令隊(duì)列排隊(duì)。(2)取出執(zhí)行指令時(shí)所需的操作數(shù),送至EU部分。EU:負(fù)責(zé)指令的執(zhí)行。特點(diǎn):將CPU分為兩個(gè)單元,可以使取指令和執(zhí)行指令同進(jìn)行,減少了CPU為

5、取指令而等待的時(shí)間,從而提高了CPU的利用率,提高了系統(tǒng)的運(yùn)行速度。 8086微處理器的引腳功能可分3部分:地址總線、數(shù)據(jù)總線、控制總線。(1)地址/數(shù)據(jù)總線AD15-AD0 AD15-AD0:地址/數(shù)據(jù)復(fù)用引腳,雙向,三態(tài)。 地址/數(shù)據(jù)總線分時(shí)復(fù)用。在總線周期開始時(shí)(T1),用作地址總線的16位,給出內(nèi)存單元的地址;其他時(shí)間為數(shù)據(jù)總線,用于數(shù)據(jù)傳輸。(2)地址/狀態(tài)總線A19/S6-A16/S3 A19/S6-A16/S3:地址/狀態(tài)總線復(fù)用引腳,輸出,三態(tài)。A19-A16:輸出訪問存儲(chǔ)器的20位地址的高4位地址A19-A16。8086的20條地址線訪問存儲(chǔ)器時(shí)可尋址1MB內(nèi)存單元;訪問外部

6、設(shè)備時(shí),只用16條地址A15-A0,可尋址64K個(gè)I/O端口。圖2 8086CPU3.2、8259A芯片的內(nèi)部結(jié)構(gòu)及引腳中斷控制器8259A是Intel公司專為控制優(yōu)先級(jí)中斷而設(shè)計(jì)開發(fā)的芯片。它將中斷源優(yōu)先排隊(duì)、辨別中斷源以及提供中斷矢量的電路集中于一片中。因此無需附加任何電路,只需對(duì)8259A編程,就可以管理8級(jí)中斷,并選擇優(yōu)先模式和中斷請(qǐng)求方式,即中斷結(jié)構(gòu)可以由用戶編程來設(shè)定。在MD微機(jī)系統(tǒng)中,8259芯片工作于單片方式。 8259引腳圖如圖3,各引腳功能如下。D7D0八條雙向數(shù)據(jù)線;WR(低電平有效)寫輸入信號(hào);RD(低電平有效)讀輸入信號(hào);CS(低電平有效)片選輸入信號(hào);A0地址信號(hào);

7、INT中斷請(qǐng)求信號(hào);INTA(低電平有效)中斷響應(yīng)信號(hào);CAS0CAS2級(jí)聯(lián)信號(hào),形成一條專用8259A總線,以便多片8259A的級(jí)聯(lián);SP/EN從編程/允許級(jí)聯(lián)。在緩沖方式中,可用做輸出信號(hào)以控制總線緩沖器的接收和發(fā)送。在非緩沖方式中,作為輸入信號(hào)用于表示主片還是從片;IR0IR7外部中斷請(qǐng)求輸入線。要求輸入的中斷請(qǐng)求信號(hào)是由低電平到高電平的上升沿(并保持高電平到CPU響應(yīng)時(shí)為止)或者是高電平。 8259A中斷矢量表中斷序號(hào)01234567功能調(diào)用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H23H24H27H28H2BH2CH2FH30H33H34H37H38H3BH3CH

8、3FH說明時(shí)鐘鍵盤可用可用串行口可用可用可用3.3、可編程定時(shí)器/計(jì)數(shù)器82538253的功能用途是:(1)延時(shí)中斷(2)可編程頻率發(fā)生器(3)事件計(jì)數(shù)器(4)二進(jìn)倍頻器(5)實(shí)時(shí)時(shí)鐘(6)數(shù)字單穩(wěn)(7)復(fù)雜的電機(jī)控制器8253有六種工作方式:(1)方式0:計(jì)數(shù)結(jié)束中斷(2)方式1:可編程頻率發(fā)生器(3)方式2:頻率發(fā)生器(4)方式3:方波頻率發(fā)生器(5)方式4:軟件觸發(fā)的選通信號(hào)(6)方式5:硬件觸發(fā)的選通信號(hào)圖4 8253引腳信號(hào)圖8253引腳圖如圖3.3示,各引腳功能如下。D7D0八條雙向數(shù)據(jù)線;WR(低電平有效)寫輸入信號(hào);RD(低電平有效)讀輸入信號(hào);CS(低電平有效)片選輸入信號(hào);

9、A0、A1片內(nèi)寄存器地址輸入信號(hào);CLK計(jì)數(shù)輸入,用于輸入定時(shí)基準(zhǔn)脈沖或計(jì)數(shù)脈沖;OUT輸出信號(hào),以相應(yīng)的電平指示計(jì)數(shù)的完成,或輸出脈沖波形;GATE選通輸入(門控輸入),用于啟動(dòng)或禁止計(jì)數(shù)器的操作,以使計(jì)數(shù)器和計(jì)測(cè)對(duì)象同步。 8253端口地址表2、8253端口地址信號(hào)線寄存器編址IOY20#計(jì)數(shù)器40H1#計(jì)數(shù)器41H2#計(jì)數(shù)器42H控制寄存器43H 3.4、LED顯示器LED顯示器有靜態(tài)顯示與動(dòng)態(tài)顯示兩種方式。我們使用的為動(dòng)態(tài)顯示 LED動(dòng)態(tài)顯示方式。 在多位LED顯示時(shí),為了簡(jiǎn)化電路,降低成本,將所有位的段選線并聯(lián)在一起,由一個(gè)8位I/O口控制,而共陰極點(diǎn)或共陽極點(diǎn)分別由響應(yīng)的I/O口線

10、控制。顯示模塊是將顯示緩沖區(qū)的數(shù)值送到LED顯示的功能模塊,顯示緩沖區(qū)是由六個(gè)字節(jié)構(gòu)成,分別保存小時(shí)的高位和低位,分鐘的高位和低位,秒鐘的高位和低位。硬件上由六個(gè)LED構(gòu)成,軟件上由掃描顯示的方法實(shí)現(xiàn)。35系統(tǒng)原理圖 四、系統(tǒng)軟件部分設(shè)計(jì)4.1 系統(tǒng)軟件流程圖1、主程序流程圖設(shè)置初始常數(shù)置定時(shí)器模式及常數(shù)啟動(dòng)定時(shí)器讀取小時(shí)值顯示數(shù)據(jù)送緩沖開始轉(zhuǎn)換成顯示數(shù)據(jù)讀取分鐘值顯示數(shù)據(jù)送緩沖轉(zhuǎn)換成顯示數(shù)據(jù)讀取秒值顯示數(shù)據(jù)送緩沖轉(zhuǎn)換成顯示數(shù)據(jù)調(diào)用顯示子程序主程序框圖、100us定時(shí)中斷服務(wù)程序否否否中斷入口保護(hù)現(xiàn)場(chǎng)是是否10000次計(jì)數(shù)值減1設(shè)置下次10000次計(jì)數(shù)值秒值加1秒值清0,分鐘加1分值清0,小時(shí)

11、加1小時(shí)值清0恢復(fù)現(xiàn)場(chǎng)中斷返回計(jì)數(shù)值為0到60秒到60分鐘到24小時(shí)100us定時(shí)中斷服務(wù)程序4.2源程序:CONTROL EQU 0C003HCOUNT0 EQU 0C000HCOUNT1 EQU 0C001HCOUNT2 EQU 0C002HMD8255 EQU 82H ; 8255 工作方式PA8255 EQU 8000H ; 8255 PA口輸出地址CTL8255 EQU 8003H ; 8255 控制口地址OUTBIT EQU 08002H ; 位控制口OUTSEG EQU 08004H ; 段控制口ICW1 EQU 00010011B ; 單片8259, 上升沿中斷, 要寫ICW4

12、ICW2 EQU 00100000B ; 中斷號(hào)為20HICW4 EQU 00000001B ; 工作在8086/88 方式OCW1 EQU 11111110B ; 只響應(yīng)INT0 中斷CS8259A EQU 0D000H ; 8259地址CS8259B EQU 0D001HDATA SEGMENTCNT DB 0LEDBUF DB 6 DUP (?) ; 顯示緩沖NUM DB 1 DUP (?) ; 顯示的數(shù)據(jù)DELAYT DB 1 DUP (?)HOUR DB 0MINUTE DB 0SECOND DB 0LEDMAP: ; 八段管顯示碼 DB 3FH, 06H, 5BH, 4FH, 66

13、H, 6DH, 7DH, 07H DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71HDATA ENDSCODE SEGMENT ASSUME CS:CODE, DS: DATADELAY PROC NEAR PUSH AX ; 延時(shí)子程序 PUSH CX MOV AL, 0 MOV CX, AX LOOP $ POP CX POP AX RETDELAY ENDPDISPLAYLED PROC NEAR MOV BX, OFFSET LEDBUF MOV CL, 6 ; 共6個(gè)八段管 MOV AH, 00100000B ; 從左邊開始顯示DLOOP: MOV D

14、X, OUTBIT MOV AL, 0 OUT DX,AL ; 關(guān)所有八段管 MOV AL, BX MOV DX, OUTSEG OUT DX, AL MOV DX, OUTBIT MOV AL, AH OUT DX, AL ; 顯示一位八段管 PUSH AX MOV AH, 1 CALL DELAY POP AX SHR AH, 1 INC BX DEC CL JNZ DLOOP MOV DX, OUTBIT MOV AL, 0 OUT DX,AL ; 關(guān)所有八段管 RETDISPLAYLED ENDPIENTER PROC NEAR PUSH AX PUSH DX INC SECOND M

15、OV AL, SECOND CMP AL, 60 JNE EXIT MOV SECOND, 0 INC MINUTE MOV AL, MINUTE CMP AL, 60 JNE EXIT MOV MINUTE, 0 INC HOUR MOV AL, HOUR CMP AL, 24 JNE EXIT MOV HOUR, 0EXIT: MOV DX, CS8259A MOV AL, 20H ; 中斷服務(wù)程序結(jié)束指令 OUT DX, AL POP DX POP AX IRETIENTER ENDPIINIT PROC MOV DX, CS8259A MOV AL, ICW1 OUT DX, AL M

16、OV DX, CS8259B MOV AL, ICW2 OUT DX, AL MOV AL, ICW4 OUT DX, AL MOV AL, OCW1 OUT DX, AL RETIINIT ENDPSTART PROC NEAR MOV AX, DATA MOV DS, AX MOV HOUR, 0 MOV MINUTE, 0 MOV SECOND, 0 CLI MOV AX, 0 MOV DS, AX MOV AL, 76H; 01110110B ; 計(jì)數(shù)器1,16位,方式3,二進(jìn)制 MOV DX, CONTROL OUT DX, AL MOV AX, 62500 MOV DX, COUN

17、T1 OUT DX, AL ; 計(jì)數(shù)器低字節(jié) MOV AL, AH OUT DX, AL ; 計(jì)數(shù)器高字節(jié) MOV AL, MD8255 MOV DX, CTL8255 OUT DX, AL MOV BX, 4*ICW2 ; 中斷號(hào) MOV AX, CODE SHL AX, 1 ; X 16SHL AX, 1 SHL AX, 1 SHL AX, 1 ADD AX, OFFSET IENTER ; 中斷入口地址(段地址為0) MOV BX, AX MOV AX, 0 INC BX INC BX MOV BX, AX ; 代碼段地址為0 CALL IINIT MOV AX, DATA MOV DS

18、, AX MOV CNT, 0 ; 計(jì)數(shù)值初始為0 MOV AL, CNT MOV DX, PA8255 OUT DX, AL STILP: ; 等待中斷,并計(jì)數(shù)。 MOV AL, HOUR MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+1, AL MOV

19、 AL, MINUTE MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF+2, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+3, AL MOV AL, SECOND MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF+4, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+5, AL CALL DISPLAYLED JMP LP

溫馨提示

  • 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)論