微机原理与接口技术 实验(5)

2018-12-20 10:38

中断服务程序流程见图6-13

图6-13 中断服务程序流程

(3)实验程序清单

CODE

SEGMENT ; ASSUME CS:CODE

INTPORT1 EQU 0FF80H INTPORT2 EQU 0FF81H INTQ3 EQU INTREEUP3 TCONTR0 EQU 0043H TCON1 EQU 0041H IOCONPT EQU 0FF2BH IOBPT EQU 0FF29H IOAPT EQU 0FF28H

;8259A偶地址入口 ;8259A奇地址入口 ;中断源IR3地址 ;8253端口地址 ;8253端口地址

PA EQU 0FF20H ;字位口 PB EQU 0FF21H ;字形口 PC EQU 0FF22H ;键入口

ADPORT EQU 0FE00H ;ADC0809端口地址 ORG 12D0H ;源地址

START: JMP START0 ;跳转到START0

BUF DB ?,?,?,?,?,? ;定义6字节的缓冲区 intcnt db ? RES DB ?

data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH; 定义七段码

START0: CLD;置方向位

CALL BUF1;调用BUF1

CALL WRINTVER ;调用 WRINTVER

MOV AL,13H;初始化ICW1,单片,边沿触发,设置ICW4 MOV DX,INTPORT1 OUT DX,AL

MOV AL,08H ;写ICW2,允许IR3中断 MOV DX,INTPORT2 OUT DX,AL

MOV AL,09H;写ICW4,8259A在缓冲方式下工作,8086/8088系统 OUT DX,AL

MOV AL,0F7H;写OCW1,允许中断源IR3,其余均被屏蔽 OUT DX,AL

MOV intcnt,25 MOV DX,TCONTR0

MOV AL,74H;8253工作通道1,先读(写)低字节,再读(写)高字节,方式4,二进制计数

OUT DX,AL

MOV DX,TCON1

MOV AX,40000 ;8253初始值40000 OUT DX,AL

MOV AL,AH ;写初值的高字节 OUT DX,AL

MOV DX,0FF2BH ;8255初始化,PA口方式0,输出

MOV AL,82H OUT DX,AL

STI ;开中断

WATING: CALL DISP ;调用显示程序 JMP WATING ;循环,延时

WRINTVER: MOV AX,0H

MOV ES,AX ;ES指向AX

MOV DI,002CH ;置DI初值为002CH LEA AX,INTQ3 ;取INTQ3的初值 STOSW

MOV AX,0000h STOSW

RET;中断返回

INTREEUP3: DEC INTCNT ;INTCNT自减1

JNZ INTRE2 ;不相等跳转到INTRE2 MOV INTCNT, 25

ADCON: MOV AX,00 ;设定输入电压值 MOV DX,ADPORT OUT DX,AL

MOV CX,0500H ;循环值,延时 DELAY: LOOP DELAY

MOV DX,ADPORT ;读电压值 IN AL,DX

MOV RES,AL ;将Al中值存入到RES中 CALL CONVERS ;调用CONVERS

MOV AL,RES

CMP AL, 66H ;Al与66H比较

JA NEXT1 ;若大于,跳转到NEXT1 MOV AL, 0F0H

MOV DX, IOAPT ;输出

OUT DX,AL

JMP INTRE2 ;跳转到INTRE2 NEXT1: CMP AL, 99H ;AL与99H比较

JA NEXT2 ;跳转到NEXT2(灯L7-L10亮) MOV AL, 0C3H MOV DX, IOAPT OUT DX,AL

JMP INTRE2 ;跳转到INTRE2 NEXT2: MOV AL, 0FH MOV DX, IOAPT OUT DX,AL

INTRE2: IRET

CONVERS: MOV AND MOV SHR MOV DISP: RET; MOV DIS1: MOV ADD DIS2: MOV LX1: MOV BUF1: MOV CODE

MOV AL,20H ;中断 MOV OUT DX,INTPORT1 DX,AL

;中断返回 MOV AND AH, AL AL, 0FH

;取Al中得低四位 MOV MOV BX, OFFSET BUF [BX+5], AL AL,AH ;取 ;;将取AlBUFAl中得值给的偏移地址给中的高四位[BX+5] BX AL, 0F0H CL, 04H

AL, CL ;Al中的内容右移4位 中断返回[BX+4], AL ;将Al中的内容给AL, 0FFH

[BX+4] ;PA端口清零 MOV OUT DX, PA MOV DX, AL

CL, 0DFH ;显示 MOV BX, OFFSET BUF ;取BUF的偏移地址

OUT DX, PC DX, AL ;将Al中的 内容输出到PC端口MOV MOV AL, [BX] PUSH AH, 00H BX;BX入栈

MOV BX, OFFSET DATA1 ;取DATAMOV BX, AX

1得偏移地址 AL, [BX] ;将对应的七段码给Al POP MOV BX;BX出栈

OUT DX, PB DX, AL

;输出到PB口 MOV MOV AL, CL显示OUT DX, PA DX, AL

PUSH CX ;CX出栈LOOP CX, 00A0H $ ;空循环,延时

POP CMP CX

JZ CL,0FEH LX1 INC ROR BX

JMP CL, 1 DIS1

MOV AL, 0FFH ;PB口清零 OUT DX, PB DX, AL

RET ;中断返回 MOV BUF, 00H BUF+1, 08H MOV MOV BUF+2, 00H MOV BUF+3 ,09H BUF+4, 00H MOV RET BUF+5, 00H ENDS

END START

实验总结:

实验八 8250 串口实验

一、实验目的

(1)系统扩展以8250 为核心的可编程串行异步通讯接口芯片。 (2)对扩展的串行通讯接口实现自发自收。 二、实验内容

将寄存器AH 的内容从10H 开始通过8250 发送、接收,每次收发后AH 的内 容自动增1 直到FFH 为止,同时将每次接收到的数据,依次写到内存4000H~ 40EFH 单元中,实现自发自收。 三、编程指南 1、通讯协议

1 个起始位,8 位数据位,1 个停止位,波特率:4800。 2、8250 的内部寄存器的端口地址

* 通讯线控制寄存器第7 位(DLAB)=0 ,** DLAB=1 3、8250 的内部寄存器格式(见课本)

4、波特率除数锁存器的值与波特率的对应关系(16 进制数) 5、8250 的初始化编程 (1)设置波特率

(2)设置通讯数据格式 (3)设置操作方式

(4)设置中断允许寄存器 四、实验接线图

五、实验步骤

1.连FF80H 孔到CS7,连TXD 到RXD(8250 实验区)。 2.编辑、调试、运行程序。

3.当系统显示“8250——good”表示自发自收结束,按RST 键,系统返回

P 态,用内存读写命令检查4000H~40EFH 内容是否为10H~FFH,验证其正确性。 六、参考程序

CODE SEGMENT ;H8250.ASM ASSUME CS: CODE ;H8250.ASM

START: BUF DB ?,?,?,?,?,?;data1:

START0: MAIN: DATA EQU 0ff80H ;BTS-LSB

MSB EQU 0ff81H LINE EQU 0ff83H LSTAT EQU 0ff85H

PA EQU 0FF20H ;字位口 PB EQU 0FF21H ;字形口

PC EQU 0FF22H ;键入口 ORG 29A0H;源地址

JMP START0;跳转到START0 定义6字节缓冲区 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h, 0c6h,0a1h;定义七段码

db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH

MOV AL,80H ;DLAB=1

MOV DX,LINE OUT DX,AL

MOV AL,18H ;BTS=4800;置波特率因子低8位 MOV DX,DATA ;ff80H OUT DX,AL

MOV DX,MSB;置波特率因子高8位 MOV AL,00 OUT DX,AL

MOV AL,03H ;8- BIT ,1-STOP MOV DX,LINE OUT DX,AL

MOV AL,00 ;NO-INT MOV DX,MSB ;8001H OUT DX,AL

MOV AH,10H;AH中的内容 MOV BX,4000H

CALL TXD;调用TXD

CALL RCV;调用RCV MOV [BX],AL INC BX;BX自加


微机原理与接口技术 实验(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《秦晋崤之战》教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: