中南大學(xué) 微機報告_開關(guān)控制燈課件_第1頁
中南大學(xué) 微機報告_開關(guān)控制燈課件_第2頁
中南大學(xué) 微機報告_開關(guān)控制燈課件_第3頁
中南大學(xué) 微機報告_開關(guān)控制燈課件_第4頁
中南大學(xué) 微機報告_開關(guān)控制燈課件_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、報告名稱: 開關(guān)控制燈設(shè)計 姓 名: 學(xué) 號: 專業(yè)班級: 指導(dǎo)老師: 彭春華 完成日期: 2015年12月 目錄一、課程設(shè)計的任務(wù)、性質(zhì)與目的2二、課程設(shè)計的基本要求2三、開關(guān)控制燈的主要功能、作用及主要性能指標(biāo)3四、開關(guān)控制燈的總體設(shè)計34.1芯片選擇、介紹及端口選擇34.2硬件原理圖84.3實驗內(nèi)容8五、實驗結(jié)果9六、實驗總結(jié)106.1實驗中遇到的問題106.2實驗心得體會11七、源程序11八、參考文獻(xiàn)14一、課程設(shè)計的任務(wù)、性質(zhì)與目的隨著科學(xué)技術(shù)迅速發(fā)展,理工科大學(xué)生不僅需要掌握計算機方面的基本理論知識,而且還需要掌握基本的實驗技能及一定的科學(xué)研究能力。通過課程設(shè)計,使學(xué)生鞏固和加深微

2、型計算機原理理論知識,通過實踐進一步加強學(xué)生獨立分析問題和解決問題的能力、綜合設(shè)計及創(chuàng)新能力的培養(yǎng),同時注意培養(yǎng)學(xué)生實事求是、嚴(yán)肅認(rèn)真的科學(xué)作風(fēng)和良好的實驗習(xí)慣,為今后工作打下良好的基礎(chǔ)。計算機原理與接口課程課程設(shè)計結(jié)合教學(xué)內(nèi)容,從應(yīng)用的角度出發(fā),進行三類課程設(shè)計,分別分為:匯編語言程序設(shè)計、微機標(biāo)準(zhǔn)接口課程設(shè)計和接口技術(shù)課程設(shè)計。二、課程設(shè)計的基本要求1熟練掌握匯編語言的程序設(shè)計;2熟練掌握各種編程接口片的編程應(yīng)用3通過實驗方法掌握各種電路芯綜合分析與設(shè)計方法。三、開關(guān)控制燈的主要功能、作用及主要性能指標(biāo)本課程設(shè)計任務(wù)是設(shè)計用5個開關(guān)來控制八個燈,運用8086和8255等設(shè)計一個由五個開關(guān)三

3、種狀態(tài)控制八個不同燈的亮暗狀態(tài)的系統(tǒng)??捎?255與8086的連接來實現(xiàn)此功能。當(dāng)沒有開關(guān)打開時,8個燈不亮;當(dāng)打開開關(guān)K1時,8個燈從右往左逐個亮,表現(xiàn)為流水燈;當(dāng)打開開關(guān)K2時,8個燈從左到右逐個亮,表現(xiàn)為流水燈;當(dāng)打開開關(guān)K3時,8個燈全部一閃一滅;當(dāng)打開開關(guān)K4時,從外到內(nèi)依次閃;當(dāng)打開開關(guān)K5時,位置為奇數(shù)的燈先亮,然后在偶數(shù)燈一起亮,表現(xiàn)為先奇數(shù)位燈和偶數(shù)位燈輪流閃。四、開關(guān)控制燈的總體設(shè)計4.1芯片選擇、介紹及端口選擇1.采用8255A實現(xiàn)對信號燈的控制(PB0PB7用于連接LED管,PC0-PC7做開關(guān)控制);2.8255A 的端口地址為:端口A-70H、端口B-71H、端口C

4、-72H、控制端口-73H8255A芯片介紹:并行接口是以數(shù)據(jù)的字節(jié)為單位與I/O 設(shè)備或被控制對象之間傳遞信息。CPU 和接口之間的數(shù)據(jù)傳送總是并行的,即可以同時傳遞8 位、16 位、32 位等。8255 可編程外圍接口芯片是Intel 公司生產(chǎn)的通用并行I/O 接口芯片,它具有A、B、C 三個并行接口,用+5V 單電源供電,能在以下三種方式下工作:方式0-基本輸入/出方式、方式1-選通輸入/出方式、方式2-雙向選通工作方式。8255 的內(nèi)部結(jié)構(gòu)及引腳如圖1 所示,8255 工作方式控制字和C 口按位置位/復(fù)位控制字格式如圖2所示。8255是Intel公司生產(chǎn)的可編程并行I/O接口芯片,有3

5、個8位并行I/O口。具有3個通道3種工作方式的可編程并行接口芯片(40引腳)。 其各口功能可由軟件選擇,使用靈活,通用性強。8255可作為單片機與多種外設(shè)連接時的中間接口電路。 8255的內(nèi)部結(jié)構(gòu)以及引腳: 1)與CPU連接部分 根據(jù)定義,8255能并行傳送8位數(shù)據(jù),所以其數(shù)據(jù)線為8根D0D7。由于8255具有3個通道A、B、C,所以只要兩根地址線就能尋址A、B、C口及控制寄存器,故地址線為兩根A0A1。此外CPU要對8255進行讀、寫與片選操作,所以控制線為片選、復(fù)位、讀、寫信號。各信號的引腳編號如下: (1)數(shù)據(jù)總線DB:編號為D0D7,用于8255與CPU傳送8位數(shù)據(jù)。 (2)地址總線A

6、B:編號為A0A1,用于選擇A、B、C口與控制寄存器。 (3)控制總線CB:片選信號、復(fù)位信號RST、寫信號、讀信號。當(dāng)CPU要對8255進行讀、寫操作時,必須先向8255發(fā)片選信號選中8255芯片,然后發(fā)讀信號或?qū)懶盘枌?255進行讀或?qū)憯?shù)據(jù)的操作。 在此次實驗中,因為試驗箱很多芯片和CPU的連線都在內(nèi)部封裝好,所以只需要將8255的片選信號與CPU部分的輸出Y連接即可,本次實驗我選擇的是與Y7連接。其中,讀/寫控制邏輯電路用來接收CPU系統(tǒng)總線的讀信號RD,寫信號WR,片選擇信號CS,端口選擇信號A1,10和復(fù)位信號RESET,用于控制8255A內(nèi)部寄存器的讀/寫操作和復(fù)位操作,這些引腳都

7、是實驗箱內(nèi)部封裝好了的,不需要自己再接。2)與外設(shè)接口部分 根據(jù)定義,8255有3個通道A、B、C與外設(shè)連接,每個通道又有8根線與外設(shè)連接,所以8255可以用24根線與外設(shè)連接,若進行開關(guān)量控制,則8255可同時控制24路開關(guān)。各通道的引腳編號如下: (1)A口:編號為PA0PA7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。 (2)B口:編號為PB0PB7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。 (3)C口:編號為PC0PC7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù),當(dāng)8255工作于應(yīng)答I/O方式時,C口用于應(yīng)答信號的通信。此次實驗我選C口的C0C4作為開關(guān)的輸入,B0B7作為輸出接到發(fā)光二極

8、管的L0L7。對于8255A芯片來說,它有A,B,C3個8位并行端口,A口和B口分別有1個8位的數(shù)據(jù)輸出鎖存/緩沖器和1個8位數(shù)據(jù)輸入鎖存器,C口有1個8位數(shù)據(jù)輸出鎖存/緩沖器和1個8位數(shù)據(jù)輸入緩沖器,用于存放CPU與外部設(shè)備交換的數(shù)據(jù)。3)控制器 8255將3個通道分為兩組,即PA0PA7與PC4PC7組成A組,PB0PB7與PC0PC3組成B組。如圖7.5所示,相應(yīng)的控制器也分為A組控制器與B組控制器,各組控制器的作用如下:(1)A組控制器:控制A口與上C口的輸入與輸出。(2)B組控制器:控制B口與下C口的輸入與輸出。引腳功能: RESET:復(fù)位輸入線,當(dāng)該輸入端處于高電平時,所有內(nèi)部寄存

9、器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。CS:芯片選擇信號線,當(dāng)這個輸入引腳為低電平時,即/CS=0時,表示芯片被選中,允許8255與CPU進行通訊;/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í)行輸入輸出指令時,通過它實現(xiàn)8位數(shù)據(jù)的讀/寫操

10、作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。8255具有3個相互獨立的輸入/輸出通道端口,用+5V單電源供電,能在一下三種方式下工作:方式0基本輸入輸出方式;方式1選通輸入/出方式;方式三雙向選通輸入/輸出方式;PA0PA7:端口A輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個8位的數(shù)據(jù)輸入鎖存器。 工作于三種方式中的任何一種;PB0PB7:端口B輸入輸出線,一個8位的I/O鎖存器, 一個8位的輸入輸出緩沖器。 不能工作于方式二;PC0PC7:端口C輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個8位的數(shù)據(jù)輸入緩沖器。端口C可以通過工作方式設(shè)定而分成2個4位的端口, 每個4位的端口包含一

11、個4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號輸出或狀態(tài)信號輸入端口。'不能工作于方式一或二。 8255A的控制字:8255A方式選擇控制字端口C按位置1/復(fù)0控制4.2硬件原理圖超想3000TB綜合實驗PC機4.3實驗內(nèi)容輸入:以K1K5經(jīng)8255輸入到PC機。輸出:從8255輸出到LED顯示。要求:程序循環(huán)執(zhí)行,K動作則LED有相應(yīng)動作。連線之前先檢測實驗箱的通訊口狀態(tài);接線方法如下:PC0-PC7接K1-K8; PB0-PB7接L0-L7;流程圖:開始初始化掃描開關(guān)狀態(tài)把開關(guān)狀態(tài)經(jīng)8086處理經(jīng)B口輸出至燈五、實驗結(jié)果由于一直忙于做實驗,而且實驗的硬件實驗箱比較緊缺

12、,在最后做完檢查時,還有其他同學(xué)需要使用實驗箱,沒有來得及拍下實驗結(jié)果,不過,當(dāng)時是直接演示給老師看了的,所以現(xiàn)在就僅用語言來描述一下實驗結(jié)果!結(jié)果如下:當(dāng)沒有開關(guān)打開時,8個燈不亮;當(dāng)打開開關(guān)K1時,8個燈從右往左逐個亮,表現(xiàn)為流水燈;當(dāng)打開開關(guān)K2時,8個燈從左到右逐個亮,表現(xiàn)為流水燈;當(dāng)打開開關(guān)K3時,8個燈全部一閃一滅;當(dāng)打開開關(guān)K4時,從外到內(nèi)依次閃;當(dāng)打開開關(guān)K5時,位置為奇數(shù)的燈先亮,然后在偶數(shù)燈一起亮,表現(xiàn)為先奇數(shù)位燈和偶數(shù)位燈輪流閃。六、實驗總結(jié)6.1實驗中遇到的問題A硬件問題1)硬件試驗箱很多有問題,特別是和PC機端口連接總是出錯誤,每次都要拔USB接口,十分的麻煩,但是也

13、沒有找到真正的原因,可能是接口接觸不良引起的。B軟件編譯問題1) 在DVCC里編譯時,在emu8086中運行沒有錯誤的程序可是放這里總是出錯誤,后來發(fā)現(xiàn)原來我是連接后就直接運行,沒有進行編譯和調(diào)試步驟,導(dǎo)致源程序沒有讀進去,或者是讀進去了DVCC里其他的程序,所以運行不出來。2) 在執(zhí)行程序時,發(fā)光二極管只能實現(xiàn)第一次開關(guān)所對應(yīng)的閃爍反應(yīng),比如說,我打開開關(guān)K4,它就會從外向內(nèi)閃,但當(dāng)我再打開開關(guān)K3時,它沒有出現(xiàn)預(yù)期的8個燈一閃一滅,而是繼續(xù)從外向內(nèi)閃,經(jīng)過仔細(xì)的琢磨,用單步運行去一步步的執(zhí)行程序,發(fā)現(xiàn)原來是我程序中的狀態(tài)循環(huán)程序最后沒有跳回IOLED,跳回的是它本身,就導(dǎo)致程序跳不出循環(huán),

14、不能檢測到開關(guān)是否已經(jīng)改變狀態(tài),所以就會維持最初的狀態(tài)。將這點改了后,它就能實現(xiàn)我所要得功能了。6.2實驗心得體會本次課程設(shè)計,綜合運用微機原理與接口技術(shù)課程和匯編語言技術(shù)的理論和生產(chǎn)實際知識去分析和解決具體問題,并使所學(xué)知識得到進一步鞏固、深化和發(fā)展。通過這次的課程設(shè)計,使我懂得了理論與實踐的結(jié)合,只有理論是遠(yuǎn)遠(yuǎn)不夠的,并且每個同學(xué)所會的東西都不一樣,我們要善于挖掘別人的知識供自己所用,這就是一種團體合作,在你不懂的方面,或許他人能夠解釋,這樣,我們通過不斷的詢問,解釋,然后自我思考,最后做成一份自己滿意的課程設(shè)計??傊@次課程設(shè)計對于我們有很大的幫助,通過課程設(shè)計,我更加深入地理解了,微

15、機原理課程上講到的各種芯片的功能,以及引腳的作用,同時加深了對于主要芯片的應(yīng)用的認(rèn)識,同時在試驗室的環(huán)境里熟悉了匯編程序的編寫過程和運行過程,最后還提高了自己的動手能力。感謝老師的悉心指導(dǎo)。七、源程序CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0073HIOCPTEQU 0072HIOBPTEQU 0071HSTART: MOV CX,8FFFHDELAY0:LOOP DELAY0 MOV AL,89HMOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED: MOV DX,IOCPTIN AL,DX CMP AL,00H JE LOOP0 C

16、MP AL,01H JE LOOP1 CMP AL,02H JE LOOP2 CMP AL,04H JE LOOP3 CMP AL,08H JE LOOP4 CMP AL,10H JE LOOP5 JMP IOLED LOOP0: MOV CX,8 IN AL,IOBPT AND AL,00H OUT IOBPT,AL PUSH CX MOV CX,0FFFFHDELAY6:LOOP DELAY6 POP CX JMP EXIT LOOP1: MOV CX,8 MOV AL,01HLOOP11: MOV DX,IOBPT OUT DX,AL ROL AL,1 PUSH CX MOV CX,0F

17、FFFHDELAY1:LOOP DELAY1 POP CX LOOP LOOP11 JMP EXIT LOOP2: MOV AL,80H MOV CX,8LOOP22: MOV DX,IOBPT OUT DX,AL ROR AL,1 PUSH CX MOV CX,0FFFFHDELAY2:LOOP DELAY2 POP CX LOOP LOOP22 JMP EXITLOOP3: MOV CX,8 MOV AL,00HLOOP33:NOT AL MOV DX,IOBPT OUT DX,AL PUSH CX MOV CX,0FFFFHDELAY3:LOOP DELAY3 POP CX LOOP LOOP33 JMP EXITLOOP4: MOV CX,8 MOV AL,81HLOOP44:MOV DX,IOBPT OUT DX,AL MOV AH,AL AND AL,0F0H ROR AL,1 AND AH,0FH ROL AH,1 OR AL,AH PUSH CX MOV CX,0FFFFHDE

溫馨提示

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

評論

0/150

提交評論