版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、DA及AD轉(zhuǎn)換實(shí)驗(yàn)報(bào)告自03 張馳昱 20100120281、D/A轉(zhuǎn)換 用DAC0832實(shí)現(xiàn)D/A轉(zhuǎn)換,使產(chǎn)生的模擬電壓波形分別為鋸齒波,三角波和正弦波要求: 程序運(yùn)行后等待鍵入(1)若鍵入1,則產(chǎn)生鋸齒波(2)若鍵入2,則產(chǎn)生三角波(3)若鍵入3,則產(chǎn)生正弦波(4)若鍵入4,則返回DOS 程序運(yùn)行過程中沒有新鍵入別的數(shù)字,則維持原狀不變,用示波器能觀測到連續(xù)的電壓波形。解決思路:先寫三個(gè)用于波形發(fā)生的過程,分別發(fā)出鋸齒波、三角波和正弦波。再寫一個(gè)每次從DAC0832輸出數(shù)據(jù)前都會(huì)調(diào)用的產(chǎn)生延遲的過程,在這個(gè)過程中進(jìn)行有無按鍵的判斷和分辨按鍵的判斷。主程序先調(diào)用這個(gè)延遲的過程,這樣程序一旦運(yùn)
2、行起來就相當(dāng)于不斷的在檢測按鍵了。正弦波的值我是通過matlab生成和寫入文件,并保存在數(shù)據(jù)段里的。以下是生成一個(gè)周期256個(gè)采樣sin值的matlab代碼:clear;clc;fid=fopen(sine.txt,w);s=round(sin(2*pi/256*1:256)*127.5+127.5);s=reshape(s,16,16);for i=1:16 fprintf(fid,DB ); fprintf(fid,%03XH,s(:,i); fprintf(fid,n);end源代碼:DATAS SEGMENT DNUM DB 01H CSADD DW 0280H HINT1 DB TE
3、ETH WAVE,0DH,0AH,$ HINT2 DB TRIANGLE WAVE,0DH,0AH,$ HINT3 DB SINE WAVE,0DH,0AH,$ SINE DB 083H,086H,089H,08CH,08FH,092H,095H,098H,09BH,09EH,0A2H,0A5H,0A7H,0AAH,0ADH,0B0HDB 0B3H,0B6H,0B9H,0BCH,0BEH,0C1H,0C4H,0C6H,0C9H,0CBH,0CEH,0D0H,0D3H,0D5H,0D7H,0DAHDB 0DCH,0DEH,0E0H,0E2H,0E4H,0E6H,0E8H,0EAH,0EBH,0E
4、DH,0EEH,0F0H,0F1H,0F3H,0F4H,0F5HDB 0F6H,0F8H,0F9H,0FAH,0FAH,0FBH,0FCH,0FDH,0FDH,0FEH,0FEH,0FEH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FEH,0FEH,0FEH,0FDH,0FDH,0FCH,0FBH,0FAH,0FAH,0F9H,0F8H,0F6H,0F5HDB 0F4H,0F3H,0F1H,0F0H,0EEH,0EDH,0EBH,0EAH,0E8H,0E6H,0E4H,0E2H,0E0H,0DEH,0DCH,0DAHDB 0D7H,0D5H,0D3H,0D0H
5、,0CEH,0CBH,0C9H,0C6H,0C4H,0C1H,0BEH,0BCH,0B9H,0B6H,0B3H,0B0HDB 0ADH,0AAH,0A7H,0A5H,0A2H,09EH,09BH,098H,095H,092H,08FH,08CH,089H,086H,083H,080HDB 07CH,079H,076H,073H,070H,06DH,06AH,067H,064H,061H,05DH,05AH,058H,055H,052H,04FHDB 04CH,049H,046H,043H,041H,03EH,03BH,039H,036H,034H,031H,02FH,02CH,02AH,028
6、H,025HDB 023H,021H,01FH,01DH,01BH,019H,017H,015H,014H,012H,011H,00FH,00EH,00CH,00BH,00AHDB 009H,007H,006H,005H,005H,004H,003H,002H,002H,001H,001H,001H,000H,000H,000H,000HDB 000H,000H,000H,001H,001H,001H,002H,002H,003H,004H,005H,005H,006H,007H,009H,00AHDB 00BH,00CH,00EH,00FH,011H,012H,014H,015H,017H,
7、019H,01BH,01DH,01FH,021H,023H,025HDB 028H,02AH,02CH,02FH,031H,034H,036H,039H,03BH,03EH,041H,043H,046H,049H,04CH,04FHDB 052H,055H,058H,05AH,05DH,061H,064H,067H,06AH,06DH,070H,073H,076H,079H,07CH,07FHDATAS ENDS STACKS SEGMENT STACK DW 100 DUP(?) STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:ST
8、ACKS DELAY PROC ;延時(shí)子程序 PUSH DX PUSH AX MOV AH,0BH ;檢測鍵盤有無按鍵,不等待 INT 21H CMP AL,0FFH ;如果沒有按鍵,繼續(xù) JNZ CONTINUE MOV AH,01H ;如果有按鍵,讀取鍵盤緩沖區(qū)的值并回顯 INT 21H CMP AL,1 JNZ DUE CALL TEETH ;如果是1,調(diào)用鋸齒波 DUE: CMP AL,2 JNZ TRE CALL TRI;如果是2,調(diào)用三角波 TRE: CMP AL,3 JNZ QUA CALL SIN;如果是3,調(diào)用正弦波 QUA: CMP DL,4;如果是4,退出 JZ EXIT
9、 EXIT: MOV AX,4C00H INT 21H CONTINUE: MOV DL,DNUM ;如果無按鍵,那么哪里調(diào)用的就返回到哪里去 L: DEC DL JNZ L POP AX POP DX RET DELAY ENDP TRI PROC ;三角波子程序 PUSH AX PUSH DX LEA DX,HINT1 MOV AH,09H INT 21H MOV AH,0FFH DOWN: CALL DELAY ;三角波下降過程 MOV AL,AH MOV DX,0280H OUT DX,AL CMP AH,1 JE UP SUB AH,2 JMP DOWN UP: CALL DELAY
10、;三角波上升過程 MOV AL,AH MOV DX,0280H OUT DX,AL CMP AH,0FFH JE DOWN ADD AH,2 JMP UP POP DX POP AX RET TRI ENDP TEETH PROC ;鋸齒波子程序 PUSH AX PUSH DX LEA DX,HINT2 MOV AH,09H INT 21H PEAK: MOV AH,0FFH ;我寫的是一個(gè)下降的鋸齒波 Z : CALL DELAY MOV AL,AH MOV DX,0280H OUT DX,AL CMP AH,0 JE PEAK DEC AH JMP Z POP DX POP AX RET
11、TEETH ENDP SIN PROC ;正弦波子程序 PUSH DI PUSH SI PUSH AX PUSH DX LEA DX,HINT3 MOV AH,09H INT 21H LEA DI,SINE ADD DI,0FFH ;相當(dāng)于用一個(gè)指針取順序的掃描數(shù)據(jù)段里的數(shù)據(jù) HEAD: LEA SI,SINE ;掃描到結(jié)尾了再返回到開頭 TAIL: CALL DELAY MOV AL,SI MOV DX,0280H OUT DX,AL CMP SI,DI JE HEAD INC SI JMP TAIL POP DX POP AX POP SI POP DI RET SIN ENDP STAR
12、T: MOV AX,DATAS MOV DS,AX CALL DELAY;主程序一開始就不斷調(diào)用DELAY檢查有無按鍵 JMP START CODES ENDS END START 2、A/D轉(zhuǎn)換 用ADC0809實(shí)現(xiàn)A/D轉(zhuǎn)換,用匯編語言程序自動(dòng)對一個(gè)模擬信號重復(fù)采集20組不同的數(shù)據(jù),在CRT上將每組數(shù)據(jù)對應(yīng)顯示成如下形式:D/A A/Dxx xx 然后等待鍵盤輸入,若鍵入字母C則接著往下再做20組數(shù)據(jù);若鍵入字母E則退回DOS。輸入字母大小寫應(yīng)能兼容。源代碼:DATAS SEGMENT DNUM DW 0FFFFH T DB 0DH,0AH,D/A A/D,0DH,0AH,$ ;標(biāo)題D/A
13、 A/D BLANK DB ,$ ;三個(gè)空格,為了與上面標(biāo)題對對齊 ENT DB 0DH,0AH,$;回車加換行DATAS ENDSSTACKS SEGMENT STACK DW 20 DUP(?)STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS DELAY MACRO ;延時(shí)子程序 LOCAL N PUSH DX MOV DX,DNUM N : DEC DX JNZ N POP DX ENDMPLAY MACRO SEG ;顯示AL寄存器十六進(jìn)制值的子程序,這個(gè)子程序我在實(shí)驗(yàn)三中寫過 LOCAL A2 LOCAL A1
14、PUSH CX PUSH DX PUSH AX MOV DL,SEG AND DL,0F0H ;取前四位 MOV CL,4 SHR DL,CL CMP DL,09H JBE A1 ADD DL,07H A1:ADD DL,30H PUSH AX MOV AH,02H;輸出前四位 INT 21H POP AX MOV DL,SEG AND DL,0FH ;取后四位 CMP DL,09H JBE A2 ADD DL,07H A2:ADD DL,30H MOV AH,02H ;輸出后四位 INT 21H POP AX POP DX POP CX ENDM START: MOV AX,DATAS MO
15、V DS,AX MOV CH,0 AGAIN:MOV CL,20 LEA DX,T MOV AH,09H INT 21HNEXT: PLAY CH ;顯示轉(zhuǎn)換前的數(shù)字值 MOV AL,CH ;數(shù)模轉(zhuǎn)換 MOV DX,280H OUT DX,AL LEA DX,BLANK;輸出空格 MOV AH,09H INT 21H DELAY MOV AL,0 ;模數(shù)轉(zhuǎn)換 MOV DX,0289H OUT DX,AL DELAY JMP GO ;這里三行只是一個(gè)中途的跳板,因?yàn)槌绦蜻^長,JMP超出限度 JUMP:JMP NEXT AGA: JMP AGAIN GO: MOV DX,0289H ;讀入AD結(jié)果
16、 IN AL,DX PLAY AL ;輸出AD結(jié)果 LEA DX,ENT ;輸出回車 MOV AH,09H INT 21H ADD CH,0FH ;每兩個(gè)值相隔0FH DEC CL JNZ JUMP READ: MOV AH,01H ;檢查鍵盤 INT 21H CMP AL,E ;E退出 JE EXIT CMP AL,e JE EXIT CMP AL,C ;C繼續(xù)讀 JNE READ CMP AL,c JNE READ JMP AGA EXIT: MOV AX,4C00H INT 21HCODES ENDS END START計(jì)算機(jī)原理應(yīng)用綜合實(shí)驗(yàn)報(bào)告自03 張馳昱 20100120281、方
17、式0 I/O 將TPC實(shí)驗(yàn)臺(tái)上的8255電路A口設(shè)置成方式0輸入,檢測8只開關(guān)的狀態(tài);將C口設(shè)置成方式0輸出,控制8只LED燈。程序運(yùn)行后不斷地讀入8只開關(guān)的狀態(tài),送往對應(yīng)的LED燈顯示,直至在計(jì)算機(jī)鍵盤上敲入空格鍵退回DOS。源代碼:code segment assume cs:codeSTART: MOV AL,10010000B ;寫控制字 MOV DX,0283H OUT DX,AL AGAIN: MOV DX,0280H ;從A口輸入 IN AL,DX MOV DX,0282H ;C口輸出 OUT DX,AL MOV AH,0BH ;檢查鍵盤有無按鍵,不等待 INT 21H CMP
18、AL,0FFH ;如果有按鍵,去檢查是不是空格 JE EXIT JMP AGAIN ;如果無按鍵,繼續(xù) EXIT: MOV AH,01H INT 21H CMP AL, JNE AGAIN mov ax,4c00h int 21hcode ends end start2、選作內(nèi)容A口仍保持方式0輸入開關(guān)狀態(tài),C口仍以方式0輸出LED燈顯示,滿足如下條件:(1)若僅K7=1,8只LED的狀態(tài)循環(huán)左移(2)若僅K6=1,8只LED的狀態(tài)循環(huán)右移(3)若僅K6=K7,8只LED一起閃爍。源代碼:code segment assume cs:code DELAY MACRO ;延時(shí)子程序 LOCAL
19、N PUSH DX MOV DX,0FFFFH N : DEC DX JNZ N POP DX ENDM HOLD MACRO ;發(fā)現(xiàn)一次0FFFFH的計(jì)數(shù)不夠長,四次夠長了,五次的話JMP就超限了 DELAY DELAY DELAY DELAY ENDMLEFT MACRO ;向左亮燈子程序 LOCAL L PUSH CX MOV CL,8 MOV AL,00000001B L: HOLD MOV DX,0282H OUT DX,AL SHL AL,1 ;向左亮燈的本質(zhì)就是寄存器的移位 DEC CL JNE L POP CX ENDMRIGHT MACRO ;向左亮燈子程序,與向左幾乎一樣,
20、指示寄存器向右移位 LOCAL R PUSH CX MOV CL,8 MOV AL,10000000B R: HOLD MOV DX,0282H OUT DX,AL SHR AL,1 DEC CL JNE R POP CX ENDMBLINK MACRO ;閃爍子程序,本質(zhì)就是全亮停片刻,全滅停片刻 MOV AL,0FFH MOV DX,0282H OUT DX,AL HOLD MOV AL,0 MOV DX,0282H OUT DX,AL HOLD ENDM START: MOV AL,10010000B ;主程序,寫控制字 MOV DX,0283H OUT DX,AL AGAIN: MOV
21、 DX,0280H ;讀入A口狀態(tài) IN AL,DX CMP AL,10000000B ;如果僅K7開,則調(diào)用向左亮燈子程序 JNE A1 LEFT JMP AGAIN ;向左一遍馬上回去繼續(xù)檢測A口狀態(tài) A1: CMP AL,01000000B ;如果僅K6開,則調(diào)用向右亮燈子程序 JNE A2 RIGHT JMP AGAIN A2: CMP AL,11000000B ;如果僅K7、K6開,則調(diào)用向閃燈子程序 JNE AGAIN BLINK JMP AGAIN EXIT: mov ax,4c00h int 21hcode ends end start3、方式1 I/O實(shí)驗(yàn)中每按一次單脈沖按鍵
22、,通過8255電路發(fā)一次中斷請求。CRT上顯示一個(gè)A口的ASCII碼字符,直到A口數(shù)據(jù)為FFH退出。4、選作內(nèi)容修改主程序?qū)崿F(xiàn)密碼檢測功能,連續(xù)兩次從A口撥入數(shù)據(jù),與計(jì)算機(jī)內(nèi)部事先存放的兩字節(jié)數(shù)比較,相符則在CRT上顯示“OK”,否則重新輸入。以下代碼已把3、4兩個(gè)程序合并在一起。源代碼:DATAS SEGMENT PASSWORD DB 38H,38H ;密碼寫在數(shù)據(jù)段中,定位88 HINT DB 0DH,0AH,OK,0DH,0AH,$ ;提示語句”O(jiān)K”DATAS ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATAS CHECKPASS MACRO BLA ;
23、檢驗(yàn)密碼子程序,入口參數(shù)為8位寄存器“BLA” LOCAL BAD LOCAL GOOD LOCAL NEXT CMP BLA,SI ;如果對了第一位密碼,SI向后走一個(gè)字節(jié),一旦有錯(cuò),SI回到PASSWORD頭 JNE BAD CMP SI,DI ;DI指向PASSWORD尾,如果正確,則可以顯示“OK”了 JNE GOOD LEA DX,HINT MOV AH,09H INT 21HGOOD:INC SI JMP NEXTBAD :LEA SI,PASSWORD NEXT: ENDMSERV PROC ;中斷服務(wù)程序 MOV DX,0280H ;讀入A口數(shù)據(jù) IN AL,DX CMP AL
24、,0FFH ;如果是FF那么退出 JNE GO MOV AX,4C00H INT 21H GO: PUSH AX ; 這里保護(hù)AX MOV DL,AL ;顯示A口ASCII碼值 MOV AH,02H INT 21H POP AX CHECKPASS AL ;順便檢驗(yàn)一下是不是密碼 MOV AL,20H ;EOI命令退出中斷 OUT 20H,AL IRETSERV ENDPSTART: MOV AX,DATAS MOV DS,AX LEA SI,PASSWORD ;SI指向PASSWORD頭 MOV DI,SI INC DI ;DI指向PASSWORD尾 PUSH DS ;置中斷矢量 MOV D
25、X,OFFSET SERV MOV AX,SEG SERV MOV DS,AX MOV AH,25H MOV AL,0BH INT 21H POP DS IN AL,21H ;消除中斷屏蔽 AND AL,11110111B OUT 21H,AL MOV AL,10111011B ;寫8255方式控制字 MOV DX,0283H OUT DX,AL MOV AL,00001001B ;消除8255的中斷屏蔽,這里好像沒有明確講 MOV DX,0283H OUT DX,AL STI ;允許中斷過程W:JMP W mov ax,4c00h int 21hcode ends end start這個(gè)實(shí)驗(yàn)
26、主要的問題就是一開始沒有消除8255的中斷屏蔽,我在書上也沒有找到有關(guān)內(nèi)容,希望如果教科書再版的話,加入詳細(xì)的8255方式1輸入輸出的中斷說明。5、選作內(nèi)容將8255電路A口改成方式1輸出(僅將PA7接一只LED示范即可),修改前面的程序?qū)崿F(xiàn)每次中斷后,通過A口輸出數(shù)據(jù)控制LED狀態(tài)在0,1之間翻轉(zhuǎn)。源代碼:STACKS SEGMENT DB 20 DUP(?)STACKS ENDSCODE SEGMENT ASSUME CS:CODE,SS:STACKSSERV PROC MOV AL,CL ;CL相當(dāng)于一個(gè)全局的控制燈翻轉(zhuǎn)的變量 MOV DX,0280H ;輸出給A口 OUT DX,AL
27、NOT CL ;每次輸出完,把CL反向一下,下一次輸出的就是反向值了 MOV AL,20H ;EOI命令 OUT 20H,AL IRETSERV ENDPSTART: MOV DX,OFFSET SERV ;置中斷矢量 MOV AX,SEG SERV MOV DS,AX MOV AH,25H MOV AL,0BH INT 21H IN AL,21H ;消除中斷屏蔽 AND AL,11110111B OUT 21H,AL MOV AL,10100000B ;寫8255方式控制字 MOV DX,0283H OUT DX,AL MOV AL,00001001B ;清除8255中斷屏蔽 MOV DX,
28、0283H OUT DX,AL MOV CL,0FFH STIW:JMP W mov ax,4c00h int 21hcode ends end start6、掃描顯示接口電路8255電路A口以方式0輸出,C口也初始化成方式0輸出且僅用其最低兩位:PC1接數(shù)碼管位碼輸入端S1,PC0接位碼輸入端S0。程序?qū)崿F(xiàn)當(dāng)A口輸出字形“0”的段碼時(shí),C口輸出01H,第一個(gè)數(shù)碼管顯示“0”,當(dāng)A口輸出字形“1”的段碼時(shí),C口輸出02H,于是第二個(gè)數(shù)碼管顯示“1”。每一位顯示之后調(diào)用一段延時(shí)程序,選擇恰當(dāng)?shù)难訒r(shí)程序,使“01”幾乎同時(shí)顯示在兩位數(shù)碼管上。源代碼:code segment assume cs:c
29、odeDELAY MACRO LOCAL GO PUSH DX MOV DX,01H GO:DEC DX JNE GO POP DX ENDMHOLD MACRO ;與之前一樣,四次Delay才夠長DELAYDELAYDELAYDELAY ENDMSTART: MOV AL,10000000B ;寫8255方式控制字 MOV DX,0283H OUT DX,ALAGAIN: MOV AL,0 ;這里尤其關(guān)鍵,先要輸出全暗,在輸出所需值,這是為了消除重影 MOV DX,0280H OUT DX,AL MOV AL,01H ;選通S0 MOV DX,0282H OUT DX,AL MOV AL,3
30、FH ;輸出0 MOV DX,0280H OUT DX,AL HOLD MOV AL,0 ;如果不清零的話,之前“0”的值3F還保留在A口里, MOV DX,0280H ;這樣一選通S1首先輸出的是0而非1,即有重影 OUT DX,AL MOV AL,02H;選通S1 MOV DX,0282H OUT DX,AL MOV AL,06H;輸出1 MOV DX,0280H OUT DX,AL HOLD MOV AH,0BH ;檢測有無按鍵,不等待,之前已反復(fù)用到,不再贅述 INT 21H CMP AL,0FFH JNZ AGAIN MOV AH,01H INT 21H CMP AL, JNZ AG
31、AIN MOV AX,4C00H INT 21H code ends end start7、選作內(nèi)容當(dāng)程序運(yùn)行后,從計(jì)算機(jī)鍵盤上輸入兩位十進(jìn)制數(shù),分別在兩個(gè)數(shù)碼管上顯示。若繼續(xù)輸入數(shù)字則更新顯示。若發(fā)現(xiàn)輸入了非數(shù)字鍵則退回DOS。解決思路:把每次鍵盤輸入的數(shù)字按鍵都放在一個(gè)緩存TEMP中,如果發(fā)現(xiàn)已經(jīng)有兩個(gè)數(shù)字鍵輸入了,那么把這片緩存復(fù)制給名為PLAY的緩存,七段管每次只輸出PLAY緩存的值,這樣就可以實(shí)現(xiàn)每按兩個(gè)鍵才改變七段管的值了。源代碼:DATAS SEGMENT LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,07FH,06FH ;七段管0到9的ag的取值
32、 PLAY DB 3FH,3FH ;數(shù)碼管當(dāng)前顯示值緩存器,默認(rèn)值設(shè)為“00” TEMP DB 3FH,3FH ;鍵盤兩位十進(jìn)制數(shù)緩存器DATAS ENDSSTACKS SEGMENT DB 100 DUP(?)STACKS ENDSCODE SEGMENT ASSUME CS:CODE,SS:STACKS,DS:DATASTRANS MACRO BLA ;鍵盤的ASCII碼到七段管值的譯碼宏,入口參數(shù)為ASCII的八位寄存器BLA LOCAL OK LOCAL EXIT LOCAL N PUSH DX MOV DL,BLA SUB DL,30H CMP DL,09H ;首先要判斷鍵盤輸入的是
33、不是一個(gè)數(shù)字 JA EXIT ;如果不是就退出 LEA SI,LEDN: CMP DL,0 ;如果是,就去找到這個(gè)數(shù)字對應(yīng)的七段管的值 JZ OK INC SI DEC DL JMP NEXIT:MOV AX,4C00H INT 21HOK: MOV BLA,SI ;出口參數(shù)還是BLA,此時(shí)譯碼已完成,它表示的是七段管的值 POP DX ENDMDELAY MACRO ;延時(shí)子程序 LOCAL GO PUSH DX MOV DX,0FFFFH GO:DEC DX JNE GO POP DX ENDMSTART:MOV AX,DATAS MOV DS,AX MOV AL,10000000B ;寫
34、8255方式控制字 MOV DX,0283H OUT DX,AL MOV CL,0 ;CL用來對鍵盤按鍵計(jì)數(shù) LEA BX,TEMP AGAIN: CMP CL,2 JNE N MOV CL,0;如果之前已經(jīng)有兩個(gè)鍵輸入了,那么一切從頭開始 N: CMP CL,1 JE ONE MOV AH,0BH ;不等待的檢測按鍵,這個(gè)功能之前已反復(fù)用到 INT 21H CMP AL,0FFH JNZ ONE MOV AH,01H INT 21H TRANS AL ;先譯碼為七段管值,再寫入緩存TEMP MOV BX,AL INC CL ONE: MOV AH,0BH INT 21H CMP AL,0FF
35、H JNZ SHOW MOV AH,01H INT 21H TRANS AL MOV BX+1,AL ;之前已經(jīng)有過一次按鍵了,所以寫入BX+1位置 INC CLSHOW: CMP CL,2 ;檢驗(yàn)是不是已有兩次按鍵 JNE FORWARD LEA SI,PLAY ;如果已有兩次,就把TEMP緩存復(fù)制到PLAY緩存,即更新待顯示的值 MOV AX,BX MOV SI,AX INC SI MOV AX,BX+1 MOV SI,AX FORWARD: MOV AL,0 ;先清除A口的輸出值 MOV DX,0280H OUT DX,AL MOV AL,02H ;選通S1 MOV DX,0282H O
36、UT DX,AL LEA DI,PLAY ;輸出緩存PLAY的第一個(gè)值 MOV AL,DI MOV DX,0280H OUT DX,AL DELAY MOV AL,0 ;清除A口的輸出值 MOV DX,0280H OUT DX,AL MOV AL,01H;選通S0 MOV DX,0282H OUT DX,AL INC DI ;輸出緩存PLAY的第二個(gè)值 MOV AL,DI MOV DX,0280H OUT DX,AL DELAY JMP AGAINcode ends end start8、選作內(nèi)容使用TPC實(shí)驗(yàn)臺(tái)上的8253定時(shí)計(jì)數(shù)電路來代替前面的軟件延時(shí)。8253定時(shí)器自動(dòng)重復(fù)工作,每工作一個(gè)周期發(fā)出一次中斷請求信號
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 秋分溫泉活動(dòng)策劃方案(3篇)
- 學(xué)校歷史文化管理制度(3篇)
- 2026年聊城市中醫(yī)醫(yī)院“水城優(yōu)才”青年人才引進(jìn)參考考試題庫及答案解析
- 現(xiàn)代裝飾公司店長管理制度(3篇)
- 2026年度德州市事業(yè)單位公開招聘初級綜合類崗位人員(526人)備考考試題庫及答案解析
- 2026山東事業(yè)單位統(tǒng)考濟(jì)南歷城區(qū)屬招聘初級綜合類崗位50人參考考試題庫及答案解析
- 2026浙江興??毓杉瘓F(tuán)有限公司下屬企業(yè)招聘3人備考考試試題及答案解析
- 2026年甘肅省酒泉民健康復(fù)醫(yī)院招聘考試備考試題及答案解析
- 2026上半年黑龍江伊春市事業(yè)單位招聘262人參考考試題庫及答案解析
- 2026浙江南方水泥有限公司校園招聘備考考試試題及答案解析
- 四川省成都市武侯區(qū)2024-2025學(xué)年七年級上學(xué)期期末生物學(xué)試題(含答案)
- 校園欺凌預(yù)防策略:心理干預(yù)與行為矯正
- 辦公樓物業(yè)安全管理
- 中老年人常見疾病預(yù)防
- 2024基因識別數(shù)據(jù)分類分級指南
- 臨床成人失禁相關(guān)性皮炎的預(yù)防與護(hù)理團(tuán)體標(biāo)準(zhǔn)解讀
- 創(chuàng)新創(chuàng)業(yè)教育學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 河道治理、拓寬工程 投標(biāo)方案(技術(shù)方案)
- 政治審查表(模板)
- 《最奇妙的蛋》完整版
- SEMI S1-1107原版完整文檔
評論
0/150
提交評論