版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、路燈控制設(shè)計(jì)1 設(shè)計(jì)任務(wù)描述1.1設(shè)計(jì)題目路燈控制設(shè)計(jì)1.2設(shè)計(jì)內(nèi)容 1)天黑時(shí)路燈電亮,天亮?xí)r路燈關(guān)閉。2)用中斷模擬天黑。1.2.1 設(shè)計(jì)目的通過課程設(shè)計(jì)使學(xué)生更進(jìn)一步掌握微機(jī)原理及應(yīng)用課程的有關(guān)知識(shí),提高應(yīng)用微機(jī)解決問題的能力,加深對(duì)微機(jī)應(yīng)用的理解。通過查閱資料,結(jié)合所學(xué)知識(shí)進(jìn)行軟、硬件的設(shè)計(jì),使學(xué)生初步掌握應(yīng)用微機(jī)解決問題的步驟及方法。為以后學(xué)生結(jié)合專業(yè)從事微機(jī)應(yīng)用設(shè)計(jì)奠定基礎(chǔ)1.2.2 設(shè)計(jì)要求 1)通過KOK7和K+來輸入。2)用LED指示燈顯示結(jié)果。3)輸出為1燈亮,輸入為0燈滅。2設(shè)計(jì)思路本次微機(jī)原理課程設(shè)計(jì)我設(shè)計(jì)的是路燈控制器。通過中斷信號(hào)來使路燈點(diǎn)亮,再經(jīng)延時(shí)程序來使燈自動(dòng)
2、熄滅。然后重新回到初始狀態(tài)。 我們用到的芯片是中斷控制器8259和可編程并行接口8255這兩種芯片再外加一個(gè)LED顯示單元及開關(guān)單元。用中斷控制器8259的控制字來設(shè)置單片、邊沿觸發(fā)、非緩沖、非自動(dòng),用ICW4來設(shè)置IR7非屏蔽。設(shè)置中斷控制器8255的控制字,讓它A口輸出來顯示燈亮,。由于我們沒用到口和口,所以讓口輸入C口高低四位均輸出。設(shè)置完控制字后,再使A口輸出全為0(這時(shí)路燈初始狀態(tài)為滅),接著讓程序循環(huán)進(jìn)入空操作。當(dāng)天黑需要路燈亮?xí)r,按下中斷(代表天黑),程序從循環(huán)執(zhí)行空操作中中斷出來,使A口輸出從全為0變成全為1(這時(shí)路燈全亮),程序后面連接一個(gè)延遲子程序,來控制燈亮的時(shí)間。最后到
3、了程序該結(jié)束的時(shí)候了,A口輸出從全1再次變?yōu)槿?(這時(shí)路燈全滅,代表夜晚已過,天亮了)。這時(shí)程序本該結(jié)束了,程序結(jié)束后,又返回到中斷控制器8259這部分,這樣程序又可以通過按中斷來控制燈亮,這樣就簡(jiǎn)單又實(shí)用。 大體上程序主要分四大部分:輸入部分,中斷部分,延遲部分和輸出部分。結(jié)合所學(xué)的知識(shí)外加查找相關(guān)資料,把這幾大部分合理的連接起來,從而實(shí)現(xiàn)一個(gè)完整、功能強(qiáng)大的程序。3 主要元器件介紹3.1 所用芯片8255簡(jiǎn)介:3.1.1 外部引線D0D7為雙向數(shù)據(jù)信號(hào)線,用來傳送數(shù)據(jù)和控制字。、RD為讀信號(hào)線,與其它信號(hào)線一起實(shí)現(xiàn)對(duì)8255接口的讀操作通常接系統(tǒng)總線的IOR信號(hào)。WR為寫信號(hào)線,與其它信號(hào)
4、一起實(shí)現(xiàn)對(duì)8255的寫操作,通常接系統(tǒng)總線的IOW。CS為片選信號(hào)線,當(dāng)它為低電平(有效)時(shí),才能選中該8255芯片,也才能對(duì)8255進(jìn)行操作。、A0,A1為口地址選擇信號(hào)線。8255內(nèi)部有3個(gè)口;A口,B口,C 口,還有一個(gè)控制寄存器,它們可由程序?qū)ぶ?。A0,A1上的不同編碼可分別尋址上述3個(gè)口和一個(gè)控制寄存器,具體規(guī)定如下: A1 A0 選擇 0 0 A口0 1 B口1 0 C口1 1 控制寄存器通常 A0,A1分別接系統(tǒng)總線A0和 A1,它們與CS一起來決定8255的接口地址。RESET為復(fù)位輸入信號(hào)。此端上的高電平可使8255復(fù)位。復(fù)位后,8255的A口,B口,C 口均被定為輸入狀態(tài)。
5、PA0PA7為A口的8條輸入輸出信號(hào)線。PB0PB7為B口的8條輸入輸出信號(hào)線。PC0PC78條線根據(jù)其工作方式可作為數(shù)據(jù)的輸入或輸出線,也可以用作控制信號(hào)的輸出或狀態(tài)信號(hào)的輸入線。3.1.2 8255有三種工作方式:方式0、方式1和方式2。 :方式0-基本輸入/輸出在此工作方式下,每個(gè)口都作為基本的輸入輸出口,C口的高4位和低4位以及A口和B口都可獨(dú)立地設(shè)置為輸入口和輸出口。在此工作方式下:輸出的數(shù)據(jù)被鎖存,而輸入的數(shù)據(jù)不被鎖存。 而且,在方式0之下,C口還有按位置位和復(fù)位的能力。 :方式1-選通輸入/輸出 此工作方式下,三個(gè)端口分為A、B兩組,A、B兩個(gè)口仍用作數(shù)據(jù)輸入輸出口,而C口分成兩
6、部分,分別作為A口和B口的聯(lián)絡(luò)信號(hào)。在8255A中,聯(lián)絡(luò)信號(hào)是3位,兩個(gè)數(shù)據(jù)口,共用去C口的6位,剩余的兩位仍可作為數(shù)據(jù)位使用。:方式2-雙向選通輸入/輸出此工作方式只限于A組使用,在A口工作于雙向輸入輸出方式時(shí),要利用C口的5條線才能實(shí)現(xiàn)此時(shí)B口子能工作在方式0或方式1,而C口剩下的3條線可作為輸入輸出線使用或用作B口方式1之下的控制線。當(dāng)A口工作在方式2時(shí),B口可以在方式0或方式1工作。 8255方式0之下的輸入輸出組合A 組B組A口(PA0-PA7)C口(PC4-PC7)B口(PB0-PB7)C口(PC0-PC3)入入入入入入入出入入出入入入出出入出入入入出入出入出出入入出出出出入入入出
7、入入出出入出入出入出出出出入入出出入出出出出入出出出出3.1.3 8255的尋址:8255占外設(shè)編址的4個(gè)地址,即A口,B口,C口和控制寄存器各占一個(gè)外設(shè)接口地址。對(duì)同一個(gè)地址分別可以進(jìn)行讀寫操作。例如,讀A口可將A口的數(shù)據(jù)讀出;寫A口可將CPU的數(shù)據(jù)寫入A口并輸出。8255的尋址_CSA1A0_IOR_IOW操作00001讀A口00101讀B口01001讀C口00010寫A口00110寫B(tài)口01010寫C口01110寫控制寄存器1XX11D0D7三態(tài)8255方式0基本功能 :方式0是基本輸入輸出方式。其功能如下: 進(jìn)行數(shù)據(jù)傳送時(shí)不需要聯(lián)絡(luò)信號(hào)。 任一設(shè)置成方式0的端口均可設(shè)置成輸入或輸出。
8、輸出具有鎖存功能。 輸入沒有鎖存功能。 每一個(gè)8位口和4位口均可設(shè)置成方式0。如果所有的8位口和4位口都設(shè)置成方端口是否具有鎖存功能是需要注意的。如果具有鎖存功能,則8255A可作為CPtJ與外設(shè)之間數(shù)據(jù)傳送的中轉(zhuǎn)站。這時(shí),CPU與外設(shè)之間數(shù)據(jù)傳送是異步的。如果沒有鎖存功能,則8255A作為數(shù)據(jù)通道,僅起單向三態(tài)門的作用。這時(shí),CPU與外設(shè)之間數(shù)據(jù)傳送是同步的。方式0的輸出具有鎖存功能,而輸入沒有鎖存功能。1 405 358255A10 3015 2520 21PA3 PA4PA2 PA5PA1 PA6PA0 PA7RD WRCS RESET地 D0A1 D1A0 D2PC7 D3PC6 D4
9、PC5 D5PC4 D6PC0 D7PC1 VCCPC2 PB7PC3 PB6PB0 PB5PB1 PB4PB2 PB3可編程并行接口8255引線圖D7 D6 D5 D4 D3 D2 D1 D0XXX 無關(guān) 置/復(fù)位 0 0:復(fù)位1:置位C口的位選擇D3 D2 D1選擇000PC0001PC1010 PC2011 PC3100 PC4101 PC5110 PC6111 PC7C口的按位操作控制字格式A組控制 B組控制76543210控制C口低四位1:輸入0:輸出控制B口八位1:輸入0:輸出方式選擇0:方式01:方式1控制C口高四位0:輸出1:輸入控制A口8位0:輸出1:輸入方式選擇00:方式0
10、10:方式111:方式2功能控制0:位操作1:方式選擇8255的控制字格式3.2 所用芯片8259簡(jiǎn)介:3.2.1 8259的外部引線D0D7為雙向數(shù)據(jù)信號(hào)線,與系統(tǒng)總線的數(shù)據(jù)線相連接。WR、RD為寫和讀控制信號(hào),與系統(tǒng)總線的讀寫信號(hào)相連接。CS為片選信號(hào),只有CS為低電平時(shí),才能實(shí)現(xiàn)CPU對(duì)8259的寫或讀操作。A0是8259內(nèi)部寄存器的選擇信號(hào)。它的不同狀態(tài),對(duì)應(yīng)不同的內(nèi)部寄存器。INT為8259的中斷請(qǐng)求輸出信號(hào)。可直接接到CPU的INTR輸入端。INTA為中斷響應(yīng)輸入信號(hào)。在中斷響應(yīng)過程中CPU的中斷響應(yīng)信號(hào)由此端進(jìn)入8259.CAS0CAS2為級(jí)聯(lián)控制線。當(dāng)多片8259級(jí)聯(lián)工作時(shí),其
11、中一片為主控級(jí)聯(lián)芯片,其他均為從屬級(jí)芯片。主控級(jí)芯片的CAS0CAS2作為輸出,連接到個(gè)從屬級(jí)芯片的CAS0CAS2上。當(dāng)某從屬8259提出中斷請(qǐng)求時(shí),主控級(jí)8259通過CAS0CAS2送出相應(yīng)的編碼給從屬級(jí),是從屬級(jí)中斷被允許。SP/EN為雙功能引線。當(dāng)工作在緩沖模式時(shí),它為輸出,用以控制緩沖傳送;在非緩沖模式時(shí),它用作輸入。當(dāng)SP=1時(shí),指定8259芯片為主控級(jí);SP=0時(shí),指定它為從屬級(jí)。IR0IR7中斷請(qǐng)求輸入端。其他外設(shè)中斷請(qǐng)求可加在8259的IR0IR7的任一端上。該信號(hào)可以使上升沿有效,也可以時(shí)高電平有效。8259的內(nèi)部有多個(gè)寄存器,其中包括:中斷請(qǐng)求寄存器(IRR),其內(nèi)部保存
12、著所有外部中斷源IR0IR7的中斷請(qǐng)求狀態(tài)。任何一個(gè)中斷源發(fā)生請(qǐng)求,其相應(yīng)位為1;一旦得到響應(yīng),則相應(yīng)位復(fù)位。中斷服務(wù)寄存器(ISR),用來保存所有正在服務(wù)的中斷源。當(dāng)8259受到中斷結(jié)束命令時(shí),其寄存的狀態(tài)進(jìn)行調(diào)整。中斷屏蔽寄存器(IMR),保存著被屏蔽的所有中斷源。其屏蔽功能可用命令修改。1 282 273 264 255 246 237 8259 228 219 2010 1911 1812 1713 1614 15CS VCCWR A0RD INTAD7 IR7D6 IR6D5 IR5D4 IR4D3 IR3D2 IR2D1 IR1D0 IR0CAS0 INTCAS1 SP/EN地 C
13、AS28259引線圖3.2.2 8259的內(nèi)部控制字CPU命令分為兩大類:一類時(shí)初始化命令字(ICW),主要使8259處于初始狀態(tài);另一類是操作命令字(OCW),使處于初始狀態(tài)的8259去執(zhí)行具體的某種操作方式。操作命令字可在8259初始化后的任何時(shí)刻寫入。(1) 初始化命令字初始化命令字ICW1A0=0為偶地址。在A0=0,D4=1時(shí)為寫入。A00D7 D6 D5 D4 D3 D2 D1 D01LTIMASIC4 1:需要ICW4 0:不需要ICW4 低8編程位 1:?jiǎn)纹?259下,中斷低口 0:多片8259級(jí)聯(lián)8080/85模式 1:間隔為4 0:間隔為8 僅用于8080、85模式 1:電
14、平觸發(fā) 0:邊沿觸發(fā)初始化命令字ICW1初始化命令字ICW2A0=1為奇地址。初始化命令字ICW3A0=1為奇地址。該字是用于多片8259級(jí)聯(lián)的。在主控8259中,ICW3的每一位對(duì)應(yīng)一個(gè)IR輸入。哪一位為1,表示相應(yīng)的IR接從屬8259.從屬8259的ICW3的最低三位的編碼用以表示該從屬8259接至主控8259的IR編號(hào)。主控ICW3A01D7 D6 D5 D4 D3 D2 D1 D0 1:相應(yīng)IR接從屬8259 0:不接8259 從屬ICW3A0 1D7 D6 D5 D4 D3 D2 D1 D000000 3位編碼對(duì)應(yīng)從屬8259 接主控的IR編號(hào)初始化命令字ICW3初始化命令字ICW4
15、 A0=1為奇地址。A01D7 D6 D5 D4 D3 D2 D1 D0000SFNMBUFM/SAEOIPM 1:8086/88模式 0:8088/85模式 1:自動(dòng)EOI 0:非自動(dòng)結(jié)束 0X:非緩沖方法 10:緩沖方式從屬片 11:緩沖方式主控片 1:特殊全嵌套方式 0:一般嵌套方式初始化命令字ICW4(2)操作命令字OCW 操作命令字OCW1。當(dāng)這個(gè)8位的操作命令字的某一位置1時(shí),它就屏蔽相對(duì)的IR輸入。操作命令字OCW2。A00D7 D6 D5 D4 D3 D2 D1 D0RSLEOI00L2L1L0 編碼對(duì)應(yīng)IR的最低優(yōu)先級(jí)0 0 1 一般EOI 中斷結(jié)束命令0 1 1 特殊EOI
16、 1 0 1 循環(huán)優(yōu)先級(jí)的一般EOI命令 1 0 0 在自動(dòng)EOI下置循環(huán)優(yōu)先級(jí) 自動(dòng)循環(huán)0 0 0 在自動(dòng)EOI下清循環(huán)優(yōu)先級(jí) 1 1 1 循環(huán)優(yōu)先級(jí)的特殊EOI命令 1 1 0 設(shè)置優(yōu)先級(jí) 特殊循環(huán) 0 1 0 無效操作命令字OCW2該命令字用來設(shè)置優(yōu)先級(jí)是否循環(huán)、循環(huán)的方式及中斷結(jié)束的方式。R為優(yōu)先級(jí)循環(huán)控制位,R=1為循環(huán)優(yōu)先級(jí);R=0為固定優(yōu)先級(jí)。L2、L1、L0為系統(tǒng)最低優(yōu)先級(jí)編碼,用它們來指定哪個(gè)IR優(yōu)先級(jí)最低。EOI是中斷結(jié)束命令。OCW2控制格式D7 D6 D5 D4 D3 D2 D1 D0功能R SL EOI 0 0 L2 L1 L00 0 1 0 0 - 一般中斷結(jié)束EO
17、I命令,使正執(zhí)行的IS復(fù)位0 1 1 0 0 L2 L1 L0特殊結(jié)束SEIO命令,使L2 L1 L0指定的IS復(fù)位1 0 1 0 0 -一般自動(dòng)循環(huán)命令,使正執(zhí)行的IS復(fù)位且優(yōu)先級(jí)最低1 0 0 0 0 -設(shè)置自動(dòng)循環(huán)的命令0 0 0 0 0 -清除自動(dòng)循環(huán)的命令,變?yōu)楣潭▋?yōu)先級(jí)1 1 0 0 0 L2 L1 L0優(yōu)先級(jí)設(shè)置命令,L2 L1 L0所指定的IR優(yōu)先級(jí)最低1 1 1 0 0 L2 L1 L0使L2 L1 L0所指定的IS復(fù)位并變?yōu)樽畹蛢?yōu)先級(jí)0 1 0 -無效操作命令字OCW3。A00D7 D6 D5 D4 D3 D2 D1 D00ESMMSMM01PRRRIS 0X:無效0X:無
18、效 10:可讀IRR10:復(fù)位特殊屏蔽 11:可讀ISR11:設(shè)置特殊屏蔽 1:允許查詢 0:不查詢操作命令字OCW38259寄存器及命令的訪問控制A0D4D3RDWRCS操作0010讀出ISR、IRR的內(nèi)容1010讀出IMR的內(nèi)容000100寫入OCW2001100寫入OCW301X100寫入ICW11XX100寫入OCW1、ICW2、ICW3、ICW43.2.3 8259的初始化順序?qū)懭隝CW1寫入ICW2寫入ICW4是級(jí)聯(lián)工作?寫入ICW3需要ICW4?YYNN準(zhǔn)備好接收中斷請(qǐng)求4 源程序清單及注釋SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCO
19、DE SEGMENTASSUME CS:CODESTART: PUSH DSMOV AX, 0000H ;初始化中斷向量表MOV DS, AXMOV SI, 003CHMOV DX, OFFSET LIGHT ;送偏移量 MOV SI,DXMOV AX,SEG LIGHT ;送段地址MOV SI,003EH MOV SI,AXCLI ;關(guān)中斷POP DS;初始化主片8259SET8259: MOV AL, 13HOUT 20H, AL ;ICW1 邊沿觸發(fā) 單片 要ICW4MOV AL, 08HOUT 21H, AL ;ICW2 中斷向量碼MOV AL, 01HOUT 21H, AL ;ICW
20、3 非緩沖 非自動(dòng) 8088MOV AL, 7FHOUT 21H, AL ;ICW4 OCW1 IR7非屏蔽STI ;開中斷;初始化芯片8255SET8255: MOV DX,0646H MOV AL,82H OUT DX,AL ;A口輸出,B口輸入,C口輸出 MOV DX,0640H MOV AL,00H OUT DX,AL;路燈初始都是滅的AA1: NOP JMP AA1LIGHT: PUSH DX PUSH AX ;保護(hù)現(xiàn)場(chǎng)LDCT: MOV DX,0642H ;路燈點(diǎn)亮程序 IN AL,DX CMP AL,01H MOV AL,0FFH MOV DX,0640H OUT DX,AL ;天黑路燈全亮 MOV CX,3CET3: CALL SOFTDLY ;點(diǎn)亮?xí)r間模擬 LOOP CET3 JMP ST
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江海洋大學(xué)《電機(jī)學(xué)2》2023-2024學(xué)年第一學(xué)期期末試卷
- 高性能纖維防護(hù)制品研發(fā)生產(chǎn)項(xiàng)目可行性研究報(bào)告寫作模板-備案審批
- 中國(guó)計(jì)量大學(xué)現(xiàn)代科技學(xué)院《控制電機(jī)》2023-2024學(xué)年第一學(xué)期期末試卷
- 中央財(cái)經(jīng)大學(xué)《航空自動(dòng)化控制》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)師生讀書評(píng)價(jià)制度
- 昭通職業(yè)學(xué)院《臨床藥理學(xué)(醫(yī)學(xué)檢驗(yàn))》2023-2024學(xué)年第一學(xué)期期末試卷
- 云南現(xiàn)代職業(yè)技術(shù)學(xué)院《大數(shù)據(jù)思維與決策》2023-2024學(xué)年第一學(xué)期期末試卷
- 企業(yè)市值管理中資本結(jié)構(gòu)優(yōu)化的研究
- 合規(guī)性旅游業(yè)務(wù)培訓(xùn)模板
- DB2201T 65.1-2024 肉牛飼養(yǎng)技術(shù)規(guī)范 第1部分:種牛
- JBT 6434-2024 輸油齒輪泵(正式版)
- GIS設(shè)備帶電補(bǔ)氣作業(yè)指導(dǎo)書
- 建筑工地春節(jié)留守人員安全技術(shù)交底
- 小學(xué)二年級(jí)除法口算1200道(81以內(nèi)整除)
- 2024年新“國(guó)九條”及配套政策要點(diǎn)解讀分析報(bào)告
- 浙教版八年級(jí)上數(shù)學(xué)易錯(cuò)題
- 病理活體組織檢查
- 建筑施工進(jìn)度管理-項(xiàng)目進(jìn)度管理概述(施工組織)
- 新生入職紀(jì)委培訓(xùn)課件
- 心臟搭橋手術(shù)與心臟搭橋手術(shù)知情同意書
- 2024年年度述職報(bào)告總結(jié)(四篇合集)
評(píng)論
0/150
提交評(píng)論