D8279 EQU210H
LEDMODEQU00左边输入,八位显示外部译码八位显示
LEDFEQEQU38H 扫描频率
CODE SEGMENT
ASSUME CS:CODE,DS:code
START:push cs
popds
calldelay
MOVDX,Z8279
MOVAL,LEDMOD
OUTDX,AL
MOVAL,LEDFEQ
OUTDX,AL
MOVCX,06H
XZ: MOVDX,D8279
MOVAL,00H
OUTDX,AL
LOOP XZ
MOVDX,D8279
MOVAL,5eH
OUTDX,AL
MOVDX,D8279
MOVAL,77H
OUTDX,AL以上为写(AD )
NOP
bg: movdx,208h
moval,0
outdx,al
calldelay
in al,dx
这里用ah保存输入的低4位值
movah,al
andah,0fh
=======================
movcl,04h
roral,cl
andal,0fh
查表,将键码放入AL中
push ax
mov dx,z8279
mov al,83h
out dx,al
pop ax
LEA BX,LED
XLAT
这里已经处理了al中的高4位,还需要处理ah中的低4位
XCHGah,al
XLAT
=======================
MOV DX,D8279 将AL中内容写到数码管上
OUT DX,AL
这里再将高4位显示在led上
OUT DX,AH
=======================
calldelay
jmp bg
LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H
DB 5EH,79H,71H
delay proc near
push cx
mov cx,0f00h
loop $
pop cx
ret
delay endp
CODE ENDS
END START
并不需要修改LED表,由于不是很清楚该LED芯片如何下配置,仅以你提供的代码来改写的话就是在我上面标注的那些地方插入那些代码应该就可以了
但是不排除需要修改控制码值的情况,但是那种情况我就没办法推测如何修改了。
你看的电赛书是哪年的,8279这种古董芯片我就在教材上看过,应用中从未用过。他就是一个芯片替程序去检测键盘驱动显示。我在学校参加电赛做的就是电源题,呵呵,电源类的题目得分点在那些无源器件上。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)