wez12345go 2015-03-03 14:28 采纳率: 0%
浏览 3364

微机原理用74LS273扩展I/O口实验代码修改

利用实验平台上的锁进插座扩展一片74LS273作为输出口,控制八个LED灯。改为从右往左两个两个亮
OUTBIT equ 0e101h ; 位控制口
CLK164 equ 0e102h ; 段控制口(接164时钟位)
DAT164 equ 0e102h ; 段控制口(接164数据位)
IN_KEY equ 0e103h ; 键盘读入口
CS245 equ 0A000h

data segment
LEDBuf db 6 dup(?) ; 显示缓冲
Num db 1 dup(2) ; 显示的数据
DelayT db 1 dup(2)
LEDMAP: ; 八段管显示码
db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h
db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h

data ends

code segment
assume cs:code, ds:data

Delay proc near
push ax ; 延时子程序
push cx
mov al, 0
mov cx,ax
loop $

   pop   cx
   pop   ax
   ret

Delay endp

DisplayLED proc near
mov bx, offset LEDBuf
mov cl, 6 ; 共6个八段管
mov ah, 00100000b ; 从左边开始显示
DLoop:
mov dx, OUTBIT
mov al, 0
out dx,al ; 关所有八段管
mov al, [bx]
mov ch, 8 ; 送164
DLP:
push ax
mov ah, 0
test al, 80h
jz GN1
mov ah, 1
GN1:
mov dx, DAT164 ; 输出数据位
mov al, ah
and al,0fdh
out dx, al
mov dx, CLK164 ; 送出时钟脉冲
mov al, 1
or al,02h
out dx, al
mov al, 0
and al,0fdh
out dx, al
pop ax
shl al, 1
dec ch
jnz DLP
mov dx, OUTBIT
mov al, ah
out dx, al ; 显示一位八段管
push ax
mov ah, 1
call Delay
pop ax

   shr   ah, 1
   inc   bx
   dec   cl
   jnz   DLoop
   mov   dx, OUTBIT
   mov   al, 0
   out   dx,al        ; 关所有八段管
   ret

DisplayLED endp

Start proc near
mov ax, data
mov ds, ax
mov dx,0e100h
mov al,03h
out dx,al

   mov   LEDBuf, 0ffh    ; 显示 8.8.8.8.
   mov   LEDBuf+1, 0ffh
   mov   LEDBuf+2, 0ffh
   mov   LEDBuf+3, 0ffh
   mov   LEDBuf+4, 0
   mov   LEDBuf+5, 0

MLoop:
call DisplayLED ; 显示
mov dx, CS245 ; 读入开关值
in al, dx
mov cl ,al
and al, 0fh

mov ah, 0
mov bx, offset LEDMAP
add bx, ax
mov al, [bx]
mov LEDBuf+5, al
mov al,cl
shr al,2
and al, 0fh

mov ah, 0
mov bx, offset LEDMAP
add bx, ax
mov al, [bx]
mov LEDBuf+4, al
jmp MLoop

Start endp
code ends
end start

  • 写回答

1条回答

  • devmiao 2015-03-03 18:44
    关注

    一般这种和硬件打交道的问题自己充分调试下是不难解决的。再不行问问厂家。

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题