IN AL,DX ;读取当前数值 CMP AL,CL
JNE L0 ;若AL不等于CL,则继续到L0循环 DEC CL ;更改CL值 MOV DL,AL
CMP DL,09H 是0~9吗? JLE ASCI ADD DL,07H 是A~F ASCI: ADD DL,30H
MOV AH,02H 单字符输出计数器当前值 INT 21H
MOV DX,OFFSET CHL ;输出字符串换行 MOV AH,09H I NT 21H
CMP CL,0
JNL L0 ;CL不小于0时,继续循环 MOV AH,4CH INT 21H CODE ENDS END START
DATA SEGMENT X DB ?
DATA ENDS
STACK1 SEGMENT STACK DW 100H DUP(0) STACK1 ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV AL,36H
MOV DX,0C403H 写计数器0控制字 OUT DX,AL
MOV AX,1000 写计数器0初值 MOV DX,0C400H
OUT DX,AL 先写低字节后写高字节 MOV AL,AH OUT DX,AL MOV AL,76H
MOV DX,0C403H
OUT DX,AL 写计数器1控制字 MOV AX,1000 写计数器0初值 MOV DX,0C401H OUT DX,AL
MOV AL,AH 先写低字节后写高字节 OUT DX,AL CODE ENDS END START
四、成果及感想
该次实验考查了我们对计时器8253的运用编程,第一个小实验中通过以计数器0以计数方式0来计数,时钟由逻辑开关来控制,第二个小实验中计数器0、1分别做频率发生器,而计数器0的时钟频率由机器给,计数器1的时钟频率由计数器0给,相当于一个分频器,这次实验让我们对计时器8253的各项功能有了更深刻理解
实验三 串行通信
一、实验目的
1、 进一步了解串行通信的基本原理。
2、 掌握串行接口芯片 8250 的工作原理和编程方法。 3、 熟悉 PC 机串行口的基本连接方法二、实验内容 1、 PC 机 RS-232 串口自发自收。
按照 PC 机串口自发自收的连接方法连线。编写 PC 机自发自收串行通信程序,要求: 从键盘输入一个字符,将字符通过串口发送出去,再由此串口将字符接收回来并在屏幕上显示,实现自发自收。
2、 两台 PC 机间 RS-232 串口通信。
按照 PC 机 RS-232 串口直接互连的方法连接两台 PC 机。 编写 PC 机直接互连
串行通信程序;要求:由甲机键盘键入字符经串口发送给乙机,再由乙机通过串口接收字符并显示在屏幕上。当键入感叹号“!”,结束收发过程。
三、实验提示 1、连线图
图5-6 DB-9连接器 图5-7 双机近距离通信连接图
2、 8250寄存器地址
PC 机自带两个串口,分为 COM1 和 COM2,地址分别在 3F8-3FFH 和 2F8-2FFH,接口芯片选用 8250。8250 片内有 10 个寄存器,其中有几个是共用地址的,其识别由线路控制寄存器
(LCR)的 高位 DLAB 来决定。各寄存器的地址和格式如下所示:.
8250寄存器地址 DLAB 0 0 1 1 0 X X X X X X
A2 0 0 0 0 0 0 0 1 1 1 1
A1 0 0 0 0 0 1 1 0 0 1 1
A0
I/O口地址
对应寄存器
0 3F8H(2F8H) 发送端数据寄存器 0 3F8H(2F8H) 接受端数据寄存器
0 3F8H(2F8H) 波特率因子寄存器(低8位) 1 3F9H(2F9H) 波特率因子寄存器(高8位) 1 3F9H(2F9H) 中断允许寄存器(IER) 0 3FAH(2FAH) 中断识别寄存器(IIR) 1 3FBH(2FBH) 线路控制寄存器(LCR) 0 3FCH(2FCH) MODEM控制寄存器(MCR) 1 3FDH(2FDH) 线路状态寄存器(LSR) 0 3FEH(2FEH) MODEM状态寄存器 1 3FFH(2FFH) 保留
四,程序
1.自发自收 DATA SEGMENT
CHL DB 0AH,0DH,'$' ;换行字符串 DATA ENDS
STACK1 SEGMENT STACK DW 100 DUP(0) STACK1 ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV DX,3FBH ; MOV AL,80H ; DLAB=1 OUT DX,AL
MOV AX,0CH ;N=12 BAUD=9600bps MOV DX,3F8H ;低位 OUT DX,AL MOV AL,AH INC DX OUT DX,AL
MOV AL,03H ;八位数据,1停止,无校验 MOV DX,3FBH ;线路控制REG OUT DX,AL
MOV AL,0 ;屏蔽全部中断
相关推荐: