内容发布更新时间 : 2024/11/15 22:58:36星期一 下面是文章的全部内容请认真阅读。
实验三 可编程定时器/计数器(8253)
一、实验目的
掌握8253的基本工作原理和编程方法。 二、实验容
1、按图3-1虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。
三、编程提示
1、8253控制寄存器地址 283H 计数器0地址 280H 计数器1地址 281H CLK0连接时钟 1MHZ
;*************************;
;* 8253方式0计数器实验 *; ;*************************; io8253a equ 283h io8253b equ 280h code segment
assume cs:code
start: mov al,14h ;设置8253通道0为工作方式2,二进制计数 mov dx,io8253a out dx,al
mov dx,io8253b ;送计数初值为0FH mov al,0fh out dx,al
lll: in al,dx ;读计数初值 call disp ;调显示子程序 push dx mov ah,06h mov dl,0ffh int 21h pop dx jz lll
mov ah,4ch ;退出 int 21h
disp proc near ;显示子程序 push dx
and al,0fh ;首先取低四位
Word 资料
mov dl,al
cmp dl,9 ;判断是否<=9
jle num ;若是则为'0'-'9',ASCII码加30H add dl,7 ;否则为'A'-'F',ASCII码加37H num: add dl,30h
mov ah,02h ;显示 int 21h
mov dl,0dh ;加回车符 int 21h
mov dl,0ah ;加换行符 int 21h pop dx
ret ;子程序返回 disp endp code ends end start
实验三 可编程定时器/计数器(8253)
一、实验目的
掌握8253的基本工作原理和编程方法。 二、实验容
1、按图3-2连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)。
三、编程提示
1、8253控制寄存器地址 283H 计数器0地址 280H 计数器1地址 281H CLK0连接时钟 1MHZ
;******************* ;* 8253分频 * ;*******************
io8253a equ 280h io8253b equ 281h io8253c equ 283h
code segment //声明代码段 assume cs:code
start:mov dx,io8253c ;向8253写控制字 mov dx,283h; mov al,36h ;使0通道为工作方式3
Word 资料
D7D6D5D4D3D2D1D0=00110110,D7D6=00表示计数器0;D5D4=11先读写低8为再读写高8位;D3D2D1=011表示计数器工作方式3;D0=0表示计数器的初值为二进制数
out dx,al //向283h写控制字
mov ax,1000 ;写入循环计数初值1000 mov dx,io8253a
out dx,al ;先写入低字节到计数器0地址280H mov al,ah
out dx,al ;后写入高字节到计数器0地址280H mov dx,io8253c
mov al,76h ;设8253通道1工作方式3 .D7D6D5D4D3D2D1D0=01110110,D7D6=01表示计数器1;D5D4=11 先读写低8为再读写高8位;D3D2D1=011表示计数器工作方式3;D0=0表示计数器的初值为二进制; out dx,al
mov ax,1000 ;写入循环计数初值1000 mov dx,io8253b
out dx,al ;先写低字节到计数器1地址281H mov al,ah
out dx,al ;后写高字节到计数器1地址281H mov ah,4ch ;程序退出 int 21h code ends
end start
实验四 可编程并行接口(一)(8255方式0)
一、实验目的
掌握8255方式0的工作原理及使用方法。 二、实验容
1、实验电路如图4-1,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。 2、编程从8255C口输入数据,再从A口输出。
三、编程提示
1、8255控制寄存器端口地址 28BH A口的地址 288H C口的地址 28AH ;*******************************;
;* 8255方式0的C口输入,A口输出 *; ;*******************************; io8255a equ 288h io8255b equ 28bh io8255c equ 28ah
Word 资料