下载此文档

实验五 七段数码管.doc


文档分类:高等教育 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
实验二七段数码管七段数码管静态显示一、实验目的掌握数码管显示数字的原理二、实验内容静态显示: 按图 22 连接好电路,将 8255 的 A口 PA0 ~ PA6 分别与七段数码管的段码驱动输入端 a ~g相连,位码驱动输入端 S1接+5V ( 选中), S0 、 dp 接地( 关闭)。编程从键盘输入一位十进制数字( 0~ 9) ,在七段数码管上显示出来。三、编程提示实验台上的七段数码管为共阴型, 段码采用同相驱动, 输入端加高电平, 选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。四、实验原理图五、程序流程图六、程序原代码 data segment ioport equ 0d400h-0280h io8255a equ ioport+288h io8255b equ ioport+28bh led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh mesg1 db 0dh,0ah, 'Input a num (0--9h):' ,0dh,0ah, '$' data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8255b ;使 8255 的A 口为输出方式 mov ax,80h out dx,al sss: mov dx,offset mesg1 ; 显示提示信息 mov ah,09h int 21h mov ah,01 ; 从键盘接收字符 int 21h cmp al, '0' ; 是否小于 0 jl exit ; 若是则退出 cmp al, '9' ; 是否大于 9 jg exit ; 若是则退出 sub al,30h ; 将所得字符的 ASCII 码减 30H mov bx,offset led ;bx 为数码表的起始地址 xlat ; 求出相应的段码 mov dx,io8255a ;从 8255 的A 口输出 out dx,al jmp sss ;转 SSS exit: mov ah,4ch ; 返回 DOS int 21h code ends 七段数码管动态显示一、实验目的掌握数码管显示数字的原理二、实验内容动态显示:按图 23 连接好电路,七段数码管段码连接不变,位码驱动输入端 S1 , S0接 8255 C 口的 PC1 , PC0 。编程在两个数码管上显示“ 56”三、编程提示实验台上的七段数码管为共阴型, 段码采用同相驱动, 输入端加高电平, 选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。四、实验原理图五、程序流程图六、程序原代码 data segment ioport equ 0d400h-0280h io8255a equ ioport+28ah io8255b equ ioport+28bh io8255c equ ioport+288h led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ; 段码 buffer1 db 5,6 ; 存放要显示的个位和十位 bz dw?; 位码 data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8255b ;将 8255 设为 A 口输出 mov al,80h out dx,al mov di,offset buffer1 ;设 di 为显示缓冲区 loop2: mov bh,02 lll: mov byte ptr bz,bh push di dec di add di, bz mov bl,[di] ;bl 为要显示的数 pop di mov al,0 mov dx,io8255a out dx,al mov bh,0 mov si,offset led ;置 led 数码表偏移地址为 SI add si,bx ; 求出对应的 led 数码 mov al,byte ptr [si] mov dx,io8255c ;自 8255A 的口输出 out dx,al mov al,byte ptr bz; 使相应的数码管亮 mov dx,io8255a out dx,al mov cx,3000 delay: loop delay ; 延时 mov bh,byte ptr bz shr bh,1 jnz lll mov dx,0ffh mov ah,06 int 21h je loop2 ; 有键按下则退出 mov dx,io8255a mov al,0 ; 关掉数码管显示 out dx,al mov ah,4ch ; 返回 int 21h code e

实验五 七段数码管 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人yuzonghong1
  • 文件大小303 KB
  • 时间2017-02-24