微機(jī)原理設(shè)計(jì)報告_第1頁
微機(jī)原理設(shè)計(jì)報告_第2頁
微機(jī)原理設(shè)計(jì)報告_第3頁
微機(jī)原理設(shè)計(jì)報告_第4頁
微機(jī)原理設(shè)計(jì)報告_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、微機(jī)原理課程設(shè)計(jì)題 目: I/O接口卡設(shè)計(jì)學(xué) 院: 儀器與電子學(xué)院 專 業(yè): 測控技術(shù)與儀器 指導(dǎo)教師: 陳 鴻 成員姓名:設(shè)計(jì)日期:2015.6.15-2015.6.28目錄一 設(shè)計(jì)題目及設(shè)計(jì)要求1. 設(shè)計(jì)內(nèi)容2. 設(shè)計(jì)要求二 設(shè)計(jì)總體方案三 主要元件1. IBM PC/XT總線簡介2. ISA總線簡介3. 8255芯片簡介4. 驅(qū)動器5. LED顯示器四工作原理五硬件電路六程序設(shè)計(jì)及流程圖1.流程圖2.程序設(shè)計(jì)七設(shè)計(jì)心得八參考文獻(xiàn)1、 設(shè)計(jì)題目及設(shè)計(jì)要求:1. 設(shè)計(jì)一塊I/O卡,該卡具有3個8位I/O口(A、B、C口),利用該I/O卡控制該卡控制一個四位的LED顯示器,該卡插在PC機(jī)的IM

2、B-PC擴(kuò)展總線插槽上(ISA),選用8255接口芯片2. 設(shè)計(jì)要求:畫出電路原理圖,說明工作原理,編寫利用該接口卡對鍵盤上鍵入的數(shù)字進(jìn)行顯示的程序(當(dāng)回車鍵按下前,如果鍵入的數(shù)字的次數(shù)大于4時顯示最后的4位數(shù))二設(shè)計(jì)整體方案該接口卡的主芯片是8255芯片,將ISA總線上的地址線A0-A19經(jīng)過譯碼作為8255的片選信號,IOR、IOW分別作為8255的讀寫信號。四位LED顯示器采用共陰極接法,將8255的A端口的8個引腳經(jīng)過驅(qū)動器與LED的a-h相連,用C端口的低四位來控制那個LED亮,B端口不使用。三主要元件1.IBM PC/XT總線簡介總線在PC/XT機(jī)的底板上共有8個插頭,稱為IMB

3、PC/XT總線。PC/XT總線在每個插槽(擴(kuò)展槽)配有62個引腳代表各種不同的信號。IBM PC/XT總線的62條引線包括20位地址線、8位數(shù)據(jù)線、21根控制線、2根狀態(tài)線和11根輔助線及電源線。每一個插槽對應(yīng)的引腳均有相同的意義,因此所有的接口卡可插于任何一個插槽上。引腳間隔為2.54mm。2.ISA總線簡介 ISA總線是IBM PCAT機(jī)(CPU是80286)所用的系統(tǒng)總線,這是一個16位兼8位的總線標(biāo)準(zhǔn)。如果忽略標(biāo)準(zhǔn)化細(xì)節(jié),則可認(rèn)為16位ISA總線就是PCAT總線。由于IBM PCAT與IBM PC、IBM PCXT機(jī)(CPU都是8088

4、)所用的Pc總線兼容,所以可認(rèn)為8位ISA總線(16位ISA總的低8位部分)就是PC總線。ISA總線的主插槽與IBM總線的插槽兼容,如下:注意事項(xiàng):(1)當(dāng)設(shè)計(jì)非DMA方式的IO接口時,應(yīng)把AEN為低作為該接口工作的使能條件,以確保在總線上進(jìn)行DMA傳送時該接口不工作,否則DMA傳送時所發(fā)出的地址與該接口設(shè)計(jì)地址相同時該接口會誤操作。 (2)系統(tǒng)對ISA總線上的IO端口地址采用部分譯碼方法,只譯碼A9AO或A10A0,在選擇接口地址時應(yīng)避開系統(tǒng)已占用的地址以及它們的重疊區(qū)。(3)原則上講,在用戶自行設(shè)計(jì)接口插卡時,反未被占用的地址端口都可以使用,但要考慮到系統(tǒng)的現(xiàn)存配置情況,對端口地

5、址的占用要留有余地,以免發(fā)生地址沖突。一般用戶可使用300H-31FH的地址,這些地址是留作實(shí)驗(yàn)卡用的。3.8255芯片簡介 8255是可編程并行IO口接口芯片。如下圖所示:(1)8255具有24個可編程設(shè)置的I/O口,即3組8位的I/O口分別為A口,B口和C口.它們又可分為兩組12位的I/O口,A組包括A口及C口(高4位,PC4PC7),B組包括B口及C口(低4位,PC0PC3).(2)8255內(nèi)部有4個寄存器:分別為寄存器A、B、C和控制寄存器。A、B、C寄存器的數(shù)據(jù)就是引腳PA7PA0、PB7PB0、PC7PC0上輸入或輸出的數(shù)據(jù)。其中,1PA0PA7:端口A輸入輸出線,一個8

6、位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個8位的數(shù)據(jù)輸入鎖存器。2PB0PB7:端口B輸入輸出線,一個8位的I/O鎖存器, 一個8位的輸入輸出緩沖器。(3)  PC0PC7:端口C輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/緩沖器,一個8位的數(shù)據(jù)輸入緩沖器。端口C可以通過工作方式設(shè)定而分成2個4位的端口, 每個4位的端口包含一個4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號輸出或狀態(tài)信號輸入端口。而控制寄存器的數(shù)據(jù)則表明PA、PB、PC的工作方式。通過CS、A0、A1、RD和WR對4個寄存器進(jìn)行操作。CS為低電平時選通8255;A1、A0為地址選通。具體如

7、下:當(dāng)A0=0,A1=0時,PA口被選擇;     當(dāng)A0=0,A1=1時,PB口被選擇;     當(dāng)A0=1,A1=0時,PC口被選擇;     當(dāng)A0=1.A1=1時,控制寄存器被選擇. RD和WR為讀、寫信號:RD為低、WR為高時為讀方式,RD為高、WR為低時為寫方式。 (3)8255引腳功能 RESET:復(fù)位輸入線,當(dāng)該輸入端外于高電平時,所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式

8、。  CS:芯片選擇信號線,當(dāng)這個輸入引腳為低電平時,即/CS=0時,表示芯片被選中,允許8255與CPU進(jìn)行通訊;/CS=1時,8255無法與CPU做數(shù)據(jù)傳輸。  RD:讀信號線,當(dāng)這個輸入引腳為低電平時,即/RD=0且/CS=0時,允許8255通過數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)。  WR:寫入信號,當(dāng)這個輸入引腳為低電平時,即/WR=0且/CS=0時,允許CPU將數(shù)據(jù)或控制字寫入8255。D0D7:三態(tài)雙向數(shù)據(jù)總線,8255與CPU數(shù)據(jù)傳送的通道,當(dāng)CPU 執(zhí)行輸入輸出指令時,通過它實(shí)現(xiàn)8位數(shù)

9、據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。(4)8255有三種基本的工作方式:方式0(基本的輸入輸出方式),方式1(選通輸入輸出方式),方式2(雙向傳輸方式)。具體如下:1方式0:這種方式不需要任何選通信號。A口、B口及C口的兩個4位口中的任何一個端口都可以被設(shè)定為輸入或輸出。輸出鎖存,輸入不鎖存;2方式1:這種方式下,A口、B口、C口分為兩組。A組包括A口和C口的高4位,A口可由編程設(shè)定為輸入口或輸出口,C口的高四位則用來作為輸入/輸出操作的控制和同步信號;B組包括B口和C口的低4位,B口可由編程設(shè)定為輸入口或輸出口,C口的低四位則用來作為輸入/輸出操作的控制和同步信號。A口和B口

10、的輸入輸出數(shù)據(jù)都被鎖存;3方式2:這種方式下,A口為8位雙向總線口,C口PC3PC7用來作為輸入/輸出操作的控制和同步信號;B口和C口的PC0PC2則可編程為方式0或方式1工作。4.驅(qū)動器74LS07同向能夠驅(qū)動共陰極起端數(shù)碼管顯示,8255C端口為LED顯示器的控制端口需用74LS04進(jìn)行反向驅(qū)動。5.LED顯示LED數(shù)碼管的主要部分是七段發(fā)光管,分別稱為abcdefg,通過七個發(fā)光段的不同組合,可以顯示0-9和A-F共16個字母數(shù)字,從而實(shí)現(xiàn)16進(jìn)制的顯示。LED數(shù)碼管有兩種結(jié)構(gòu),分為共陽極接法和共陰極接法,如為共陰極結(jié)構(gòu),各字段陰極控制端共接低電平,而各段陽極控制端凡接高電平者便發(fā)光。四

11、工作原理  首先由I/O卡的RESET將8255A芯片復(fù)位,由微機(jī)系統(tǒng)的擴(kuò)展槽中20根地址線來決定8255A片選信號是否選通,由其工作原理圖可知A端口地址300H,B端口地址301H,C端口地址302H,控制口地址303H。(為避免地址沖突,因此選用300H-303H)。經(jīng)MSDOS功能調(diào)用從鍵盤輸入一串字符,(調(diào)用OAH號功能,輸入的字符串可達(dá)254個字符,其入口參數(shù)為DS:DX,在DX第一個字節(jié)必須存放輸入字符的最大字節(jié)量,第二個單元存放是實(shí)際輸入字符的個數(shù),字符串本身從第三個字節(jié)開始有效,由終止回車符生成的碼作為穿的最后一個字符輸入。),通過軟件設(shè)計(jì),不管輸入多少個數(shù)

12、,始終只顯示最后輸入的四個數(shù)。同時也將由鍵盤輸入的四個ASCII碼數(shù)轉(zhuǎn)換成相應(yīng)的BCD碼,取個位數(shù),將此BCD碼轉(zhuǎn)換成字形碼,在將字形碼送入到8255A的A端口,而將狀態(tài)字送入C端口,用來控制哪一個顯示器亮,并調(diào)用5ms延遲程序。依此類推,取十位,百位,千位進(jìn)行相同的操作,只是送C端口的數(shù)據(jù)不同,依次為O7H,O5H,03H、O1H。由于四個顯示器依次點(diǎn)亮的時間間隔短,利用發(fā)光管的余暉和人眼視覺的暫留作用,使人感覺好像4位LED顯示器都在顯示(動態(tài)顯示)。五硬件原理圖:六程序設(shè)計(jì)及流程圖1.流程圖2.程序設(shè)計(jì)DATA SEGMENT STRING1 DB “please input char”

13、STRING2 DB 100 DUP (?) STRING3 DB 100 DUP (?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART : MOV AX,DATA MOV DS,AX ; 數(shù)據(jù)段寄存器的初始化 MOV AL,80H ; 8255的初始化 MOV DX, 300H OUT DX, AL LEA DX, OFFSET STRING1 MOV AH,09H ; 顯示字符串功能 INT 21HNEXT1: LEA DX, OFFSET STRING2MOV AH,0AH ; 從鍵盤讀入數(shù)字INT 21H MOV CL,STRING2+

14、1 ;實(shí)際讀入的數(shù)字的個數(shù)送至CL CMP CL,0 JZ NEXT1 ; 沒有讀入數(shù)字則繼續(xù)等待 MOV SI,DXADD CL,1MOV CH,0 ADD SI,CX MOV AL,SI ; 個位數(shù)轉(zhuǎn)化為BCD碼 AND AL,0FHLEA DI,OFFSET STRING3 MOV DI,AL DEC SI ; 十位數(shù)轉(zhuǎn)化為BCD碼 MOV AL,SI AND AL,0FH MOV DI+1,AL DEC SI ; 百位數(shù)轉(zhuǎn)化為BCD碼 MOV AL,SI AND AL,0FH MOV DI+2,AL DEC SI ; 千位數(shù)轉(zhuǎn)化為BCD碼MOV AL,SI AND AL,0FH MOV

15、 DI+3,ALNEXT2: LEA BX, OFFSET LEDADD ; 將千位數(shù)字轉(zhuǎn)化為對應(yīng)的字型碼 MOV AL,DI+3 XLAT ; 查表轉(zhuǎn)換 MOV DX, 302H OUT DX,01H ; 將與之對應(yīng)的數(shù)碼管的位選打開 OUT 300H,AL ; 將轉(zhuǎn)換后的字型碼送A口 CALL DELAY ; 調(diào)用5ms的延時子程序 LEA BX, OFFSET LEDADD ; 將百位數(shù)字轉(zhuǎn)化為對應(yīng)的字型碼 MOV AL,DI+2 XLAT MOV DX,302H OUT DX,03H OUT 300H,AL CALL DELAY LEA BX, OFFSET LEDADD ; 將十位數(shù)

16、字轉(zhuǎn)化為對應(yīng)的字型碼 MOV AL,DI+1 XLAT MOV DX,302H OUT DX,05H OUT 300H,AL CALL DELAY LEA BX, OFFSET LEDAD; 將個位數(shù)字轉(zhuǎn)化為對應(yīng)的字型碼 MOV AL,DI XLAT MOV DX,302H OUT DX,07H OUT 300H,AL CALL DELAY LOOP NEXT2DELAY PROC ; 延時子程序 PUSH BX PUSH CX MOV CX,4167NEXT3: LOOP NEXT3 POP CX POP BX RETDELAY ENDPLEDADD: DB 40HDB 79H DB 24H

17、 DB 30H DB 19H DB 12H DB 02H DB 78H DB 00H DB 10H CODE ENDS END START七課程設(shè)計(jì)心得: 通過這次課程設(shè)計(jì),我們受益匪淺。最大的收獲就是將理論與實(shí)際相結(jié)合,但同時也知道了自己的操作能力不行,希望以后加強(qiáng)這方面的鍛煉。在做完這個設(shè)計(jì)后發(fā)現(xiàn)自己所學(xué)知識有限覺的慚愧,以后會加強(qiáng)對這方面的知識的學(xué)習(xí)。 本次設(shè)計(jì)過程中,我們了解了計(jì)算機(jī)控制技術(shù)發(fā)展史,I/O接口、8255芯片、發(fā)展和使用等。使我鞏固了在課堂上學(xué)到的東西,加深了印象。 本次課程設(shè)計(jì),同時也 使我們進(jìn)一步學(xué)習(xí)與理解計(jì)算機(jī)控制系統(tǒng)的構(gòu)成原理、接口電路與應(yīng)用程序,還進(jìn)一步了解了波形發(fā)生器的原理及匯編語言的應(yīng)用,加深了自己對理論知識的理解,提高了動手能力,獨(dú)立分析問題、解決問題能力,協(xié)調(diào)能力和創(chuàng)造性思維能力。提高了在應(yīng)用方面的實(shí)技踐能,樹立了嚴(yán)謹(jǐn)?shù)目茖W(xué)作風(fēng)。通過電路和程序的設(shè)計(jì)、安裝、調(diào)試、整理資料等環(huán)節(jié),初步掌握工程設(shè)計(jì)方法和組織實(shí)踐的基本技能,逐步熟悉開展科學(xué)實(shí)踐的程序和方法。通過課程設(shè)計(jì)要實(shí)現(xiàn)以下兩個目標(biāo):第一,讓學(xué)生初步掌握計(jì)算機(jī)控制技術(shù)的試驗(yàn)、設(shè)計(jì)方法。即學(xué)生根據(jù)設(shè)計(jì)要求和性能參數(shù),查閱文獻(xiàn)資料,收集、分析類似電路的性能,并通過組裝調(diào)試等實(shí)踐活動,使電路達(dá)到性能指標(biāo);第二

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論