单片机课后习题答案

(或COM)。可以显示数字和简单的字符,每个数字和字符与其字形码(段码)对应。

点阵式LCD显示器的段电极与背电极呈正交带状分布,液晶位于正交的带状电极间。点阵式LCD的控制一般采用行扫描方式,通过两个移位寄存器控制所扫描的点。

80C51与液晶显示模块LCM的基本接口电路如图6.11所示。

图6.11 80C51与液晶显示模块LCM的基本接口电路

液晶显示模块初始化子程序(将系统设置成显示2行字符,5×7点阵,开显示,显示光标,字符闪烁,清屏,光标为移动方式,自动地址为增量方式。):

电源打开后,在电源上升到4.5V并维持15ms后,写入功能设置控制字,选择数据接口位数等;等待5ms后,检查忙标志,在不忙的情况下,再进行其他的功能设置;检查忙标志,在不忙的情况下,关显示;检查忙标志,在不忙的情况下,清屏;检查忙标志,在不忙的情况下,设定输入方式,初始化结束。程序如下:

LCD: MOV A, #38H ; 8位数据,2行显示,5×7点阵 MOV DPTR, #8000H ; LCD 的口地址 MOVX @DPTR, A LCALL BUSY MOV A, #01H ; 清屏 MOV DPTR, #8000H MOVX @DPTR, A

LCALL BUSY

MOV A, #07H ; AC自动加1,整体显示移动 MOV DPTR, #8000H MOVX @DPTR, A LCALL BUSY MOV A, #0FH ; 开显示,开光标,字符闪烁 MOV DPTR, #8000H MOVX @DPTR, A RET

BUSY:

LOOP:

PUSH DPH

PUSH DPL PUSH PSW PUSH ACC

MOV DPTR, #8001H MOVX A, @DPTR

JB ACC.7, LOOP POP ACC POP PSW POP DPL POP DPH RET

; 保护现场

; 读BH及AC ; 忙,继续等待

; 不忙,恢复现场返回

41

12.矩阵式键盘的编程要点是什么? 解:

(1)判断键盘上有无键按下:列输出全0,读行输入状态,若状态为全1,则说明键盘无键按下;若不全为1,则说明键盘有按下。

(2)消除按键抖动的影响:在判断有键按下后,用软件延时的方法,再判断键盘状态,如果仍为有键按下状态,则认为有一个确定的键按下,否则当作按键抖动处理。

(3)求按键位置,计算键号:用扫描的方法识别闭合键N所在的行号X和列号Y,并根据:以下公式计算闭合键的键号N =X行首键号+列号Y。

(4)键闭合一次仅进行一次按键处理:方法是等待按键释放之后,再进行按键功能的处理操作。

13.设计一个8051外扩键盘和显示器电路,要求扩展8个键,4位LED显示器。 解:

硬件电路连接图如图6.13所示。

图6.13 6.13题LED显示器/键盘电路图

14.使用8255的PC口设计一个4行4列键盘矩阵的接口电路,并编写出与之对应的键盘识别程序。 解:

硬件连接电路图如图6.14所示。

图6.14 6.14题扩展键盘电路图 程序如下:

ORG 1000H

START:

>>展开全文<<
12@gma联系客服:779662525#qq.com(#替换为@)