收藏 分享(赏)

基于ARM嵌入式系统的LCD显示.pdf

上传人:HR专家 文档编号:4927443 上传时间:2019-01-23 格式:PDF 页数:19 大小:669.11KB
下载 相关 举报
基于ARM嵌入式系统的LCD显示.pdf_第1页
第1页 / 共19页
基于ARM嵌入式系统的LCD显示.pdf_第2页
第2页 / 共19页
基于ARM嵌入式系统的LCD显示.pdf_第3页
第3页 / 共19页
基于ARM嵌入式系统的LCD显示.pdf_第4页
第4页 / 共19页
基于ARM嵌入式系统的LCD显示.pdf_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、 嵌入式系统原理与设计 期末论文 题 目: 基于 ARM 嵌入式系统的 LCD 显示 专 业: 电子信息科学与技术 学生姓名: 张昀 学生学号: 120304014 院 系: 物理与电子信息工程学院 年级、班: 2013 级 2 班 指导教师: 文良华 2015 年 6 月 20 日 宜宾学院 Y I B I N U N I V E R S I T Y 摘 要 嵌入式系统是嵌入到对象体系中的专用计算机系统。以嵌入式计算机为核心的嵌入式系统是继 IT 网络技术之后,又一个新的技术发展方向。本文以 LPC2124 为控制核心介绍和设计了一款基于的 ARM 嵌入式系统的 LCD 显示系统。该系统在功

2、耗,体积,集成度,成本等都有较好的优势,具有一定的实用意义。 关 键词 : 嵌入式系统 ,优势 ,核心 ,集成度 ,体系 Abstract Embedded system is the dedicated computer system of embedded into the object system. An embedded computer which is as the core of embedded system, after following the IT network technology, is a new technology development. This pa

3、per describes the control core LPC2124 and designed a system based on the ARM embedded LCD display .The system has advantages on the system power consumption, size, integration, cost and others .It is of practical significance. Keywords: Embedded system, advantage, core, integration, system目录 摘 要 .

4、II ABSTRACT. II 一、绪论 1 二、 LPC2124 的简介及其系统结构分析 1 2.1 嵌入式系统概述 1 2.1.1 嵌入式系统的硬件特征 . 1 2.1.2 嵌入式操作系统的分类 . 2 2.2 LPC2100 系列简介 . 2 2.3 LPC2100 系列系统结构分析 . 2 三、 1602 特点及使用方法 . 3 3.1 1602 的简介 3 3.2 1602 的管脚功能 4 3.2.1 字 符集 . 6 3.2.2 显示地址 . 7 3.2.3 指令集 . 7 3.3 1602 的硬件连接 8 3.4 1602 的底层驱动问题 8 3.5 1602 液晶的初始化 .

5、10 四、基于 ARM 嵌入式系统的 LCD 显示 . 10 4.1 硬件设计 . 10 4.2 系统软件设计 . 12 4.2.1 主程序流程图 . 12 4.2.2 主程序 main.c 12 五、总结 . 15 参考文献 . 15 基于 ARM 嵌入式系统的 LCD 显示 1 一、绪论 由于 LCD 液晶显示器具有功耗低、体积小、重量轻、超薄等诸多其他显示器无法 比拟的优点,已广泛应用于各种智能型仪表和低功耗电子产品中。液晶显示器分为笔段式、字符点阵式和图形点阵式三种。前两种可显示数字、字符和符号等,而图形点阵式液晶显示器还可以显示汉字和任意图形,达到图文并茂的效果,其应用已越来越广泛。

6、本文以液晶显示器 1602 为例介绍了液晶显示器的基本原理及在 ARM 嵌入式系统下的程序设计。 二、 LPC2124 的简介及其系统结构分析 2.1 嵌入式系统概述 所谓嵌入式系统,是指用于执行独立功能的专用计算机系统,它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件 ,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实时诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件与硬件可裁减,以满足系统对功能、成本、体积和功耗等要求。 2.1.1 嵌入式系

7、统的硬件特征 嵌入式系统的硬件必须根据具体的应用任务,以功耗、成本、体积、可靠性、处理能力等为指标来选择。嵌入式系统的核心是系统软件和应用软件。由于存储空间有限,因而要求软件代码紧凑、可靠,大多对实时性有严格的 要求。 早期的嵌入式系统设计方法,通常是采用“硬件优先”原则。在粗略估计软件任务需求的情况下,首先进行硬件设计与实现。然后在此硬件平台上,再进行软件设计。因为很难充分利用硬件软件资源,取得最佳性能的效果。同时,一旦在测试时发现问题,需求对设计进行修改时,整个设计流程将重新进行,对成本和设计周期的影响很大。这种传统的设计方法只能改善硬件 /软件各自的性能,在有限的设计空间不可能对系统做出

8、较好的性能综合优化,在很大程度上依赖于设计者的经验和反复实验。 随着电子系统功能的日益强大和微型化,系统设计涉及的问题越来越多 ,难度也越来越大。硬件和软件也不再是截然分开的两个概念。因而出现了软硬件协同的设计方法。在系统目标要求下,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,得到高性能低代价的优化设计方案 。 2 2.1.2 嵌入式操作系统的分类 目前流行的嵌入式操作系统可以分为两类:一类是从运行在个人电脑上的操作系统向下移植到嵌入式系统中,形成的嵌入式系统,如微软公司的 Windows CE,SUN 公司的 Java 操作系统,嵌入式 Linux 等。 另一类是实时操作系统,如

9、 WindRiver 公司的 VxWorks, ISI 的 pSOS, ATI的 Nucleus,和免费公开源代码的 uC/OS-II 等。 2.2 LPC2100 系列简介 LPC2114/2124 微控制器具有 2 个端口 P0 和 P1,可以作为 GPIO 使用的引脚为 46 个。 LPC2210/2212/2214 微控制器则包含另外 2 个端口 P2 和 P3,这 2 个端口与外部存储器总线复用,当它们全部作为 GPIO 使用时, GPIO 引脚数多达 112 个。 2.3 LPC2100 系列系统结构分析 LPC210X 控制器包含 LPC2104、 LPC2105、 LPC210

10、6,除了片内静态 RAM 不同外,其他完全相同 。该系列器件具有 32 个 GPIO 口( P0.0 P0.31),没有外部总线,大多 GPIO 口是复用口,所以它一般不适合连接大屏幕液晶显示器,但驱动小规模液晶模块进行工业控制上的参量显示还是非常合适的。 GPIO 包含四个寄存器,如表 1 所列。 IOxPIN:该寄存器反映了当前引脚的状态。 IOxPIN中的 x对应于某一个端口,如 P1 口对应于 IO1PIN.所以芯片存在多少个端口,就有多少个 IOxPIN 分别与之对应。 表 1 IOPIN 地址与菜单 IOPIN 0xE0028000 引脚值寄存器,引脚当前状态都从该寄存器读出 IO

11、xDIR:当引脚设置为 GPIO 输出 模式时,可使用该寄存器控制引脚的方向。向某位写入1 使对应引脚作为输出功能,写入 0 时作为输入功能。作为输入功能 时,引脚处于高阻态。 表 2 IODIR 地址与菜单 IODIR 0xE002800C 方向控制寄存器。控制每个 I/O 方向 IOxSET:当引脚设置为 GPIO 输出模式时,可使用该寄存器从引脚输出高电平。向某位写入 1 使对应引脚输出高电平。写入 0 无效。从该寄存器读回的数据为 GPIO 输出寄存器的值。该值不反映外部环境对引脚的影响。 基于 ARM 嵌入式系统的 LCD 显示 3 表 3 IOSET 地址与菜单 IOSET 0xE

12、0028004 输出置位寄存器,只能写 1,对应引脚输出高电平 IOxCLR:当引脚设置为 GPIO 输出模式时,可使用该寄存器从引脚输出低电平。向某位写入 1 使对应引脚输出低电平。写入 0 无效。注意:读取该寄存器无效,不能读回输出寄存器的值。 表 4 IOCLR 地址与菜单 IOCLR 0xE0028008 输出清零寄存器,只能写 1,对应引脚输出低电平 使用 GPIO注意要点: 1、引脚设置为输出方式时,输出状态由 IOxSET和 IOxCLR中最后操作的寄存器决定; 2、大部分 GPIO 输出为推挽方式(个别引 脚为开漏输出),正常拉出 /灌入电流均为 4mA(短时间极限值 40 m

13、A); 3、复位后默认所以GPIO 为输入模式。 另外 GPIO 口还包含两个引脚连接模块寄存器 PINSEL0、 PINSEL1,用来为 32个引脚配置 I/O 功能或其他特殊功能 LPC210X 可直接驱动 5V 液晶模块考虑到功耗,不赞成连接 LCD 接口信号说明: 表 5 LCD 接口信号说明表 三、 1602 特点及使用方法 3.1 1602 的简介 工业字符型液晶,能够同时显示 16x02 即 32 个字符。( 16 列 2 行) 1602 是一款最常用也是最便宜的液晶显示屏。 最多可以显示两行标准字符,每行最多可以显示 16 个字符。 1602 可以显示内部常用字符 (包括阿拉伯

14、数字,英文字母大小写,常用符号和日文假名等 ),也可以显示自定义字符 (单或多个字符组成的简单汉字,符号,4 图案等,最多可以产生 8 个自定义字符 )。 显示操作的过程: 首先确认显示的位置,即在第几行,第几个字符开始显示。也就是要显示的地址,如下图所示的显示地址。 图 1 显示地址表 第一行的显示地址是 0x80 0x8F,第二行的显示地址是 0xC0 0xCF。例如想要在第 2 行,第 3 个位置显示一个字符,那么地址码就是 0xC2。在编程过程中,通常编写一个函数确定在某行某个位置显示数据。函数需要 行参数( y),和 列参数( x)来确定显示位置。 显示常用字符。 1602 液晶模块

15、内部的字符发生存储器( CGROM)已经存储了 160 个不同的点阵字符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常 用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A” 的代码是 41H,显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母 “A” 。 3.2 1602 的管脚功能 图 2 1602 管脚图 1602 字符型 LCD 通常有 14 条引脚线或 16 条引脚线的 LCD,多出来的 2 条 线基于 ARM 嵌入式系统的 LCD 显示 5 是背光电源线 VCC(15 脚 )和地线 GND(16 脚 ),其控制原理与 14

16、脚的 LCD 完全一样,其中: 表 6 1602 管脚表 引脚 符号 功能说明 1 VSS 一般接地 2 VDD 接电源( +5V) 3 V0 液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生 “ 鬼影 ” ,使用时可以通过一个 10K 的电位器调整对比度)。 4 RS RS 为寄存器选择,高电平 1 时选择数据寄存器、低电平 0 时选择指令寄存器。 5 R/W R/W 为读写信号线,高电平 (1)时进行读操作,低电平 (0)时进行写操作。 6 E E(或 EN)端为使能 (enable)端,下降沿使能。 7 DB0 底 4 位三态、 双向数据总线 0 位

17、(最低位) 8 DB1 底 4 位三态、 双向数据总线 1 位 9 DB2 底 4 位三态、 双向数据总线 2 位 10 DB3 底 4 位三态、 双向数据总线 3 位 11 DB4 高 4 位三态、 双向数据总线 4 位 12 DB5 高 4 位三态、 双向数据总线 5 位 13 DB6 高 4 位三态、 双向数据总线 6 位 14 DB7 高 4 位三态、 双向数据总线 7 位(最高位)(也是 busy flag) 15 BLA 背光电源正极 16 BLK 背光 电源负极 寄存器选择控制表 表 7 寄存器选择控制表 RS R/W 操作说明 6 0 0 写入指令寄存器(清除屏等) 0 1 都

18、 busy flag( DB7),以及读取地址计数器( DB0DB6)值 1 0 写入数据寄存器(显示各字型等) 1 1 从数据寄存器读取数据 注:关于 E=H 脉冲 开始时初始化 E 为 0,然后置 E 为 1,再清 0. busy flag( DB7):在此位为被清除为 0 时, LCD 将无法再处理其他的指令要求。 3.2.1 字符集 1602 液晶模块内部的字符发生存储器( CGROM)已经存储了 160 个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母 “A” 的代码是 01000001B( 4

19、1H),显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母 “A” 。 因为 1602 识别的是 ASCII 码,试验可以用 ASCII 码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如 A 。 以下是 1602 的 16 进制 ASCII 码表: 表 8 1602 的 16 进制 ASCII 码表 基于 ARM 嵌入式系统的 LCD 显示 7 读的时候,先读左边那列,再读上面那行,如:感叹号!的 ASCII 为 0x21,字母 B 的 ASCII 为 0x42(前面加 0x 表示十六进制)。 3.2.2 显示地址 表 9 1602 显示地址表 1 2 3 4 5

20、6 7 8 9 10 11 12 13 14 15 16 00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH 40H 41H 42H 43H 44H 45H 46H 47H 48H 49H 4AH 4BH 4CH 4DH 4EH 4FH 3.2.3 指令集 1602 通过 D0D7 的 8 位数据端传输数据和指令。 显示模式设置: (初始化 ) 0011 0000 0x38 设置 162 显示, 57 点阵, 8 位数据接口; 显示开关及光标设置: (初始化 ) 0000 1DCB D 显示 (1 有效 )、 C 光标

21、显示 (1 有效 )、 B 光标闪烁 (1 有效 ) 0000 01NS N=1(读或写一个字符后地址指针加 1 /想要显示的内容 基于 ARM 嵌入式系统的 LCD 显示 13 uint8 txt1=“By sun bi yun“; uint8 txt2=“ 2010-03-29“; /* * 名称: ChkBusy() * 功能:检查总线是否忙 */ void ChkBusy() IO0DIR=0x700; while(1) IO0CLR=rs; IO0SET=rw; IO0SET=en; if(!(IO0PIN /若不忙则转 IO0CLR=en; IO0DIR=0x7ff; /* * 名

22、称: WrOp() * 功能:写函数 */ void WrOp(uint8 dat) ChkBusy(); IO0CLR=rs; /全部清零 IO0CLR=rw; IO0CLR=0xff; /先清零 IO0SET=dat; /再送数 IO0SET=en; IO0CLR=en; /* * 名称: WrDat() * 功能:写数据函数 */ void WrDat(uint8 dat) 14 ChkBusy(); IO0SET=rs; IO0CLR=rw; IO0CLR=0xff; /先清零 IO0SET=dat; /再送数 IO0SET=en; IO0CLR=en; /* * 名称: lcd_in

23、it() * 功能: lcd 初始化函数 */ void lcd_init(void) WrOp(0x38); WrOp(0x06); /光标加 1 WrOp(0x0c); /开显示 /* * 名称: DisText() * 功能:显示文本函数 */ void DisText(uint8 addr,uint8 *p) WrOp(addr); while(*p !=0)WrDat(*(p+); /* * 名称: main() * 功能:显示文本 */ int main(void) lcd_init(); IO0DIR=0x7ff; /设置为输出 IO0CLR=0x7ff; DisText(0x8

24、0,txt0); DisText(0xc0,txt1); DisText(0xc6,txt2); 基于 ARM 嵌入式系统的 LCD 显示 15 while(1); 五、 总结 通过对上述应用实例长时间观察,系统一直稳定的运行,系统的各项指标都达到设计要求,由此可知在 PROTEUS 中画出以 LPC2100 系列 ARM 器件为处理核心的 LCD 显示原理图并进行仿真分析是成功的。可以说 ARM 功耗低,体积小,集成度高,成本低,使用实时操作系统 RTOS,使实时性得到大大提高。并且一般的ARM 芯片内都有较丰富的内部外设,(嵌入式系统是嵌入到对象 体系中的专用计算机系统。以嵌入式计算机为核

25、心的嵌入式系统是继 IT 网络技术之后,又一个新的技术发展方向。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能,可靠性,成本,体积,功耗等严格要求的专用计算机系统。另外利用 LCD 显示提供的系统特征,也可以简化多任务程序设计,满足多个任务的时间要求,大大降低开发难度,轻松地完成前后台编程方法难以完成的任务。可以预计在嵌入式系统软件设计中 LCD 显示的应用领域势必变得更加的广泛。 参考文献 1周立功 .ARM 嵌入式系统基础 教程(第 2 版) M.北京:北京航空航天大学出版社 .2008. 2孙红波 ,陶品,李莉 .ARM 与嵌入式技术

26、M. 北京:电子工业出版杜 .2006. 3李善平 ,刘文峰 ,王焕龙 . Linux 与嵌入式系统 M.北京:清华大学出版社 .2006. 4沈建华译 . ARM 嵌入式系统开发 软件设计与优化 M.北京:北京航空航天大学出版社 .2005. 5田泽 .嵌入式系统开发与应用 M.北京:北京航空航天大学出版社 .2005. 6Frank Vahid, Tony Givargis Embedded System Design: A Unified Hardware Software Introduction.骆丽译 .嵌入式系统设计 J. 北京:北京航空航天大学出版社 .2004. 7马忠梅 .ARM 嵌入式处理器结构与应用基础 M.北京:北京航空航天大学出版社 .2002.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 大学论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报