




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、文檔可能無(wú)法思考全面,請(qǐng)瀏覽后下載! 西安郵電大學(xué)硬件課程設(shè)計(jì)報(bào)告題 目: 搶 答 器院系名稱:計(jì)算機(jī)學(xué)院 專業(yè)名稱:班 級(jí): 學(xué)生姓名:學(xué)號(hào)(8位):指導(dǎo)教師:設(shè)計(jì)起止時(shí)間16 / 161. 設(shè)計(jì)目的 用邏輯開(kāi)關(guān)模擬競(jìng)賽搶答器按鈕(共8個(gè)開(kāi)關(guān):K0 K7)當(dāng)某個(gè)邏輯開(kāi)關(guān)置“1”時(shí),相當(dāng)某組搶答按鈕按下。在七段數(shù)碼管上將其組號(hào)(07)顯示出來(lái),若為0表示無(wú)人搶答。從鍵盤(pán)上按空格鍵開(kāi)始下一輪搶答,按 <ESC>鍵 退出程序。二. 設(shè)計(jì)內(nèi)容 1.選用元器件:(1)、并行接口8255:通過(guò)編程來(lái)指定它要完成的功能,是并行數(shù)字設(shè)備與微機(jī)間的接口。8255用于輸入搶答信息,并輸出正確的序號(hào)給
2、數(shù)碼管,以及控制LED燈的亮滅。本設(shè)計(jì)中8255A的地址范圍設(shè)置為1400H1403H,其中控制口地址為1403H。而且使用了8255A的A口,B口和C口。它們均工作在方式0下,其中A口和C口為輸出,B口為輸入。 (2)、數(shù)碼管:指示先搶答的組號(hào)。(3)、二極管:指示搶答。(4)、開(kāi)關(guān):作為搶答者的按鈕。2.基礎(chǔ)實(shí)驗(yàn)一:8255基本輸入輸出能夠在自行設(shè)計(jì)的接口開(kāi)發(fā)板上,實(shí)現(xiàn)撥動(dòng)開(kāi)關(guān)控制LED的亮滅。(軟件代碼命名為:8255.ASM,代碼要求用小寫(xiě)字母,且必須經(jīng)過(guò)優(yōu)化,源代碼小于<95行,每條指令算1行,偽指令也算1行)3.基礎(chǔ)實(shí)驗(yàn)二:流水燈設(shè)計(jì)實(shí)現(xiàn)能夠在自行設(shè)計(jì)的接口開(kāi)發(fā)板上,實(shí)現(xiàn)撥動(dòng)
3、不同開(kāi)關(guān)控制LED燈的變化。例如,K1從左往右,K2從右往左,K3從中間向兩邊,K4從兩邊向中間依次亮滅變化,按主機(jī)鍵盤(pán)任意鍵退出。(軟件代碼命名為:TEST2.ASM,代碼要求用小寫(xiě)字母,且必須經(jīng)過(guò)優(yōu)化,源代碼小于<85行,每條指令算1行,偽指令也算1行)4.基礎(chǔ)實(shí)驗(yàn)三:數(shù)碼管應(yīng)用能夠在自行設(shè)計(jì)的接口開(kāi)發(fā)板上,上電數(shù)碼管顯示0到7,實(shí)現(xiàn)撥動(dòng)不同開(kāi)關(guān),數(shù)碼管顯示該開(kāi)關(guān)位置值(1-8);若同時(shí)撥動(dòng)兩個(gè)以上開(kāi)關(guān),則數(shù)碼管顯示“E”。(軟件代碼命名為:8SEGMENT.ASM,代碼要求用小寫(xiě)字母,且必須經(jīng)過(guò)優(yōu)化,源代碼小于<100行,每條指令算1行,偽指令也算1行)5搶答器:用邏輯開(kāi)關(guān)模
4、擬競(jìng)賽搶答器按鈕(共8個(gè)開(kāi)關(guān):K0 K7)當(dāng)某個(gè)邏輯開(kāi)關(guān)置“1”時(shí),相當(dāng)某組搶答按鈕按下。在七段數(shù)碼管上將其組號(hào)(07)顯示出來(lái),若為0表示無(wú)人搶答。從鍵盤(pán)上按空格鍵開(kāi)始下一輪搶答,按 <ESC>鍵 退出程序。三概要設(shè)計(jì)1功能模塊圖;開(kāi)始初始化開(kāi)始搶答?有組搶答?判斷搶答小組號(hào)?LED燈顯示是否是否結(jié)束2 所用芯片8255引腳圖 3. 搶答器電路圖 四詳細(xì)設(shè)計(jì) 1. 實(shí)驗(yàn)步驟 (1)、在實(shí)驗(yàn)箱上連接8255的WR、CS、RD、D0-D7、A1A0以及8255輸入輸出端口A,B,C口連接到led燈、8段數(shù)碼管、開(kāi)關(guān)上。硬件電路搭建完畢。(2)、在TDPIT上篇寫(xiě)匯編程序,進(jìn)行測(cè)試。(
5、3)、在Proteus 上按照需求連接電路,為驗(yàn)證電路正確性,為其加入輸入,進(jìn)行模擬。模擬結(jié)果正確后,將電路圖保存。(4)、制作硬件電路2、遇到的問(wèn)題:(1)、在8255的使用過(guò)程中,由于對(duì)控制字的使用錯(cuò)誤,導(dǎo)致不能從A、B口輸出信息,最后通過(guò)檢查,改變控制字,實(shí)現(xiàn)了功能。(2)、匯編語(yǔ)言的運(yùn)用。由于平時(shí)較少使用匯編語(yǔ)言,用匯編語(yǔ)言編寫(xiě)程序方面存在不小的障礙,通過(guò)知識(shí)回顧復(fù)習(xí),對(duì)匯編進(jìn)一步的了解后,熟練運(yùn)用。(3)、匯編語(yǔ)言要求短小精悍,由于程序過(guò)長(zhǎng),在使用jnz指令時(shí),出現(xiàn)錯(cuò)誤:Relative jump out of range byte XXXXh bytes。通過(guò)二度跳轉(zhuǎn),解決了這個(gè)問(wèn)
6、題。五調(diào)試情況,設(shè)計(jì)技巧及體會(huì)通過(guò)對(duì)搶答器這一課題的設(shè)計(jì)和實(shí)現(xiàn),使我更好的將理論與實(shí)踐相結(jié)合,我更加深入地理解了微機(jī)原理課程上講到的并行芯片8255的功能,以及引腳的作用,同時(shí)加深了對(duì)于該芯片的應(yīng)用的認(rèn)識(shí),同時(shí)在試驗(yàn)室的環(huán)境里熟悉了匯編程序的編寫(xiě)過(guò)程和運(yùn)行過(guò)程。更重要的是通過(guò)這個(gè)實(shí)驗(yàn),進(jìn)一步掌握了程序設(shè)計(jì)的合理結(jié)構(gòu)。但要達(dá)到這樣的程度其首要條件還是要學(xué)好課本上的基礎(chǔ)知識(shí),理解每一條指令的意義。讓我感到很欣慰的是,與搭檔的合作下高效地、順利地完成本次實(shí)驗(yàn)。六參考文獻(xiàn)微機(jī)接口技術(shù)及其應(yīng)用-李育賢微型計(jì)算機(jī)原理-王忠民七附錄:源代碼(電子版) 一、8255基本輸入輸出data segmentdata
7、 endscode segment assume cs:code, ds:datastart: mov dx,1403h mov al,10010000b out dx,alread: mov dx,1400h in al,dx mov dx,1401h out dx,al mov ah,1 int 16h jz read mov ah,4ch int 21h code ends end start 二、流水燈設(shè)計(jì)實(shí)現(xiàn)data segmentmy8255_a equ 1400h ;8255的A口地址my8255_b equ 1401h ;8255的B口地址my8255_c equ 1402h
8、;8255的C口地址my8255_mode equ 1403h ;8255的控制寄存器地址mode_a db 10001001b ;控制字left db 0fehdata endscode segmentassume cs:code,ds:datastart: MOV DX, 1406H ;寫(xiě)控制口MOV AL, 90H OUT DX, ALREAD: MOV DX, 1400H ;寫(xiě)A端口IN AL, DX MOV DX, 1402H ;寫(xiě)B(tài)端口AND AL, 01HJZ key1AND AL, 02HJZ key2AND AL, 04HJZ key3AND AL, 08HJZ key4JM
9、P READkey1:;for( i = 0; i < 5; i+);for(al = 0x08; al != 0; al >> 1)MOV CX, 5MOV AL, 08H L_TO_RCNT: PUSH CX L_TO_R: MOV CX, 8 OUT DX, AL SHL AL, 1 LOOP L_TO_R POP CXLOOP L_TO_RCNTJMP READkey2:;for( i = 0; i < 5; i+);for(al = 0x01; al != 0; al << 1)MOV CX, 5MOV AL, 01HR_TO_LCNT: PUSH
10、 CX R_TO_L: MOV CX, 8 OUT DX, AL SHR AL, 1 LOOP R_TO_L POP CXLOOP R_TO_LCNTJMP READkey3:MOV CX, 5 M_TO_OCNT: MOV SI, 4 M_TO_O: MOV AL, TABLE4-SI OUT DX, AL DEC SI JNZ M_TO_OLOOP M_TO_OCNTJMP READkey4: MOV CX, 5 CNT: MOV SI, 4 O_TO_M: MOV AL, TABLESI OUT DX, AL DEC SI JNZ O_TO_MLOOP CNTJMP READ;OUT D
11、X, AL ;JMP READ mov ax, 4c00h int 21h CODEENDSend start三、數(shù)碼管應(yīng)用data segmentmy8255_a equ 1400h ;8255的A口地址my8255_b equ 1401h ;8255的B口地址my8255_c equ 1402h ;8255的C口地址my8255_mode equ 1403h ;8255的控制寄存器地址mode_a db 10001001b ;控制字data endscode segmentassume cs:code,ds:datastart: MOV DX, 1406H ;寫(xiě)控制口MOV AL, 90H
12、 OUT DX, ALREAD: MOV DX, 1400H ;寫(xiě)A端口IN AL, DX MOV DX, 1402H ;寫(xiě)B(tài)端口MOV BL, AL ;保存端口讀到的值A(chǔ)1:TEST AL, 01HJNZ A2OR AL, 01HCMP AL, 0FFHJZ key1JMP keyEA2:MOV AL, BLTEST AL, 02HJNZ A3OR AL, 02HCMP AL, 0FFHJZ key2JMP keyEA3:MOV AL, BL TEST AL, 04HJNZ A4OR AL, 04HCMP AL, 0FFHJZ key3JMP keyEA4:MOV AL, BL TEST A
13、L, 08HJNZ A5OR AL, 08HCMP AL, 0FFHJZ key4JMP keyEA5:MOV AL, BL TEST AL, 10HJNZ A6OR AL, 10HCMP AL, 0FFHJZ key5JMP keyEA6:MOV AL, BL TEST AL, 20HJNZ A7OR AL, 20HCMP AL, 0FFHJZ key6JMP keyEA7:MOV AL, BL TEST AL, 40HJNZ A8OR AL, 40HCMP AL, 0FFHJZ key7JMP keyEA8:MOV AL, BL TEST AL, 80HJNZ READOR AL, 80H
14、CMP AL, 0FFHJZ key8JMP keyEkey1:MOV AL, TABLE0OUT DX, ALJMP READkey2:MOV AL, TABLE1OUT DX, ALJMP READkey3:MOV AL, TABLE2OUT DX, ALJMP READkey4:MOV AL, TABLE3OUT DX, ALJMP READkey5:MOV AL, TABLE4OUT DX, ALJMP READkey6:MOV AL, TABLE5OUT DX, ALJMP READkey7:MOV AL, TABLE6OUT DX, ALJMP READkey8:MOV AL, T
15、ABLE7OUT DX, ALJMP READkeyE:MOV AL, TABLE8OUT DX, ALJMP READ;OUT DX, AL ;JMP READ mov ax, 4c00h int 21h CODEENDSend start四、搶答器data segmentmy8255_a equ 1400h ;8255的A口地址my8255_b equ 1401h ;8255的B口地址my8255_c equ 1402h ;8255的C口地址my8255_mode equ 1403h ;8255的控制寄存器地址mode_a db 10001001b ;控制字data endscode se
16、gmentassume cs:code,ds:datastart: MOV DX, 1406H ;寫(xiě)控制口MOV AL, 90H OUT DX, ALREAD: MOV DX, 1400H ;寫(xiě)A端口IN AL, DX MOV DX, 1402H ;寫(xiě)B(tài)端口;倒計(jì)時(shí)過(guò)程 到了0開(kāi)始搶答MOV SI, 5TIME:;延時(shí)等待MOV CX, 0FFFFHdelay:LOOP delayMOV AL, TABLESIOUT DX, ALDEC SIJNZ TIMEMOV BL, ALA1:TEST AL, 01HJZ key1A2:TEST AL, 02HJZ key2A3:TEST AL, 04H
17、CMP AL, 0FFHA4:TEST AL, 08HJZ key4A5:TEST AL, 10HJZ key5A6:TEST AL, 20HJZ key6A7:TEST AL, 40HJZ key7A8:TEST AL, 80HJZ key8;無(wú)人搶答 MOV AL, TABLE0OUT DX, ALNEXT:;等待輸入空格鍵或者Esc 到下一輪搶答或者退出程序MOV AH, 1INT 21H;CMP AL, 32;是否為 空格JZ READCMP AL, 27;是否為 EscJZ END key1:MOV AL, TABLE1OUT DX, ALJMP NEXTkey2:MOV AL, TABLE2OUT DX, ALJMP NEXTkey3:MOV AL, TABLE3OUT DX, ALJMP NEXTkey4
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貨物運(yùn)輸合同(水路)
- 醫(yī)療行業(yè)人才引進(jìn)合同
- 房地產(chǎn)開(kāi)發(fā)商與購(gòu)房者合同大全
- 勞動(dòng)用工安全責(zé)任合同模板:應(yīng)對(duì)與處理
- 地區(qū)授權(quán)代理合同書(shū)
- 基礎(chǔ)設(shè)施建設(shè)項(xiàng)目土地征用合同
- 房地產(chǎn) -鏈家地產(chǎn) 二手房業(yè)務(wù)知識(shí)與經(jīng)驗(yàn)介紹
- 安全責(zé)任的落實(shí)強(qiáng)化企業(yè)安全主體責(zé)任考核試卷
- 攝影器材行業(yè)知識(shí)產(chǎn)權(quán)保護(hù)與合規(guī)經(jīng)營(yíng)策略研究考核試卷
- 數(shù)據(jù)結(jié)構(gòu)與算法基礎(chǔ)考核試卷
- 統(tǒng)計(jì)學(xué)主要計(jì)算公式21098
- 品質(zhì)控制計(jì)劃(QC工程圖)
- DB15T 1193-2017 城市供水行業(yè)反恐怖防范要求
- 汽車營(yíng)銷學(xué)(全套課件)
- 現(xiàn)澆墩臺(tái)身軸線偏位、全高豎直度檢測(cè)記錄表
- 激光共聚焦顯微鏡校準(zhǔn)規(guī)范編制說(shuō)明
- 靜脈竇血栓(共56張)課件
- 樓板配筋計(jì)算表格(自動(dòng)版)
- GB∕T 1348-2019 球墨鑄鐵件-行業(yè)標(biāo)準(zhǔn)
- 2022年人教版小學(xué)數(shù)學(xué)四年級(jí)下冊(cè)教案全冊(cè)
- 2022年三角函數(shù)和弦與曲式結(jié)構(gòu)
評(píng)論
0/150
提交評(píng)論