5计算机接口技术程序00附录2.docx
- 文档编号:23578704
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:88
- 大小:31.69KB
5计算机接口技术程序00附录2.docx
《5计算机接口技术程序00附录2.docx》由会员分享,可在线阅读,更多相关《5计算机接口技术程序00附录2.docx(88页珍藏版)》请在冰豆网上搜索。
5计算机接口技术程序00附录2
附录二:
实验参考程序
;=====================D/A(调零程序)=========================
;---D/A0V输出(调基准电压)---
;在进行D/A输出方波/锯齿波、小直流电机实验之前,必须先运行本调零程序!
;装载并连续运行本程序,调节基准电压控制电位器W2,
;使D/A输出端“AOUT”输出电压为0V
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
;================================
DAPORTEQU0FFE0h
ZXKEQU0FFDCH
ZWKEQU0FFDDH
;================================
ORG3480H
START:
MOVBUF,00H;DISPLAY083280
MOVBUF+1,08H
MOVBUF+2,03H
MOVBUF+3,02H
MOVBUF+4,08H
MOVBUF+5,00H
P5:
MOVAL,80H
movdx,DAPORT
outdx,al
callp6
jmpp5
;=========================
p6:
movcx,0100h
p8:
pushcx
CALLDIS
popcx
loopp8
ret
;==========================
DIS:
MOVCL,20H
MOVBX,OFFSETBUF
DIS1:
MOVAL,[BX]
PUSHBX
MOVBX,OFFSETLED
XLAT
POPBX
MOVDX,ZXK
OUTDX,AL
MOVAL,CL
MOVDX,ZWK
OUTDX,AL
PUSHCX
MOVCX,0100H
DELAY:
LOOP$
POPCX
CMPCL,01H
JZEXIT
INCBX
SHRCL,1
JMPDIS1
EXIT:
MOVAL,00H
MOVDX,ZWK
OUTDX,AL
RET
BUFDB?
?
?
?
?
?
LEDDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H
;====================================
CODEENDS
ENDSTART
;----------------8255A²¢ÐпÚʵÑé
(1)·½²¨-----------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG32C0H
H1:
JMPSTARTP1
PAEQU0FFD8H
PBEQU0FFD9H
PCEQU0FFDAH
PCTLEQU0FFDBH
STARTP1:
MOVDX,PCTL
MOVAL,80H
OUTDX,AL
MOVAL,55H
P11:
MOVDX,PA
OUTDX,AL
INCDX
OUTDX,AL
INCDX
OUTDX,AL
MOVCX,0800H
LOOP$
NOTAL
JMPP11
CODEENDS
ENDH1
;--------------8255A²¢ÐпÚʵÑé
(2)PAÊäÈë,PBÊä³ö-------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG32E0H
PAEQU0FFD8H
PBEQU0FFD9H
PCEQU0FFDAH
PCTLEQU0FFDBH
H2:
MOVDX,PCTL
MOVAL,90H
OUTDX,AL
P2:
MOVDX,PA
INAL,DX
INCDX
OUTDX,AL
JMPP2
CODEENDS
ENDH2
;----------------8255A²¢ÐпÚʵÑé(3)¿ØÖƽ»Í¨µÆ----------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG32F0H
PAEQU0FFD8H
PBEQU0FFD9H
PCEQU0FFDAH
PCTLEQU0FFDBH
H3:
MOVAL,88H
MOVDX,PCTL
OUTDX,AL;MOD:
0,
MOVDX,PA
MOVAL,0B6H
OUTDX,AL
INCDX
MOVAL,0DH
OUTDX,AL
CALLDELAY1
P30:
MOVAL,75H
MOVDX,PA
OUTDX,AL
INCDX
MOVAL,0DH
OUTDX,AL
CALLDELAY1
CALLDELAY1
MOVCX,08H
P31:
MOVDX,PA
MOVAL,0F3H
OUTDX,AL
INCDX
MOVAL,0CH
OUTDX,AL
CALLDELAY2
MOVDX,PA
MOVAL,0F7H
OUTDX,AL
INCDX
MOVAL,0DH
OUTDX,AL
CALLDELAY2
LOOPP31
MOVDX,PA
MOVAL,0AEH
OUTDX,AL
INCDX
MOVAL,0BH
OUTDX,AL
CALLDELAY1
CALLDELAY1
MOVCX,08H
P32:
MOVDX,PA
MOVAL,9EH
OUTDX,AL
INCDX
MOVAL,07H
OUTDX,AL
CALLDELAY2
MOVDX,PA
MOVAL,0BEH
OUTDX,AL
INCDX
MOVAL,0FH
OUTDX,AL
CALLDELAY2
LOOPP32
JMPP30
DELAY1:
PUSHAX
PUSHCX
MOVCX,0030H
DELY2:
CALLDELAY2
LOOPDELY2
POPCX
POPAX
RET
DELAY2:
PUSHCX
MOVCX,8000H
LOOP$
POPCX
RET
CODEENDS
ENDH3
;------------------¼òµ¥I/O¿ÚÀ©Õ¹------------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3380H;273,244
PIO1EQU0FFE0H
PIO2EQU0FFE4H
P4:
MOVDX,PIO1
INAL,DX
MOVDX,PIO2
OUTDX,AL
JMPP4
CODEENDS
ENDP4
;-----------------------硬件实验五A/D转换实验----------------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3390H
H5:
JMPSTART
ZXKEQU0FFDCH
ZWKEQU0FFDDH
LEDDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H
BUFDB?
?
?
?
?
?
ADPORTEQU0FFE0H
START:
MOVBUF,00H;DISPLAY080900
MOVBUF+1,08H
MOVBUF+2,00H
MOVBUF+3,09H;DISPLAY080900
MOVBUF+4,00H
MOVBUF+5,00H
P5:
MOVAL,00H;IN0
MOVDX,ADPORT
OUTDX,AL
CALLDIS
MOVDX,ADPORT
INAL,DX
movdx,0ffe4h;newadd-->138Y1
notal;newadd
outdx,al;newadd-->驱动发光二极管
notal;newadd
CALLADS
JMPP5
ADS:
MOVAH,AL
ANDAL,0FH
MOVBUF+5,AL
ANDAH,0F0H
MOVCL,4
SHRAH,CL
MOVBUF+4,AH
RET
;--------------------------------
DIS:
MOVCL,20H
MOVBX,OFFSETBUF
DIS1:
MOVAL,[BX]
PUSHBX
MOVBX,OFFSETLED
XLAT
POPBX
MOVDX,ZXK
OUTDX,AL
MOVAL,CL
MOVDX,ZWK
OUTDX,AL
PUSHCX
MOVCX,0100H
DELAY:
LOOP$
POPCX
CMPCL,01H
JZEXIT
INCBX
SHRCL,1
JMPDIS1
EXIT:
MOVAL,00H
MOVDX,ZWK
OUTDX,AL
RET
;--------------------------
CODEENDS
ENDH5
;-------------------D/Aת»»ÊµÑé
(1)·½²¨-----------------
;×¢Ò⣺½øĞб¾ÊµÑéÇ°£¬ÇëÏÈ×°ÔØÔËĞĞD/A0VÊä³ö£¨µ÷»ù×¼µçѹ£©³ÌĞòAsm88\da_0v.asm
;¡¡¡¡¡¡Ê¹D/AÊä³ö¶Ë¡°AOUT¡±Êä³öµçѹΪ0V£¬ÔÙ½øĞб¾ÊµÑé¡£
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG33E0H
DAPORTEQU0FFE0H
H6:
MOVAL,0FFH
P6:
MOVDX,DAPORT
OUTDX,AL
MOVCX,0400H
LOOP$
NOTAL
JMPP6
CODEENDS
ENDH6
;--------------------D/A转换实验
(2)锯齿波---------------
;注意:
进行本实验前,请先装载运行D/A0V输出(调基准电压)程序Asm88\da_0v.asm
; 使D/A输出端“AOUT”输出电压为0V,再进行本实验。
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG33F0H
DAPORTEQU0FFE0H
H7:
MOVDX,DAPORT
MOVAL,00H
P7:
OUTDX,AL
INCAL
JMPP7
CODEENDS
ENDH7
;-------------8259单级中断控制器实验-------------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3400H
H8:
JMPP8259
ZXKEQU0FFDCH
ZWKEQU0FFDDH
LEDDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H
BUFDB?
?
?
?
?
?
Port0EQU0FFE0H
Port1EQU0FFE1H
P8259:
CLI
CALLWP;初始化显示“P.”
MOVAX,OFFSETINT8259
MOVBX,003CH
MOV[BX],AX
MOVBX,003EH
MOVAX,0000H
MOV[BX],AX
CALLFOR8259
movsi,0000h
STI
CON8:
CALLDIS
JMPCON8
;------------------------------------
INT8259:
cli
MOVBX,OFFSETBUF
MOVBYTEPTR[BX+SI],07H
INCSI
CMPSI,0007H
JZX59
XX59:
MOVAL,20H
MOVDX,Port0
OUTDX,AL
movcx,0050h
xxx59:
pushcx
calldis
popcx
loopxxx59
popcx
movcx,3438h
pushcx
STI
IRET
X59:
MOVSI,0000H
CALLWP
JMPXX59
;==============================
FOR8259:
MOVAL,13H
MOVDX,Port0
OUTDX,AL
MOVAL,08H
MOVDX,Port1
OUTDX,AL
MOVAL,09H
OUTDX,AL
MOVAL,7FH;IRQ7
OUTDX,AL
RET
;---------------------------
WP:
MOVBUF,11H;初始化显示“P.”
MOVBUF+1,10H
MOVBUF+2,10H
MOVBUF+3,10H
MOVBUF+4,10H
MOVBUF+5,10H
RET
;--------------------------------
DIS:
MOVCL,20H
MOVBX,OFFSETBUF
DIS1:
MOVAL,[BX]
PUSHBX
MOVBX,OFFSETLED
XLAT
POPBX
MOVDX,ZXK
OUTDX,AL
MOVAL,CL
MOVDX,ZWK
OUTDX,AL
PUSHCX
MOVCX,0100H
DELAY:
LOOP$
POPCX
CMPCL,01H
JZEXIT
INCBX
SHRCL,1
JMPDIS1
EXIT:
MOVAL,00H
MOVDX,ZWK
OUTDX,AL
RET
;--------------------------
CODEENDS
ENDH8
;-----------------¶¨Ê±/¼ÆÊýÆ÷8253·½²¨-------------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3490H
H9:
MOVDX,0FFE3H
MOVAL,36H
OUTDX,AL
MOVDX,0FFE0H
MOVAL,00H
OUTDX,AL
MOVAL,10H
OUTDX,AL
JMP$
CODEENDS
ENDH9
;------------------继电器控制------------------------
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG34B0H
H10:
MOVDX,0FFDBH;8255CTL?
J0:
MOVAL,00H
OUTDX,AL;PC0=0
CALLJDL
MOVAL,01H
OUTDX,AL;PC0=1
CALLJDL
JMPJ0
JDL:
MOVCX,0004H
JDL1:
PUSHCX
MOVCX,0FFFFH
LOOP$
POPCX
LOOPJDL1
RET
CODEENDS
ENDH10
;----------------8251串口实验自发自收--------------------
Z8251EQU0FFE1H
D8251EQU0FFE0H
ZXKEQU0FFDCH
ZWKEQU0FFDDH
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG35C0H;TX=RX
;===修改开始
START:
MOVDX,Z8251
MOVAL,00H
OUTDX,AL
MOVAL,00H
OUTDX,AL
MOVAL,00H
OUTDX,AL
MOVAL,40H
OUTDX,AL
MOVAL,0CEH
OUTDX,AL
MOVAL,25H
OUTDX,AL
;===修改结束
MOVAL,01H
MOVBX,0400H
MOV[BX],AL
SR0:
CALLWP
MOVSI,4000H
MOVDI,5000H
MOVCX,0010H
SR1:
MOVAH,[SI]
CALLSEND
CALLRX
MOV[DI],AH
INCSI
INCDI
LOOPSR1
SR2:
CALLDIS
JMPSR2
RX:
MOVDX,Z8251
RX1:
INAL,DX
TESTAL,02H
JZRX1
MOVDX,D8251
INAL,DX
MOVAH,AL
RET
;------------------------
WP:
MOVBUF,11H
MOVBUF+1,10H
MOVBUF+2,10H
MOVBUF+3,10H
MOVBUF+4,10H
MOVBUF+5,10H
RET
;--------------------------
SEND:
MOVDX,Z8251
W1:
INAL,DX
TESTAL,01H
JZW1
MOVDX,D8251
MOVAL,AH
OUTDX,AL
RET
;---------------------------
DIS:
MOVCL,20H
MOVBX,OFFSETBUF
DIS1:
MOVAL,[BX]
PUSHBX
MOVBX,OFFSETLED
XLAT
POPBX
MOVDX,ZXK
OUTDX,AL
MOVAL,CL
MOVDX,ZWK
OUTDX,AL
PUSHCX
MOVCX,0100H
DELAY:
LOOP$
POPCX
CMPCL,01H
JZEXIT
INCBX
SHRCL,1
JMPDIS1
EXIT:
MOVAL,00H
MOVDX,ZWK
OUTDX,AL
RET
;--------------------------
LEDDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H
BUFDB?
?
?
?
?
?
;--------------------------
CODEENDS
ENDSTART
;=============8251串行通信实验:
接收端===========
;1.编译连接装载本程序
;2.装载完毕后,退出Dais集成开发环境,释放串行口
;3.从键盘输入3FD0入口地址,按[EXEC]键连续运行
;4.运行“PC发送程序.exe”,选择相关串行口,使用默认2400波特率,单击“打开端口”
;5.在“PC发送程序”上点击相应发送数字按钮,实验系统LED即显示接收到的数字
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE,ES:
CODE
ORG3FD0H
Z8251EQU0FFE1H
D8251EQU0FFE0H
START:
CALLFOR8253;#1,f1=1.8432m/48=38.4khz
CALLFOR8251;BPS=f1/16=2400
MOVDS:
[077AH],1702H
MOVDS:
[077CH],0501H
MOVDS:
[077EH],0802H
MOVDS:
[0740H],077FH
watrxd:
calldisp
CALLYRX
MOVBX,DS:
[0740H]
CON:
movds:
[bx],al
CMPBX,077ah
jzserial
decBX
MOVDS:
[0740H],BX
jmpwatrxd
serial:
movds:
[0740h],077fh
jmpwatrxd
disp:
pushcx
movdx,077fh
movah,20h
disp0:
movcx,00ffh
movbx,dx
movbl,ds:
[bx]
movbh,0h
pushdx
movdx,0FFDCH
moval,[bx+OFFSETDATA1]
outdx,al
movdx,0FFDDH
moval,ah
outdx,al
disp1:
loopdisp1
popdx
decdx
shrah,01h
jnzdisp0
popcx
ret
data1:
db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h
db80h,90h,88h,83h,0c6h,0a1h,86h,8eh
db0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh
db90h,0a3h,0a1h,86h,8fh
FOR8253:
MOVDX,0FFE7H
MOVAL,76H
OUTDX,AL
MOVDX,0FFE5H
MOVAL,30H
OUTDX,AL
MOVDX,0FFE5H
MOVAL,00H
OUTDX,AL
RET
FOR8251:
MOVDX,Z82
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 接口 技术 程序 00 附录