微機(jī)課程設(shè)計(jì)六路搶答器_第1頁(yè)
微機(jī)課程設(shè)計(jì)六路搶答器_第2頁(yè)
微機(jī)課程設(shè)計(jì)六路搶答器_第3頁(yè)
微機(jī)課程設(shè)計(jì)六路搶答器_第4頁(yè)
微機(jī)課程設(shè)計(jì)六路搶答器_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

六路搶答器課程設(shè)計(jì)的目的本課程設(shè)計(jì)是在比擬系統(tǒng)地學(xué)習(xí)了匯編語(yǔ)言程序設(shè)計(jì)方法和微機(jī)原理與接口知識(shí)后,為了更好地掌握微型計(jì)算機(jī)的工作原理和接口電路設(shè)計(jì)方法,初步掌握微機(jī)應(yīng)用系統(tǒng)的軟、硬件開(kāi)發(fā)方法和技術(shù),為今后開(kāi)發(fā)實(shí)際系統(tǒng)打下根底而進(jìn)行的比擬系統(tǒng)的課程設(shè)計(jì)。通過(guò)課程設(shè)計(jì)進(jìn)一步了解微型計(jì)算機(jī)的工作原理,熟悉微機(jī)根本輸入、輸出接口的組成及地址分析方法,掌握各種接口芯片和掌握接口電路的設(shè)計(jì)原那么課程設(shè)計(jì)的要求=1\*GB2⑴用8255A芯片設(shè)計(jì)搶答計(jì)時(shí)器,搶答后所存,搶答結(jié)束后復(fù)位。=2\*GB2⑵認(rèn)真編寫(xiě)程序,并進(jìn)行程序調(diào)試,在實(shí)驗(yàn)機(jī)上運(yùn)行,完成接口程序的設(shè)計(jì);=3\*GB2⑶完成設(shè)計(jì)報(bào)告。課程設(shè)計(jì)的條件軟件:AEDK系類(lèi)實(shí)驗(yàn)機(jī)調(diào)試軟件操作系統(tǒng):WindowsXP主要儀器設(shè)備:微機(jī)一臺(tái)、微機(jī)原理與接口技術(shù)實(shí)驗(yàn)箱一套、萬(wàn)用表一臺(tái)、示波器一臺(tái)。課程設(shè)計(jì)方案〔1〕確定設(shè)計(jì)內(nèi)容,設(shè)計(jì)一個(gè)六路搶答器,使用LED燈表示搶答情況?!?〕確定所使用的芯片及六路搶答器的相關(guān)功能。課程設(shè)計(jì)使用8255A芯片,8個(gè)開(kāi)關(guān)。其中開(kāi)關(guān)K8用于決定搶答是否開(kāi)始,開(kāi)關(guān)閉合,搶答開(kāi)始。開(kāi)關(guān)斷開(kāi),其他六路搶答器不管按下與否,均無(wú)反響。開(kāi)關(guān)K7,為搶答結(jié)束后提供復(fù)位功能。K1-K6為六路搶答器,這里將開(kāi)關(guān)視為按鈕,閉合斷開(kāi)一次為按下按鈕。〔3〕程序流程圖8255A芯片介紹8255A內(nèi)部有3個(gè)相互獨(dú)立的8位數(shù)據(jù)端口,即端口A﹑端口B﹑端口C。設(shè)計(jì)人員可以用程序是他們分別作為輸入端口或輸出端口。不過(guò),每個(gè)端口有著各自的特點(diǎn)。端口A對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。所以,用端口A作為輸入或輸出時(shí),數(shù)據(jù)均可以受到鎖存。端口B對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。端口C對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。這樣,當(dāng)端口C作為輸入端口時(shí),對(duì)數(shù)據(jù)不作鎖存,而作為輸出端口時(shí),對(duì)數(shù)據(jù)進(jìn)行鎖存。8255A工作方式:(1)工作方式0:這是8255A中各端口的根本輸入/輸出方式。它只完成簡(jiǎn)單的并行輸入/輸出操作,CPU可從指定端口輸入信息,也可向指定端口輸出信息,如果三個(gè)端口均處于工作方式0,那么可由工作方式控制字定義16種工作方式的組合

(2)工作方式1:被稱(chēng)作選通輸入/輸出方式。在這種工作方式下,數(shù)據(jù)輸入/輸出操作要在選通信號(hào)控制下完成。

(3)工作方式2:被稱(chēng)作帶選通的雙向傳送方式。8255A中只允許端口A處于工作方式2,可用來(lái)在兩臺(tái)處理機(jī)之間實(shí)現(xiàn)雙向并行通信。其有關(guān)的控制信號(hào)由端口C提供,并可向CPU發(fā)出中斷請(qǐng)求信號(hào)。方式選擇控制字D7D6D5D4D3D2D1D0A口輸入0—輸出PC7~PC41—輸入0—輸出B組方式0—方式01—方式1B口1—輸入0—輸出PC3~PC01—輸入0—輸出1有效標(biāo)志位00—方式001—方式1X1—方式2硬件電路設(shè)計(jì):1〕8255的端口C〔PC0-PC7〕通過(guò)驅(qū)動(dòng)連接到DL1~DL6。2〕8255的端口A〔PA0-PA7〕和開(kāi)關(guān)K1-K8相連?!?〕程序代碼DATASEGMENTDATAENDSSTACKSEGMENTSTACKSTADW50DUP(?)TOPEQULENGTHSTASTACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVDX,203H;控制端口地址給DXMOVAL,10010000B;工作方式0,PA端口輸入,PB,PC輸出OUTDX,ALK2:MOVDX,200h;INAL,DX;讀取PA端口狀態(tài)ORAL,7FH;將K1-K8相應(yīng)位置1CMPAL,7FH;判斷K8是否閉合JNZK2WAIT1:MOVDX,200h;重新讀取PA端口的狀態(tài)WAIT2:INAL,DXXORAL,00H;異或,判斷CMPAL,7FH;判斷是否有人搶答,即K1-K5是否有人按下JZWAIT2;無(wú)人搶答,返回WAIT2CMPAL,7EH;判斷K1是否搶答到JZA1;假設(shè)是,轉(zhuǎn)移到A1CMPAL,7DH;判斷K2是否搶答到JZA2CMPAL,7BH;判斷K3是否搶答到JZA3CMPAL,77HJZA4CMPAL,6FHJZA5CMPAL,5FHJZA6A1:MOVDX,202H;將C端口地址賦給DXMOVAL,01111110B;設(shè)置LED1亮,LED8為開(kāi)始搶答,默認(rèn)亮著;其他LED燈滅OUTDX,AL;從C端口輸出JMPL1A2:MOVDX,202HMOVAL,01111101B;LED2亮OUTDX,ALJMPL1A3:MOVDX,202HMOVAL,01111011B;LED3亮OUTDX,ALJMPL1A4:MOVDX,202HMOVAL,01110111B;LED4亮OUTDX,ALJMPL1A5:MOVDX,202HMOVAL,01101111B;LED5亮OUTDX,ALA6:MOVDX,202HMOVAL,01011111B;LED6亮OUTDX,ALL1:MOVDX,200HINAL,DX;從A端口讀取開(kāi)關(guān)狀態(tài)ORAL,03FHCMPAL,03FH;判斷復(fù)位開(kāi)關(guān)是否開(kāi)啟,即K7是否閉合JNZL1;假設(shè)不是,那么等待復(fù)位MOVDX,202H;從C端口輸出復(fù)位后的LED等狀態(tài),即只有LED7、;LED8亮著OUTDX,ALJMPWAIT1;返回WAIT1,繼續(xù)下一輪搶答 CODEENDSENDSTART課程設(shè)計(jì)的實(shí)驗(yàn)步驟或過(guò)程5.1準(zhǔn)備階段:步驟1:編寫(xiě)程序代碼,翻開(kāi)調(diào)試軟件,在菜單欄的實(shí)驗(yàn)選擇選“開(kāi)關(guān)狀態(tài)顯示實(shí)驗(yàn)〞步驟2:新建空白頁(yè),將所編的代碼黏貼進(jìn)去,并進(jìn)行編譯。假設(shè)出錯(cuò),根據(jù)提示的錯(cuò)誤,進(jìn)行修改。否那么,進(jìn)行下一步5.2連線(xiàn)測(cè)試階段步驟1:實(shí)驗(yàn)設(shè)備通過(guò)PCI接口卡與電腦相連接,單擊軟件菜單欄的設(shè)置,選擇通訊口。在彈出的界面中通訊口和波特率默認(rèn),一般不做修改,點(diǎn)擊測(cè)試串口。假設(shè)提示測(cè)試成功,那么實(shí)驗(yàn)設(shè)備與電腦連接成功。否那么,重新檢查接口是 步驟2:連線(xiàn)、程序?qū)懭耄骸?〕根據(jù)彈出的接線(xiàn)圖,在實(shí)驗(yàn)機(jī)的相應(yīng)芯片上進(jìn)行接線(xiàn)。〔2〕編譯并執(zhí)行〔3〕控制開(kāi)關(guān),觀察實(shí)驗(yàn)結(jié)果。假設(shè)沒(méi)有預(yù)期的實(shí)驗(yàn)結(jié)果,排錯(cuò),解決問(wèn)題。步驟5:完成課程設(shè)計(jì)報(bào)告。課程設(shè)計(jì)的實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果并不順利,出現(xiàn)如下問(wèn)題。由于為準(zhǔn)備工具,故沒(méi)有記錄實(shí)驗(yàn)現(xiàn)象。問(wèn)題一:實(shí)驗(yàn)初始化即出現(xiàn)8個(gè)等全亮的情況,此時(shí)K8閉合,其他開(kāi)關(guān)處于斷開(kāi)狀態(tài)。問(wèn)題二:無(wú)法搶答,無(wú)論哪個(gè)開(kāi)關(guān)閉合斷開(kāi),都沒(méi)有任何反響。問(wèn)題三:?jiǎn)栴}二解決后,搶答結(jié)束復(fù)位時(shí),對(duì)應(yīng)的LED燈熄滅,LED7和LED8亮著,但是無(wú)法再次進(jìn)行下一輪搶答。經(jīng)過(guò)單步執(zhí)行,問(wèn)題一在起始化之后便8個(gè)燈全亮,乃為程序初始化問(wèn)題。而問(wèn)題二是因?yàn)闆](méi)有將搶答結(jié)果順利從C口輸出,問(wèn)題三那么是搶答結(jié)束后未將A端口地址賦給DX,導(dǎo)致不能進(jìn)行下一輪搶答。問(wèn)題解決后,可以進(jìn)行搶答,搶答成功后對(duì)應(yīng)的LED燈亮,其他六路再進(jìn)行搶答無(wú)任何效果,但在復(fù)位上出了問(wèn)題,由于時(shí)間關(guān)系,無(wú)法再次根據(jù)實(shí)驗(yàn)現(xiàn)象修改代碼,完善課程設(shè)計(jì)。參考文獻(xiàn)[1]楊斌編著.微機(jī)原理與接口技術(shù)實(shí)驗(yàn)及課程設(shè)計(jì)[M].成都:西南交通大學(xué)出版社,2005.10[2]楊居義編著.微原理與接口技術(shù)工程教程[M].北京:清華大學(xué)出版社,2023.1[3]李甘林,李升主編.微機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)[M].北京:北京大學(xué)出版社,2023.8[4]徐曉紅等編.微型計(jì)算機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)[M].北京:清華大學(xué)出版社,2023.1[5]鄒道勝主編.微機(jī)原理實(shí)驗(yàn)指導(dǎo)書(shū)[M].武漢:華中科技大學(xué)出版社,2023.6[6]錢(qián)曉捷主編.微型計(jì)算機(jī)原理及應(yīng)用[M].清華大學(xué)出版社,2006[7]錢(qián)曉捷陳濤編著.16/32位微機(jī)原理、匯編語(yǔ)言及接口技術(shù)〔第2版〕[M].機(jī)械工業(yè)出版社,2005[8]錢(qián)曉捷主編.新版匯編語(yǔ)言程序設(shè)計(jì)[M].電子工業(yè)出版社,2006六路搶答器課程設(shè)計(jì)的目的本課程設(shè)計(jì)是在比擬系統(tǒng)地學(xué)習(xí)了匯編語(yǔ)言程序設(shè)計(jì)方法和微機(jī)原理與接口知識(shí)后,為了更好地掌握微型計(jì)算機(jī)的工作原理和接口電路設(shè)計(jì)方法,初步掌握微機(jī)應(yīng)用系統(tǒng)的軟、硬件開(kāi)發(fā)方法和技術(shù),為今后開(kāi)發(fā)實(shí)際系統(tǒng)打下根底而進(jìn)行的比擬系統(tǒng)的課程設(shè)計(jì)。通過(guò)課程設(shè)計(jì)進(jìn)一步了解微型計(jì)算機(jī)的工作原理,熟悉微機(jī)根本輸入、輸出接口的組成及地址分析方法,掌握各種接口芯片和掌握接口電路的設(shè)計(jì)原那么課程設(shè)計(jì)的要求=1\*GB2⑴用8255A芯片設(shè)計(jì)搶答計(jì)時(shí)器,搶答后所存,搶答結(jié)束后復(fù)位。=2\*GB2⑵認(rèn)真編寫(xiě)程序,并進(jìn)行程序調(diào)試,在實(shí)驗(yàn)機(jī)上運(yùn)行,完成接口程序的設(shè)計(jì);=3\*GB2⑶完成設(shè)計(jì)報(bào)告。課程設(shè)計(jì)的條件軟件:AEDK系類(lèi)實(shí)驗(yàn)機(jī)調(diào)試軟件操作系統(tǒng):WindowsXP主要儀器設(shè)備:微機(jī)一臺(tái)、微機(jī)原理與接口技術(shù)實(shí)驗(yàn)箱一套、萬(wàn)用表一臺(tái)、示波器一臺(tái)。課程設(shè)計(jì)方案〔1〕確定設(shè)計(jì)內(nèi)容,設(shè)計(jì)一個(gè)六路搶答器,使用LED燈表示搶答情況?!?〕確定所使用的芯片及六路搶答器的相關(guān)功能。課程設(shè)計(jì)使用8255A芯片,8個(gè)開(kāi)關(guān)。其中開(kāi)關(guān)K8用于決定搶答是否開(kāi)始,開(kāi)關(guān)閉合,搶答開(kāi)始。開(kāi)關(guān)斷開(kāi),其他六路搶答器不管按下與否,均無(wú)反響。開(kāi)關(guān)K7,為搶答結(jié)束后提供復(fù)位功能。K1-K6為六路搶答器,這里將開(kāi)關(guān)視為按鈕,閉合斷開(kāi)一次為按下按鈕。〔3〕程序流程圖8255A芯片介紹8255A內(nèi)部有3個(gè)相互獨(dú)立的8位數(shù)據(jù)端口,即端口A﹑端口B﹑端口C。設(shè)計(jì)人員可以用程序是他們分別作為輸入端口或輸出端口。不過(guò),每個(gè)端口有著各自的特點(diǎn)。端口A對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。所以,用端口A作為輸入或輸出時(shí),數(shù)據(jù)均可以受到鎖存。端口B對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。端口C對(duì)應(yīng)1個(gè)8位數(shù)據(jù)輸入鎖存器/緩沖器和1個(gè)8位數(shù)據(jù)輸出鎖存器/緩存器。這樣,當(dāng)端口C作為輸入端口時(shí),對(duì)數(shù)據(jù)不作鎖存,而作為輸出端口時(shí),對(duì)數(shù)據(jù)進(jìn)行鎖存。8255A工作方式:(1)工作方式0:這是8255A中各端口的根本輸入/輸出方式。它只完成簡(jiǎn)單的并行輸入/輸出操作,CPU可從指定端口輸入信息,也可向指定端口輸出信息,如果三個(gè)端口均處于工作方式0,那么可由工作方式控制字定義16種工作方式的組合

(2)工作方式1:被稱(chēng)作選通輸入/輸出方式。在這種工作方式下,數(shù)據(jù)輸入/輸出操作要在選通信號(hào)控制下完成。

(3)工作方式2:被稱(chēng)作帶選通的雙向傳送方式。8255A中只允許端口A處于工作方式2,可用來(lái)在兩臺(tái)處理機(jī)之間實(shí)現(xiàn)雙向并行通信。其有關(guān)的控制信號(hào)由端口C提供,并可向CPU發(fā)出中斷請(qǐng)求信號(hào)。方式選擇控制字D7D6D5D4D3D2D1D0A口輸入0—輸出PC7~PC41—輸入0—輸出B組方式0—方式01—方式1B口1—輸入0—輸出PC3~PC01—輸入0—輸出1有效標(biāo)志位00—方式001—方式1X1—方式2硬件電路設(shè)計(jì):1〕8255的端口C〔PC0-PC7〕通過(guò)驅(qū)動(dòng)連接到DL1~DL6。2〕8255的端口A〔PA0-PA7〕和開(kāi)關(guān)K1-K8相連。〔5〕程序代碼DATASEGMENTDATAENDSSTACKSEGMENTSTACKSTADW50DUP(?)TOPEQULENGTHSTASTACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVDX,203H;控制端口地址給DXMOVAL,10010000B;工作方式0,PA端口輸入,PB,PC輸出OUTDX,ALK2:MOVDX,200h;INAL,DX;讀取PA端口狀態(tài)ORAL,7FH;將K1-K8相應(yīng)位置1CMPAL,7FH;判斷K8是否閉合JNZK2WAIT1:MOVDX,200h;重新讀取PA端口的狀態(tài)WAIT2:INAL,DXXORAL,00H;異或,判斷CMPAL,7FH;判斷是否有人搶答,即K1-K5是否有人按下JZWAIT2;無(wú)人搶答,返回WAIT2CMPAL,7EH;判斷K1是否搶答到JZA1;假設(shè)是,轉(zhuǎn)移到A1CMPAL,7DH;判斷K2是否搶答到JZA2CMPAL,7BH;判斷K3是否搶答到JZA3CMPAL,77HJZA4CMPAL,6FHJZA5CMPAL,5FHJZA6A1:MOVDX,202H;將C端口地址賦給DXMOVAL,01111110B;設(shè)置LED1亮,LED8為開(kāi)始搶答,默認(rèn)亮著;其他LED燈滅OUTDX,AL;從C端口輸出JMPL1A2:MOVDX,202HMOVAL,01111101B;LED2亮OUTDX,ALJMPL1A3:MOVDX,202HMOVAL,01111011B;LED3亮OUTDX,ALJMPL1A4:MOVDX,202HMOVAL,01110111B;LED4亮OUTDX,ALJMPL1A5:MOVDX,202HMOVAL,01101111B;LED5亮OUTDX,ALA6:MOVDX,202HMOVAL,01011111B;LED6亮OUTDX,ALL1:MOVDX,200HINAL,DX;從A端口讀取開(kāi)關(guān)狀態(tài)ORAL,03FHCMPAL,03FH;判斷復(fù)位開(kāi)關(guān)是否開(kāi)啟,即K7是否閉合JNZL1;假設(shè)不是,那么等待復(fù)位MOVDX,202H;從C端口輸出復(fù)位后的LED等狀態(tài),即只有LED7、;LED8亮著OUTDX,ALJMPWAIT1;返回WAIT1,繼續(xù)下一輪搶答 CODEENDSENDSTART課程設(shè)計(jì)的實(shí)驗(yàn)步驟或過(guò)程5.1準(zhǔn)備階段:步驟1:編寫(xiě)程序代碼,翻開(kāi)調(diào)試軟件,在菜單欄的實(shí)驗(yàn)選擇選“開(kāi)關(guān)狀態(tài)顯示實(shí)驗(yàn)〞步驟2:新建空白頁(yè),將所編的代碼黏貼進(jìn)去,并進(jìn)行編譯。假設(shè)出錯(cuò),根據(jù)提示的錯(cuò)誤,進(jìn)行修改。否那么,進(jìn)行下一步5.2連線(xiàn)測(cè)試階段步驟1:實(shí)驗(yàn)設(shè)備通過(guò)PCI接口卡與電腦相連接,單擊軟件菜單欄的設(shè)置,選擇通訊口。

溫馨提示

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

評(píng)論

0/150

提交評(píng)論