访问电脑版页面

导航:老古开发网手机版其他

基于PROTEUS的ARM7显示系统设计与仿真实现

导读:
关键字:
      

  0 引言

  随着科技的发展,ARM在社会各个方面的应用越来越广。ARM芯片广泛应用于无线产品、PDAGPS、网络、消费电子产品、STB及智能卡。LPC2138Philips公司生产的基于ARM7TDMIRISC微处理器,主频可达50MHz。液晶显示是嵌入式系统中反映系统输入/输出的人机交互界面,液晶显示以其微功耗、体积小、显示内容丰富、模块化,接口电路简单等诸多优点得到广泛应用。本文在介绍以HD44780为控制器的LM016L液晶模块的引脚结构、功能的基础上,搭建LM016LLPC2138芯片的硬件接口电路、用c语言编写显示程序,采用PROTEUS软件进行功能仿真。

  1 液晶模块结构及功能简介

  LM016L液晶模块采用HD44780控制器。HD44780具有简单而功能较强的指令集,可以实现字符移动、闪烁等功能。HD44780控制器由两个8位寄存器、指令寄存器(IR)和数据寄存器(DR)、忙标志(BF)、显示数据RAM(DDRAM)、字符发生器ROM(CGROM)、字符发生器RAM(CGRAM)、地址计数器(AC)构成。IR用于寄存指令码,只能写入不能读出;DR用于寄存数据,数据由内部操作自动写入DDRAMCGRAM,或者暂存从DDRAMCGRAM读出的数据。BF1时,液晶模块处于内部处理模式,不响应外部操作指令和接受数据。DDRAM用来存储显示的字符,能存储80个字符码。CGROM8位字符码生成5 x 7点阵字符160种和5×10点阵字符32种,8位字符编码和字符的对应关系。CGRAM是为用户编写特殊字符留用的,它的容量仅64字节。可以自定义85×7点阵字符或者45×10点阵字符。AC可以存储DDRAMCGRAM地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或者CGRAM单元。LMO16L液晶模块的引脚功能见下表1

  2 基于Proteus ISIS 7的液晶模块仿真

  21 接口设计

  运行Proteus ISIS 7进入设计界面,依照图1所示在元件库中选择需要的元件。Lpc2138P00-P07端口作为8位数据的输出端,P08P09P010作为控制信号的输出端,连接完成的电路如图l所示。

  22 软件设计

  电路图绘制好之后,就可以编写LM016L的驱动程序。LM016L的操作有两大类:读操作和写操作。一般情况下不需要从液晶中读取数据,所以对液晶操作主要是写指令和写数据两个写操作,对于忙标志(BF),查询的方法,保证液晶模块有足够时间进行内部数据处理。在写源程序时,需要根据液晶模块的时序图编写程序。LM016L的时序如图2所示。

  根据电路图1定义引脚:RS BIT P08RW BIT P09LCD E BIT PO10

  本设计的开发环境为keil uvision3,程序大体分为初始化、控制信息与数据传输3部分。下面就将结合程序源代码略加说明:

  用keil软件编译后生成HEX文件,在Proteus中打开lpc2138芯片属性对话框,将生成的HEX文件加载进去,再进行仿真运行就可以看到图3的结果,说明设计成功。

  3 结束语

  利用Proteus实现了对ARM7+LM016L液晶模块的仿真,实现了字符串的显示。ProteusARM学习提供了很好的软件平台,使初学者可以抛开电路设计中的一些细枝末节,快速掌握ARM的核心内容。同时该方法不需要硬件资源,也为学校开设ARM课程闯出一条最佳途径。

来源:EDN   作者:  2010/12/6 0:00:00
栏目: [ ]

相关阅读

安森美推出新的高功率图腾柱PFC控制器,满足具挑战的能效标准

动态功耗低至60μA/MHz!助力设备超长续航,首选国民技术低功耗MCU!