基于ARM7微处理器的中文液晶显示技术

发布者:sky0001最新更新时间:2010-01-13 来源: 现代电子技术关键字:ARM  ST7920  中文菜单  液晶显示模块 手机看文章 扫描二维码
随时随地手机看文章

1 引言

    液晶显示屏LCD作为一种功耗低、体积小、无辐射的显示器件,近几年被广泛应用于各式各样的嵌入式电子产品中,LCD可分为段位式、字符式和点阵式三种,其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求,而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动动画功能,分区开窗口、反转、闪烁等功能,用途十分广泛,为了简化液晶 显示电路的设计和应用,生产厂家通常将液晶显示单元、显示控制器,显示内存和显示驱动电路等装配在一起,做成液晶显示模块LCD Module(LCM)[1]。LCM对外提供标准数据和控制接口以及控制指令,本文以ATM12864C为例,介绍带控制驱动器ST7920的液晶显示模块与Philips公司的ARM7微控制器LPC2214的接口设计及编程方法,并在此基础详细介绍在液晶显示屏上显示可连续滚动的中文菜单及菜单项反白选择显示的设计方法,并讨论如何解决汉字显示过程中出现的乱码问题。

2 硬件实现

    ATM12864C是广东金鹏电子有限公司生产的中文液晶显示模块,该款液晶显示模块采用中文字型点阵的控制驱动器ST7920,他内含8192个16×16点阵的国标简体汉字和126个16×8点阵的英文符号字库。用户输入国标码或ASCII码即可实现文本显示。满屏显示为8个汉字×4行,另外,还提供64×256点的绘图RAM(GDRAM),可以与文字混合显示,而且内含字型产生RAM(CGRAM),提供可编程造字功能,ATM12864C提供的外部接口信号有:8位数据总线D0-D8;寄存器选择信号R/S,当R/S为高电平时,控制数据寄存器,R/S为低电平时,控制指令寄存器,读写信号R/W,R/W为该电平时读,低电平时写,使能信号E,下降沿有效,ATM12864C的写操作时序如图1(b)所示,读操作时序除R/W信号为高电平外,其余与写操作时序相同[2]。


 
    LPC2214是Philips公司推出的一款基于一个支持实时仿真和跟踪的32位ARM7TDMI-S CPU的微控制器,频率高达60MHz,带有256KB嵌入的高速片内Flash存储器和4个32位宽度的外部存储器接口,是一款低功耗、高性能、小封装的微控制器,LPC2214的外部存储器访问时序如图1(a)所示[1]。
 
    为了节省微控制器的普通I/O口资源和简化程序的编写,LPC2214可以通过数据总线与控制信号直接采用外部存储器访问形式控制液晶显示模块,这种方式对于一些I/O口资源紧张的复杂系统有着更加重要的意义,由于STA7920的数据访问时序与LTC2214的存储器访问时序有很大区别,如图1所示。LPC2214和液晶显示模块的接口电路设计的关键是如何通过合理的设计,使得LPC2214的存储器访问时序和ST7920的访问时序正确的配合。

    LPC2214与液晶显示模块的接口电路如图2所示。LPC2214通过低位地址A1控制LCM的R/S信号,以选择当前控制的寄存器,通过对LPC2214写信号WE做适当的延迟后作为LCM的R/W信号控制数据总线上的数据流方法。而LCM的使能信号E由LPC22414的读信号OE、写信号WE和存储器控制器的片选信号CS1来合成产生,在产生读写信号R/W信号的电路中,电阻R和电容C的选择是关键,根据LPC2214和ST7920的电气特性(具体见文献[1,2])和调试的结果,理想的选值:R取1KΩ,C取12PF,为了实现低功耗,LCM的背光通过一个普通I/O口来控制,当有外部按键响应时,背光点亮,否则背光熄灭。


    由于LCM的片选信号由CS1控制,即使用LPC2214外部存储器接口的Bank1地址空间,而R/S信号由A1控制,所以LCM的操作如下:

    命令输入地址:0x81000000

    数据操作地址:0x81000002

3 软件设计

    在带汉字库的液晶屏显示程序设计过程中,中文菜单的滚动显示和菜单项的反白选择是关键,本文所选的液晶显示模块可显示4行,每行可显示8个中文字符。当要显示的菜单项大于4个时,需要进行滚屏显示。本文设计了一种人机交互友好的菜单操作程序,该程序的基本思想:在内存中开辟一个可显示4×16得二维字符型数组的显示缓冲区,把要显示菜单项列表存储在另一个二维数组中,通过改变显示函数LCM_Show()的参数,方便、灵活地显示菜单列表中指定的菜单项,假设要显示如图3(a)中的5项菜单,默认的显示焦点在第一行,即把第一行的菜单项进行反白显示,当按"下移"键,显示焦点下移一行。当焦点下移至液晶显示屏最后一行时,如图3(b)所示,此时再按"下移"键,显示屏向上滚动,如图3(c)所示,当继续按"下移"键时,显示屏继续向上滚动,循环显示菜单列表中的5项菜单,如图3(d)所示,按"上移"键,操作相同。
 


    本文通过显示函数LCM_Show()和反白显示函数LCM_ShowInvert()来实现如上所述的菜单连续滚动显示功能及焦点反白显示功能。具体代码如下:

 
 

 
 
 
 
    在显示汉字的过程中,显示内容经常是汉字和ASCII码混合,由于汉字是由2个字节组成,ASCII码是一个字节,如果显示内容中的ASCII号码中的个数是单数,ASCII码后面汉字的显示就会出现乱码的现象。

    针对这一现象,本文提出了在显示前对显示内容进行格式化的方法,其基本思想是:把连续的单数个ASCII码字符后面加一个空格,使显示内容中的连续ASCII码字符保持双数,这种方法很好地解决了汉字显示时的乱码现象。程序流程如图4所示。


 
4 结语

    本文在对ARM7微控制器LPC2214和带控制驱动器ST7920的液晶显示模块的访问时序进行研究的基础上,设计了他们之间的接口电路,该接口电路无需增加普通I/O,直接使用LPC2214的外部存储器访问形式简单方便地对液晶显示模块进行控制,既节省了普通I/O口,也使得程序的编写更加方便,同时也给出了中文菜单滚屏显示和菜单项反白选择的程序,并且针对在显示过程中出现的乱码现象进行讨论,给出解决方案和程序流程。对于基于ARM微控制器的嵌入式系统的具有汉字显示功能的显示系统的设计提出了一个行之有效的解决方案。

关键字:ARM  ST7920  中文菜单  液晶显示模块 引用地址:基于ARM7微处理器的中文液晶显示技术

上一篇:展望2010,ARM希望抢夺8/16位应用市场
下一篇:uCOS II在ARM处理器上移植过程中的中断处理

推荐阅读最新更新时间:2024-03-16 12:27

ARM嵌入式系统中触摸屏的中断控制方法
随着嵌入式微处理器性能的提高,集成的外围接口设备越来越多,而外围设备与处理器之间多采用中断方式进行通信,即使在没有操作系统的情况下,也常需要对多个外围设备的中断处理例程进行动态加载,从而实现对多个外围设备的集中动态管理。同时,中断功能可以解决CPU内部运行速度远远快于外部总线速度而产生的等待延时问题。因此,嵌入式微处理器的应用设计中,中断处理通常是系统的核心任务之一。 1 触摸屏 (1)触摸屏简介 随着多媒体信息查询的与日俱增,人们越来越关注触摸屏。触摸屏具有坚固耐用、反应速度快、节省空间、易于交流等许多优点,作为一种最新的电脑输入设备,它是目前最简单、方便、自然的人机交互方式。它赋予多媒体崭新的面貌,是极富吸引力的
[单片机]
<font color='red'>ARM</font>嵌入式系统中触摸屏的中断控制方法
ARM状态寄存器访问指令
  ARM中有两条指令用于在状态寄存器和通用寄存器之间传送数据。   状态寄存器中有些位是当前没有使用的,但在ARM将来版本中有可能使用这些位,因此用户程序不要使用这些位。   程序不能通过直接修改CPSR中T的控制位直接将程序状态切换到Thumb状态,必须通过BX等指令完成程序状态的切换。   通常修改状态寄存器是通过“读取-修改-写回”的操作序列来实现。   状态寄存器访问指令包括以下两条。   (1)MRS 状态寄存器到通用寄存器的传送指令   MRS(条件) Rd ' CPSR   MRS指令用于将状态寄存器的内容传送到通用寄存器中。   MRS指令主要用于以下3种场合。   ·通常通过“读取-修改-写回“
[单片机]
ARM体系结构学习3
ARM程序状态寄存器: ARM体系结构包含1个当前程序状态寄存器(CPSR)和5个各份的程序状态寄存器(SPSRs)。使用MSR和MRS指令来设置和读取这些寄存器。   当前程序状态寄存器(CPSR),持有关于当前 处理器 状态的信息。其他5个各份的程序状态寄存器(SPSR),每个特权模式都有一个,持有完成在这个模式下的例外处理时处理器必须返回的关于状态的信息。   SPSR用来进行异常处理,其功能包括:   (1)保存ALU中的当前操作信息。   (2)控制允许和禁止中断。   (3)设置处理器的运行模式。   程序状态寄存器的每一位的安排如图所示。 图程序状态寄存器格式   1.条件码标志(Condition
[单片机]
<font color='red'>ARM</font>体系结构学习3
Arm中国最快年内将登陆A股市场?官方怎么说
  随着此前富士康通过证监会针对“独角兽”公司的快速上市通道,实现了36天闪电过会的奇迹。再加上,证监会有关CDR(中国存托凭证)试点意见已经国务院同意。这也意味着,此前曾在国外上市的独角兽企业也能够通过CDR的形式在国内A股市场实现快速上市。在此之后,多家此前已在海外上市的知名企业纷纷被传出将来A股上市。下面就随嵌入式小编一起来了解一下相关内容吧。   4月1日,台湾媒体就爆料称,全球晶圆代工龙头台积电拟通过CDR的形式赴大陆进行IPO上市。不过随后芯智讯在向台积电相关高管求证后,对方对此消息进行了否认,并称之为“愚人节新闻”。随后台积电官方也对此消息进行了辟谣。   今天,业内又有媒体传出 Arm (安谋)中国正在寻求国内资
[嵌入式]
基于ARM的手指静脉识别系统
手指静脉识别技术是一种通过手指中静脉特征信息对人体身份进行认证的技术 ,作为第二代生物认证技术它有很高的防伪性,正吸引越来越多的学者进行研究。与其他生物识别技术相比,手指静脉识别技术具备以下主要优点:(1)由于手指静脉血管分布于身体内部,所以不需考虑皮肤表面因素。(2)手指静脉识别是进行活体检测的技术,具有更高的安全性。(3)随着摄像头的广泛应用,其价格非常便宜,用其采集静脉图像极大降低了开发成本。手指静脉识别技术可以应用的领域非常广,如银行、法院等保密安全系统;智能楼宇、学校门禁及考勤等公共系统。这些应用场合不仅要求识别算法的快速性,还要求识别设备小型化、便携化以及稳定性。所以摆脱计算机的约束,在嵌入式系统上实现手指静脉识别成为今
[单片机]
基于<font color='red'>ARM</font>的手指静脉识别系统
linux系统学习1-8:第1个ARM裸板程序及引申
第001节:辅线1_硬件知识_LED原理图 实现点亮LED的步骤: 1.看原理图,确定控制led的引脚 通过主芯片使用引脚输出:3.3V点亮led;0V熄灭led。 -接法: 引脚驱动能力不足:使用三极管, 接法介绍: -接法1: -接法2: 2.看主芯片手册,确定如何设置/控制引脚 3.写程序 第002节:辅线1_硬件知识_s3c2440启动流程与GPIO操作 知识点: 网络net,同名的net表示连接在一起 网络中的n,常表示低电平有效 怎么让GPF4输出1/0 先配置为输出引脚 设置状态 设置GPFCON =0b01(0b表示二进制,9为0,8为1),GPF4配置为输出 设置GPFDAT =
[单片机]
linux系统学习1-8:第1个<font color='red'>ARM</font>裸板程序及引申
详解LPC2000系列ARM微控制器的CAN验收滤波器应用
CAN(Controller Area NetWork)总线,即控制器局域网总线,是由德国Bosch公司于1982年开发和推出的最早用于汽车内部测量与执行部件之间的数据通信协议。在20多年的历史中,CAN总线在许多领域得到了应用,是到目前为止唯一有国际标准的现场总线。 CAN现场总线按照国际标准化组织ISO提出的开放系统互联(OSI)参考模式,实现其中的物理层、数据链路层和应用层。CAN控制器用来实现CAN总线协议。CAN控制器芯片分为两类:一类是独立的控制器芯片,如SJA1000;另一类是和微控制器做在一起,如Philips公司的LPC2000系列32位ARM微控制器。两类控制器都提供了报文标识过滤的验收滤波器。但独立CAN
[单片机]
详解LPC2000系列<font color='red'>ARM</font>微控制器的CAN验收滤波器应用
AI持续发热,Arm新一代Neoverse CSS V3和CSS N3为客户释放最优性能
AI热潮不仅没有熄火,反而愈演愈烈。2024年,由于市场对于AI硬件的需求永不满足,计算处于变革阵痛中。随着人工智能 (AI) 渗透到教育、就业、制造、医疗和交通等领域,AI 正在改变经济发展和我们的日常生活,而 Arm 是这一切改变的基石。 5年前,Arm 宣布了针对服务器、云和基础设施 CPU 内核的 Neoverse 计划。彼时,Arm制定了一项雄心勃勃的计划,计划开发V、N、E三个CPU内核系列产品,以满足市场的不同细分市场。虽然后续发展与Arm最初预测略有不同,但基于 Neoverse内核定制CPU的设计已经逐渐成为云服务商采用的风潮。 日前,Arm推出新一代Neoverse CPU内核和计算子系统(CSS)——
[半导体设计/制造]
AI持续发热,<font color='red'>Arm</font>新一代Neoverse CSS V3和CSS N3为客户释放最优性能
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
502 Bad Gateway

502 Bad Gateway


openresty
设计资源 培训 开发板 精华推荐

502 Bad Gateway

502 Bad Gateway


openresty
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
随便看看
    502 Bad Gateway

    502 Bad Gateway


    openresty
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
502 Bad Gateway

502 Bad Gateway


openresty