关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
基于PROTEUS的ARM7显示系统设计与仿真实现
[复制链接]
作者:
襄垣战队收人
版块:
›
MCU单片机技术
›
ARM
发布时间:
2018-6-16 09:12:49
647
0
返回列表
襄垣战队收人
当前离线
新手上路
新手上路, 积分 36, 距离下一级还需 14 积分
新手上路
新手上路, 积分 36, 距离下一级还需 14 积分
积分
36
发消息
楼主
电梯直达
襄垣战队收人
发表于 2018-6-16 09:12:49
|
只看该作者
|
倒序浏览
|
阅读模式
0
引言
随着科技的发展,ARM在社会各个方面的应用越来越广。ARM芯片广泛应用于无线产品、PDA、GPS、网络、消费电子产品、STB及智能卡。LPC2138是Philips公司生产的基于ARM7TDMI的RISC微处理器,主频可达50MHz。液晶显示是嵌入式系统中反映系统输入/输出的人机交互界面,液晶显示以其微功耗、体积小、显示内容丰富、模块化,接口电路简单等诸多优点得到广泛应用。本文在介绍以HD44780为控制器的LM016L液晶模块的引脚结构、功能的基础上,搭建LM016L与LPC2138芯片的硬件接口电路、用c语言编写显示程序,采用PROTEUS软件进行功能仿真。
1
液晶模块结构及功能简介
LM016L液晶模块采用HD44780控制器。HD44780具有简单而功能较强的指令集,可以实现字符移动、闪烁等功能。HD44780控制器由两个8位寄存器、指令寄存器(IR)和数据寄存器(DR)、忙标志(BF)、显示数据RAM(DDRAM)、字符发生器ROM(CGROM)、字符发生器RAM(CGRAM)、地址计数器(AC)构成。IR用于寄存指令码,只能写入不能读出;DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据。BF为1时,液晶模块处于内部处理模式,不响应外部操作指令和接受数据。DDRAM用来存储显示的字符,能存储80个字符码。CGROM由8位字符码生成5 x 7点阵字符160种和5×10点阵字符32种,8位字符编码和字符的对应关系。CGRAM是为用户编写特殊字符留用的,它的容量仅64字节。可以自定义8个5×7点阵字符或者4个5×10点阵字符。AC可以存储DDRAM和CGRAM地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或者CGRAM单元。LMO16L液晶模块的引脚功能见下表1。
2
基于
Proteus ISIS 7
的液晶模块仿真
2
.
1
接口设计
运行Proteus ISIS 7进入设计界面,依照图1所示在元件库中选择需要的元件。Lpc2138的P0.0-P0.7端口作为8位数据的输出端,P0.8、P0.9、P0.10作为控制信号的输出端,连接完成的电路如图l所示。
2
.
2
软件设计
电路图绘制好之后,就可以编写LM016L的驱动程序。LM016L的操作有两大类:读操作和写操作。一般情况下不需要从液晶中读取数据,所以对液晶操作主要是写指令和写数据两个写操作,对于忙标志(BF),查询的方法,保证液晶模块有足够时间进行内部数据处理。在写源程序时,需要根据液晶模块的时序图编写程序。LM016L的时序如图2所示。
根据电路图1定义引脚:RS BIT P0.8;RW BIT P0.9;LCD E BIT PO.10。
本设计的开发环境为keil uvision3,程序大体分为初始化、控制信息与数据传输3部分。下面就将结合程序源代码略加说明:
用keil软件编译后生成HEX文件,在Proteus中打开lpc2138芯片属性对话框,将生成的HEX文件加载进去,再进行仿真运行就可以看到图3的结果,说明设计成功。
3
结束语
利用Proteus实现了对ARM7+LM016L液晶模块的仿真,实现了字符串的显示。Proteus为ARM学习提供了很好的软件平台,使初学者可以抛开电路设计中的一些细枝末节,快速掌握ARM的核心内容。同时该方法不需要硬件资源,也为学校开设ARM课程闯出一条最佳途径。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
Linux学习笔记---编辑器Vim
•
群晖系统ssh服务开启和存储空间情况查询方法
•
Linux网络分析必备技能:tcpdump实战详解
•
STM32的DMA简介
•
【C语言编程】很少人真正了解\n和\r有什么区别!
•
用Bash读写文件|Linux中国
•
企业对C语言/C++程序员的技能要求有哪些?
•
TCP连接中TIME_WAIT状态的作用及优化
•
独立主机网站转移操作方式
•
SpringBoot搭建ELK,这才是正确看日志的方式!
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
IT业界资讯
快速回复
返回顶部
返回列表