关于8279的实例

来源:本站
导读:目前正在解读《关于8279的实例》的相关信息,《关于8279的实例》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《关于8279的实例》的详细说明。
简介:下面给出一个用 8279 的数码显示器显示被按下的键的程序,以纪念这块光耀一时的芯片。

8279 是键盘、显示专用接口芯片,一般来说,它可以带动 8 个LED数码显示器和 64 个按键。

它可以自动的实现动态扫描输出,按键消抖,按键缓存等等,优点不少。

一个单片机系统,如果使用了 8279,基本就算是豪华系统了,但是近几年来,很少有这么大型的单片机系统的需求,8279 也逐渐淡出了开发者的视线。

下面给出一个用 8279 的数码显示器显示被按下的键的程序,以纪念这块光耀一时的芯片。

程序首先进行 8279 的初始化,然后检测是否有键被按下,如果没有,则循环等待;如果检测到有键被按下,则读取被按下键的代码,并把其代码送到显示RAM中。

;8279键盘显示实验

ORG 0000H

LJMP START

ORG 0100H

START:

MOV DPTR, #0CFE9H ;8279命令/状态口地址

MOV A, #11010001B ;D1H 清显示命令字

MOVX @DPTR, A ; 全部清空

LOOP1:

MOVX A, @DPTR ;读出状态

ANL A, #0FH ;低四位是FIFO中的键入字符数

JZ LOOP1 ;没有键按下则循环等待

MOV A, #10100000B ;A0H, 显示消隐命令

MOVX @DPTR, A ;显示暗

MOV A, #01000000B ;40H, 读FIFO命令

MOVX @DPTR, A ;读FIFO的0000地址

MOV DPTR, #0CFE8H ;8279数据口地址

MOVX A, @DPTR ;读键值

MOV R1, A ;保存键值

MOV DPTR, #0CFE9H ;8279命令/状态口地址

MOV A, #81H ;选中LED2

MOVX @DPTR, A ;写显示RAM命令

MOV A, R1

ANL A, #0FH ;取键值后半字节

MOV DPTR, #TAB

MOVC A, @A + DPTR ;换算出段码

MOV DPTR, #0CFE8H ;8279数据口地址

MOVX @DPTR, A ;写入显示RAM

MOV DPTR, #0CFE9H ;8279命令/状态口地址

MOV A, #80H ;选中LED1

MOVX @DPTR, A ;显示

MOV A, R1

ANL A, #0F0H ;取键值前半字节

SWAP A ;

MOV DPTR, #TAB

MOVC A, @A + DPTR ;换算出段码

MOV DPTR, #0CFE8H

MOVX @DPTR, A ;显示

MOV DPTR, #0CFE9H ;8279命令/状态口地址

SJMP LOOP1

TAB:

DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;段码表

DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H

END

提醒:《关于8279的实例》最后刷新时间 2024-03-14 00:57:36,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《关于8279的实例》该内容的真实性请自行鉴别。