中大单片机_第10章 MCS-51与键盘、显示器、拨盘、打印机的接口设计.pptVIP

  • 0
  • 0
  • 约1.33万字
  • 约 74页
  • 2021-01-07 发布于安徽
  • 举报

中大单片机_第10章 MCS-51与键盘、显示器、拨盘、打印机的接口设计.ppt

引线号 符号 名称 功能 1 VSS 地 0V 2 VDD 电源 5V±5% 3 VEE 液晶驱动电压 4 RS 寄存器选择 1:数据寄存器;0:命令寄存器 5 R/W* 读/写 1:读; 0:写 6 E 使能 下降沿触发 7~14 DB0~DB7 8位数据线 数据传输 表10-2 液晶显示模块的引脚 模块14个引脚,其中有8条数据线,3条控制线,3 条电源线,见表10-2。通过单片机写入模块的数据和 指令,就可对显示方式和显示内容作出选择。 RS R/W* 操 作 0 0 命令寄存器写入 0 1 忙标志和地址计数器读出 1 0 数据寄存器写入 1 1 数据寄存器读出 表10-3 寄存器的选择 命令格式及命令功能说明 (1) 命令格式 LCD控制器HD44780内有多个寄存器,如表10-3所示。 RS位和R/W*引脚上的电平来选择寄存器,而DB7~DB0则决定命令功能。 命令共11种:清除,返回,输入方式设置,显示 开关控制,移位控制,功能设置,CGRAM(字符生成 RAM)地址设置,DDRAM(显示数据RAM)地址设置, 读忙标志和地址,写数据到CGRAM或DDRAM,从CGRAM 或DDRAM读数据。 这些命令功能强:可组合成各种输入、显示、移位方式以满足不同的要求。 (2)标准字符库 图10-23:字符库的内容、字符码和字型的对应 关系。例如“A”的字符码为41H,“B”的字符码为42H。 10.4.3 8031与LCD的接口及软件编程 1.8031与LCD模块的接口 接口电路见图10-24。将LCM挂接在8031的总线 上,通过对数据总线的读写实现对LCM的控制。 1.软件编程 初始化 用户所编的显示程序,开始必须进行初始化,否 则模块无法正常显示。 显示程序编写(自己阅读) DIR1: MOVX @DPTR,A ;段码→8155HPB口 ACALL DL1ms ;该位显示1ms INC R0 ;指针指向下一个数据单元 MOV A,R3 ;位选码送入A中 JB Acc.5,LD1 ;判断是否扫描到最右边的 ; LED,如到最右边则返回 RL A ;位选码向左移一位,准备让 ; 右边的下一位LED亮位选码 MOV R3,A ;送R3中保存 AJMP LD0 ; LD1: RET ; DSEG: DB 3FH,06H,5BH,4FH,66H,6DH ;共阴极段码表 DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,73H,3EH DB 31H,6EH,1CH,23H,40H,03H DB 18H,00H DL1ms: MOV R7,#02H ;延时1ms子程序 DL: MOV R6,#0FFH DL6: DJNZ R6,DL6 DJNZ R7,DL RET 2.键盘程序设计 (1)判别键盘上有无键闭合 (2)去除键的机械抖动 (3)判别闭合键的键号 (4)使CPU对键的一次闭合仅作一次处理 键盘程序的流程如图10-16。 键盘子程序如下: KEYI:ACALL KS1 ;调用判有无键闭合子程序 JNZ LK1 ;有键闭合,跳LK1 NI: ACALL DIR ;无键闭合,调用显示子程序,延 ;迟6ms后,跳KEYI AJMP KEYI LK1: ACALL DIR ;可能有键闭合,延迟12ms,软件去抖 ACALL DIR ACALL KS1 ;调用判有无键闭合子程序 JNZ LK2 ;经去抖,判键确实闭合,跳LK2处理 ACALL DIR ;调用显示子程序延迟6ms AJMP KEYI ;抖动引起,跳KEYI LK2: MOV R2,#0FEH ;列选码→R2 MOV R4,#00H ;R4为列号计数器 LK4: MOV DPTR,#7F01H ;列选码→8155H的PA口 MOV A,R2 ; MOVX @DPTR,A ; INC DPTR ;数据指针增2,指向PC口 INC DPTR ; MOVX A,@DPTR ;读8155H PC口 JB Acc.0,LONE ;0行线为高,无键闭合,跳 L

文档评论(0)

1亿VIP精品文档

相关文档