PIC单片机与基于HD44780液晶显示模块接口的设计
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
利用单片机端口产生控制信号 8 的 @位数据总线相连 " 后者是利用 $2 2 / @ #所具有的 2位数据总线的功能简 化电 路接 口的一 种接口 方 式 % 以 最 常 用 的 F 4 0 1 6 9 9 G 单片机为例 " 直接控制方式的电路如图 4所示 % H 软件设计 液晶显示模块是一个慢显示器件 " 在执行每条命 令之前必须先确定 I 忙 J 标志为低电平 " 表示显示模 块可以接受命令 % 3 K 4 寄存器与位声明 告诉汇编器要使用哪些端口 : 文件寄存器和控制 位%
L; 9 <M < L; 9 <M <L M ) 6 * L9 ; 9 M ) ;
功能 ! 工作方式设置 & 初始化指令 ( % 其中 !位数据接口 74 "@ 87# "2位数据接口 8 ; ; "’行显示 8>7# "4行显示 8 >74 74 "1 A4 #点阵字符 8? 7# "1 A/点阵字符 % ? & / (9 B ) <= 地址设置
功能 ! 读忙 . ?值和地址计数器 <9值 % 其中 !. 74 "忙 8. 7# "准备好 "此时 <9值的意 ? ?
义由最近一次地址设置 & 9 B ) <= 或 ) <=(定义 % & 4 # ( 写数据
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . 数 据 4 #
# & ! /0 1& )* + $# & ! /0 3 +& )* + $& ! " # & )* + $4 5 ! " # & )* 1 $4 ! " # 6 & )* ,
! " # ( *% " ’# $% & ’( ’=>5< ! " # 将命令参数暂存到文件寄存器的 ! . . $% & ’(单元中 " # 等待 ! . . " /! ! ! " # ; *6 0 " # 模块准备好 9! $" $4 ; " < ! " # % 4 ! " # 5 若准备好则置写入模式 @ . . 9 A, 9 A1 B 4 5A, 4 6 & 9! $" $4 ; " < ! " # % 4 ! " # 6 9! $" $& % 4 ! " # ; 6 < ! " # 95 $% ’=>< ! " # & ’( 给! . . " # 模块发送命令参数 $# ’=>5< ! " # /% / 9! $" $& % 4 ! " # ; " < ! " # 给使能端送入下降沿 9 写入命令 . . 4 & % *4 C
现代电子技术 " ! # $ $ %年第 # #期总第 & ’ (期
新型电子器件
& ’ ( )液晶显示模块接口的设计 ! " #单片机与基于 $%&
林曙光 * 黄超昔 * 武
重庆邮电学院 通信学院 + 摘 重庆
凌
, . / 0
要 1 介绍了基于 23 , , 4 5 -液晶显示模块的基本特性及其与 6 7 8单片机的接口 * 并给出了常用的显示子程序 9 关键词 1 单片机 : 液晶显示 : 接口 : 子程序 中图分类号 1; < . 5 = > 6 文献标识码 1? 文章编号 1> , < 4 < A < 0A A . / < @+
现代电子技术 " ! # $ $ %年第 # #期总第 & ’ (期
$% ! " # & ’(
新型电子器件
,& )* + 定义子程序内部使用的暂存寄存器 . . 用于子程序 # . . & ! /02 2 2中 用于子程序 3 . . $# & ! /02 2 2中 定义端口 / 的第 +位为 ! . . " # 使能控制位 定义端口 / 的第 1位为 ! . . " # 读写控制位 定义端口 / 的第 ,位为 ! . . " # 寄存器选择位
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # 4 0 <9 1 <9 2 <9 3 <9 ’ <9 4 <9 # . ? <9
功能 ! 光标复位回到 # # $ 处% & 3 ( 输入模式设置
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # # # # # # # 4 + 6 *
+ *8 *8 *, . / *8 0 8 ‘ d d e Z e‘ f 8 ‘ ggY \ b h [ i b ‘ \ X ‘ \ Z j b \ Z]\ b k e l m b i n‘ f 6 ‘ m i [ \ o; e d e h ‘ ggY \ b h [ i b ‘ \ X ‘ \ Z j b \ Z X b \ [
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # # # 4 <1 <2 <3 <’ <4 <#
功能 !设置 9 B ) <= 用于存储用 B ) <= 地址 "9 户 自定义的点阵字符代码 "0 2.可自定义 @个 1 A@点 阵字符或 2个 1 A4 4点阵字符 % & @ () <= 地址设置
& & ’ ( ) R K C B QS # % OG Q T P B C % B C D E FG H " F I B J H K L BM D I N! " #OD L J G L G F I J G P P B JK F Q$%
*2]^V_ 8 *c] U U 7 VW X Y Z Y [ \ Z X [ ‘ a b b \ Z
功能 ! 设置显示 : 光标及闪烁开 : 关 % 其中 !- 表示显示开关 !74为开 "7#为关 8 74为开 "9 7#为关 8 9表示光标开关 !9 74为开 ". 7#为关 % .表示闪烁开关 !. & 1 ( 光标画面位移
# + / 0 1 2 3 ’ 4 ) *) , . . . . . . . . # # # # # 4 + + * 9 ) ; 5 5
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # # 4 <0 <1 <2 <3 <’ <4 <#
万方数据
0 0
N OP F Q) M . 定义端口 .的数据寄存器地址 + + N OP M ) 6 * . 定义端口 .的方向寄存器地址 + + N OP F Q) M < 定义端口 < 的数据寄存器地址 + +
> = A 指令集 + > 0 清屏
" 4 3 . 3 / 3 , 3 < 3 A 3 > 3 | W| c 3 ? ? ? ? ? ? ? ? - >
. /
林曙光等 ! 2 2 / @ #液晶显示模块接口的设计 F 6 9单片机与基于 $功能 ! 清显示屏 " 光标回到 # # $ 处% & ’ ( 归位
功能 ! 光标 : 画面移动 " 不影响 ) <=% 其中 !* + + 7#光标平 974画面平移一个字符位 "* 9 移一个字符位 8 + 74右移 ") + 7#左移 % ) ; ; & 0 ( 功能设置
# + / 0 1 2 3 ’ 4 ) *) , . . . . . . . . # # # # 4 + ; > ? 5 5
Biblioteka Baidu
- 三态 3 ? > 三态 3 ? A 三态 3 ? < 三态 3 ? , 三态 3 ? / 三态 3 ? . 三态 3 ? 4 三态 3 ?
表 % 真值表
" | W | c > > > > x 下降沿 下降沿 高电平 高电平 功 能 写指令代码或显示地址 写数据 读忙标志和 ^8 + 0值 ^o l e m m8 ‘ Y \ i 读数据
收稿日期 1A < 4 > < 万方数据
据线 9 真值表如表 A所示 9 表 ! $% & & ’ ( )的液晶显示模块的引脚功能
引脚号 符号 > A < , / . 4 5 $ > > > > A > < > , wm m wo o w| W " | c x 输入 输入 输入 状态 功能 电源地 # /w 电源 对比度调整端 寄存器选择端 1 >为数据寄存器 : -为指令寄存器 读写控制选择端 1 >为读 : -为写 使能端 数据总线 + 0 U W ? 数据总线 数据总线 数据总线 数据总线 数据总线 数据总线 数据总线 + 0 zW ?
功 能! 根 据 最 近 设 置 的 地 址 性 质" 数 据 写 入 ) <= 或 9 B ) <=% & 4 4 ( 读数据
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . 数 据 4 4
功 能 !根据最近设置的地址性质 "从 ) <= 或 9 B ) <= 读出数据 % E 硬件电路设计 基于 $2 2 / @ #的 字 符 型 液 晶 显 示 模 块 与 单 片 机 有 ’种连接方式 !直接控制方式 & @位总线 (与间接控 制方式 & 2位总线 ( "前者可直接将单片机和显示模块
1; , , 4 5 - r *b p R C I J K L I X b mq [ q e lb \ i l ‘ o Y h e mi X e23 [ m e ob \ o Y m i l n m i [ \ o [ l o h X [ l [ h i e l U 8 3 g‘ o Y d e m i mb \ i e l f [ h esb i X6 7 8[ \ o = m ‘ ger [ m b hm Y r q l ‘ Z l [ gm 1gb :U :b :m tB u M G J Q C h l ‘ h ‘ \ i l ‘ d d e l 8 3 \ i e l f [ h e Y r q l ‘ Z l [ g
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # # # # # # # # 4 5
功 能 !设置 ) <= 地址 ") <= 用于存放待 显示的地址 % 其中 !>7# "4行显示 !<0 C<# 7# C’ / 2 #个字 $& 符( 8 C<# 72 # / $C0 $ 读 及 & D ( . ? <9值
"’行显示 !首行 <0 C<# 7# # / >74 $C’ $"<0
功能 ! 设置光标和显示模式 % 其中 !6 + 74时光标向右移 "6 + 7#时光标向左移 8 7 4屏幕上的文字 可以移动 "* 7 #屏 幕 上 的 文 * 字不可以移动 % & 2 ( 显示开关控制
+ / 0 1 2 3 ’ 4 # ) *) , . . . . . . . . # # # # # # 4 9 .
基于 23 , , 4 5 -的字符型液晶显示模块是一种常用 的 液 晶 显 示 器 件 * 主 控 制 驱 动 电 路 为 23 , , 4 5 其 他 一 些 公 司 的 电 路 与 之 全 兼 容 如 + 0 * * 27 ; ^8 27 5 5 > *W . . * Vvw^; x y 的 V;< ^zW ]V_ 公司的 yW 公司的 由其控制的液晶显示 4 5 > 9 W 6 U 8 ^W ]V6 U ]W 器 可以提供若干个 / {4或 / {> -点阵块组成的显示字 符群 *每个点阵块为一个字符位 *字符间距和行距都为 一个点的宽度 *具有 . ,?的自定义字符 | ^z*可自定 义 5个 / 可以提供 {5点阵字符或 ,个 / {> >点阵字符 9 字符数 { 行数 0 各种显示屏规格 * 广泛应 5 {> }, {,+ 用于智能仪表 ~ 通讯 ~ 办公自动化及军工等领域 9 ! 液晶显示模块的特点 > = > 引脚功能 表 >是一种基于 23 , , 4 5 -的液晶显示模块的引脚 功能 9 有些显示模块有 A个使能端 * 这种器件可以提供 多达 ,行的显示屏 *一个使能端可以控制 A行 9当 | W 和| 当 " c 都为低电平时可以写入指令或显示的地址 : 可以写入要显示的数 " | W为高电平 ~ | c 为低电平时 * 据 :当 | 为低电平 为高电平时 ~| " * 可以读出忙 W c 信 号和地址计数器 + 当使 9 8 _ | ^z 或 3 3 | ^z 的值 0 能端 x由高电平变为低电平时 * 液晶模块执行写操作 写入命令或要显示的数据 ~ 地址 0 + : }3 4为双向数 3