欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    嵌入式系统设计实训 (论文)说明书简易液晶菜单设计.doc

    • 资源ID:4148993       资源大小:549KB        全文页数:19页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    嵌入式系统设计实训 (论文)说明书简易液晶菜单设计.doc

    编号: 嵌入式系统设计 实训 (论文)说明书题 目: 简易液晶菜单设计 院 (系): 应用科技学院 专 业: 电子信息工程 学生姓名: 学 号: 0601130107 指导教师: 2010年 1 月 10 日摘 要随着微处理器的广泛应用,越来越多的仪器采用智能化的操作方式,微控制器已经广泛应用到各个领域中,为了使仪器的操作更简便,人机界面更友好,在现代仪器电路中经常采用液晶与按键的搭配方式作为人机接口。液晶不仅功耗低,而且提供的可视化信息丰富。所以采用液晶提供菜单与按键反馈相组合的方式为理想的人机交互方式。根据实际不同的设计,本设计主要研究在嵌入式系统中按键的软、硬件设计及菜单和程序模式之间的关系。本系统主要介绍了基于LPC2138的简易菜单显示控制系统,该电路主要分为控制模块、键盘控制模块、显示模块三部分。显示控制模块主要是通过I/O口输出的具有时序的方波作为显示的控制信号,使之显示所需要的界面;按键主要是控制界面达到友好的人机交流。关键词:LPC2138;LCD12864;按键控制AbstractAlong with microprocessor's widespread application, more and more instruments use intellectualized the operating mode, the micro controller already widely applied in each domain, to cause instrument's operation to be simpler, the man-machine contact surface is friendlier, uses the liquid crystal and pressed key's matching way frequently in the modern instrument electric circuit takes the man-machine connection. The liquid crystal power loss is not only low, moreover provides the visualization information is rich. Therefore uses the liquid crystal to provide the menu and the pressed key feedback facies group way for the ideal man-machine interaction way. According to actual different design, this design main research in embedded system pressed key's software and hardware design and menu and between program schema relations. this system mainly introduced based on the LPC2138 simple menu display control system, this electric circuit mainly divides into the control module, the keyboard control module, the display module three parts. The display control module is mainly has the succession square-wave through the I/O mouth output to take the demonstration the control signal, causes contact surface which it demonstration needs; The pressed key is mainly the control interface achieves the friendly man-machine exchange. Key words: LPC2138; LCD12864; Key Control目 录引言21 系统介绍21.1 系统方案框图21.2 LPC2138介绍21.2.1主要特性21.3 功能描述31.3.1 Flash存储系统的编程51.4 LCD12864引脚功能61.4.1 12864的时序参考72 仿真及程序设计82.1主控电路及初始化程序82.1.1初始化程序82.2 LCD控制程序及电路92.2.1 LCD控制程序92.2.2 LCD控制电路123 实训心得体会12谢 辞14参考文献15附 录16引言随着微处理器的广泛应用,越来越多的仪器采用智能化的操作方式,微控制器已经广泛应用到各个领域中,为了使仪器的操作更简便,人机界面更友好,在现代仪器电路中经常采用液晶与按键的搭配方式作为人机接口。液晶不仅功耗低,而且提供的可视化信息丰富。所以采用液晶提供菜单与按键反馈相组合的方式为理想的人机交互方式。根据实际不同的设计,本设计主要研究在嵌入式系统中按键的软、硬件设计及菜单和程序模式之间的关系。1 系统介绍1.1 系统方案框图按键LPC2138液晶显示图1.1 控制系统原理框图系统总体设计框图如图1.1所示。本系统实现LPC2138执行按键的命令,从而控制液晶显示按键所需要的命令,这样可以达到友好的人机交流界面。1.2 LPC2138介绍1.2.1主要特性1、16/32位ARM7TDMI-S核,超小LQFP64封装。8/16/32kB的片内静态RAM和 32/64/128/256/512kB的片内Flash程序存储器。128位宽度接口/加速器可实现高达60MHz工作频率。2、通过片内boot装载程序实现在系统编程/在应用编程(ISP/IAP)。单个Flash扇区或整片擦除时间为400ms。256字节行编程时间为1ms。3、EmbeddedICE RT 和嵌入式跟踪接口通过片内 RealMonitor 软件对代码进行实时调试和高速跟踪。4、1个(LPC2131/32)或2个(LPC2134/36/38)8路10位的A/D转换器,共提供16路模拟输入,每个通道的转换时间低至2.44us。5、1个10位的D/A转换器,可产生不同的模拟输出。(LPC2132/34/36/38)6、2个32位定时器/外部事件计数器(带 4 路捕获和 4 路比较通道)、PWM 单元(6 路输出)和看 门狗。7、低功耗实时时钟具有独立的电源和特定的 32kHz 时钟输入。8、多个串行接口,包括 2 个 16C550 工业标准 UART、2 个高速 I2C 总线(400 kbit/s)、SPI 和具有 缓冲作用和数据长度可变功能的 SSP。9、向量中断控制器。可配置优先级和向量地址。10、小型的 LQFP64 封装上包含多达 47 个通用 I/O 口(可承受 5V 电压)。11、多达 9 个边沿或电平触发的外部中断管脚。12、通过片内 PLL(100us 的设置时间)可实现最大为 60MHz 的 CPU 操作频率。12、片内集成振荡器与外部晶体的操作频率范围为 130 MHz,与外部振荡器的操作频率范围高达50MHz。13、低功耗模式:空闲和掉电。14、可通过个别使能/禁止外部功能和外围时钟分频来优化功耗。15、通过外部中断或 BOD 将处理器从掉电模式中唤醒。16、单电源,具有上电复位(POR)和掉电检测(BOD)电路:CPU 操作电压范围:3.0V3.6 V (3.3 V± 10),I/O 口可承受 5V 的电压。1.3 功能描述1.2.1 结构概述ARM7TDMI-S 是一个通用的 32 位微处理器,它可提供高性能和低功耗。ARM 结构是基于精简指令集 计算机(RISC)原理而设计的。指令集和相关的译码机制比复杂指令集计算机要简单得多。这样使用一个小 的、廉价的处理器核就可实现很高的指令吞吐量和实时的中断响应。由于使用了流水线技术,处理和存储系统的所有部分都可连续工作。通常在执行一条指令的同时对下一条指令进行译码,并将第三条指令从存储器中取出。ARM7TDMI-S 处理器使用了一个被称为 THUMB 的独特的结构化策略,它非常适用于那些对存储器有 限制或者需要较高代码密度的大批量产品的应用。在 THUMB 后面一个关键的概念是“超精简指令集”。ARM7TDMI-S 处理器基本上具有两个指令集:z标准 32 位 ARM 指令集z16 位 THUMB 指令集THUMB 指令集的 16 位指令长度使其可以达到标准 ARM 代码两倍的密度,却仍然保持 ARM 的大多数性能上的优势,这些优势是使用 16 位寄存器的 16 位处理器所不具有的。这是因为 THUMB 代码和 ARM代码一样,在相同的 32 位寄存器上进行操作。THUMB 代码仅为 ARM 代码规模的 65%,但其性能却相当于连接到 16 位存储器系统的相同 ARM 处 理器性能的 160%。1.2.3 片内 FLASH 程序存储器LPC2131/2132/2134/2136/2138 分别集成了一个 32 kB、64kB、128kB、256kB 和 512 kB 的 FLASH 存 储器系统。该存储器可用作代码和数据的存储。对 FLASH 存储器的编程可通过几种方法来实现。可通过 串口进行在系统编程。应用程序也可以在程序运行时擦除和/或编程 FLASH,这样为数据存储和现场固件 的升级都带来了极大的灵活性。当使用片内 bootloader 时,32/64/128/256/500kB 的 Flash 存储器可作用户代 码使用。LPC2131/2132/2134/2136/2138 Flash 存储器至少含有 10,000 个擦除/写周期,数据至少可保存 20 年。1.2.4 片内静态 RAM片内静 态 RAM 可 用 作代码 和 / 或数 据 的存储 。 SRAM 支持 8 位、 16 位和 32 位访问 。LPC2131/2132/2134/2136/2138 具有 8/16/32 kB 的静态 RAM。1.2.5 存储器映射LPC2131/2132/2134/2136/2138 的存储器映射包含几个不同的区域。此外,CPU 的中断向量可以重新映射,这样允许它们位于 Flash 存储器(默认)或者片内静态 RAM 当 中。详见 6.21 节“系统控制”。LPC2138是PHILIPS公司生产的单片32位ARM微控制器,是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-S CPU,并带有256KB的嵌入的高速FLASH存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。1.2.6 管脚连接模块管脚连接模块允许将微控制器的管脚配置为不同的功能。配置寄存器控制连接管脚和片内外设的多路 开关。应当在激活外设以及使能任何相关的中断之前,将外设连接到相应的管脚。任何一个被使能的外设,如果其功能没有映射到相关的管脚,对它的激活将被认为是未定义的。1.2.7 管脚功能选择寄存器 0(PINSEL0 0xE002C000)PINSEL0 寄存器控制表 6 所列管脚的功能。IODIR 寄存器中的方向控制位只有在 GPIO 功能应用到管 脚时才有效。对于其它功能,方向自动进行控制。表 6 所列设定之外的设定都被保留,用户不要使用这些 保留设定。1.2.8 管脚功能选择寄存器 1(PINSEL1 0xE002C004)PINSEL1 寄存器控制表 7 所列管脚的功能。IODIR 寄存器中的方向控制位只有在 GPIO 功能应用到管 脚时才有效。对于其它功能,方向自动进行控制。表中所列设定之外的设定都被保留,用户不要使用这些 保留设定。1.2.9 管脚功能选择寄存器 2(PINSEL2 0xE002C014)PINSEL2 寄存器控制表 8 所列管脚的功能。IODIR 寄存器中的方向控制位只有在 GPIO 功能应用到管 脚时才有效。对于其它功能,方向自动进行控制。表中所列设定之外的设定都被保留,用户不要使用这些 保留设定。1.2.10 通用并行 I/O 口 (GPIO)没有连接到特定外设功能的管脚由 GPIO 寄存器进行控制。管脚可以动态配置为输入或输出。寄存器 可以同时对任意个输出口进行置位或清零。输出寄存器的值以及管脚的当前状态都可以读出。1.3.1 Flash存储系统的编程 LPC2138支持多种方式对Flash进行编程,用来写入用户代码或数据。第一种是通过内置的串行JTAG接口;第二种是通过UART0进行在系统编程(ISP);第三种是通过在应用编程(IAP)实现。(1)JTAG编程 LPC2138的JTAG Flash编程可方便下载程序到片内Flash,但JTAG接口更主要的是提供硬件系统调试功能,诸如实现软件的断点、单步。JTAG Flash编程要中断应用软件的正常运行,连线较多,通信距离较短,而且要现场编程,只适应于产品在开发期的调试使用。 (2)在系统编程 ISP(In-System Programming)技术,即在系统可编程技术,是指电路板上的空白器件可以编程写入最终用户代码,而无需从电路板上取下器件;已编程的器件也可用ISP方式擦除或再编程。LPC2138支持ISP的Flash编程,但要中止应用软件的正常运行,且需要提供一定的硬件资源,包括UART0口、RS232驱动和CPU特殊引脚的状态;编程要求现场操作,非常适用于便携式智能仪器的升级,但显然不适用于用电监测终端这类安装环境特殊的设备。(3)在应用编程 在应用编程IAP(In-Application Programming)是应用在Flash程序存储器的一种编程模式。简单地说就是在应用程序控制下,对程序某段存储空间进行读取、擦除或写入操作。与ISP操作非常相似,具有在线编程功能,且克服了ISP的不足之处。它可以在应用程序正常运行的情况下对另外一段程序Flash进行读/写操作,甚至可以控制对某段、某页甚至某个字节的读/写操作。这为数据存储和固件的现场升级带来了极大的灵活性。1.4 LCD12864引脚功能1.4.1 12864的接口表1 12864接口功能名称型态电平功能描述FG铁框地GND电源地VCC输入电源输入(+5V)V0输入LCD 驱动电压输入端(对比度调节)R /W输入H/L读/写信号CS输入H/L12832 类产品片选H:芯片 1L:芯片 2CS1输入H/L片选信号,一般低有效,部分产品高电平有效,具体 见各产品外形文件CS2RS输入H/L寄存器选择端 H:数据寄存器;L:命令寄存器/RST输入H/L复位信号DB0DB7输入/输出H/L数据总线VEE输入负压输入输出端LEDA输入背光正极LEDK背光负极1.2.2 12864的电气特性(测试条件 Ta=25,Vdd=5.0+/-0.25V)1. 逻辑工作电压(Vcc): 4.55.5V2. 电源地(GND):0V3. 输入电压:0Vcc4. 输入高电平(Vih):2.0Vcc5. 输入低电平(Vil):00.8V6. 输出高电平(Voh):2.4min7. 输出低电平(Vol):00.4V8. 模块工作电流:见相关产品外形文件9. 白侧光工作电流:见相关产品外形文件10. 底黄绿光工作电流:见相关产品外形文件1.4.1 12864的时序参考表2 12864的时序参考表项目符号最小值最大值单位E 周期时间Tcyc1000nSE 高电平宽度Pweh450nSE 低电平宽度Pwel450nSE 上升时间Tr25nSE 下降时间Tf25nS地址建立时间Tas140nS地址保持时间Tah10nS数据建立时间Tdsw200Ns数据延时时间Tddr320Ns数据保持时间(写)Tdhw10nS数据保持时间(读)Tdhr20Ns2 仿真及程序设计整个系统的主要任务能实现128X64点阵液晶显示,所有菜单支持中文显示,具有菜单突出显示功能,菜单具备至少三级深度,具备翻页功能。2.1主控电路及初始化程序2.1.1初始化程序void GPIO_init() PINSEL0 = (PINSEL0 & (0X0F) | 0X05; /把p0.0和p0.1选择为UART0功能. PINSEL0 = (PINSEL0 & (0XFFFFFFFF); /把p0.14和p0.15选择为普通的IO端口. PINSEL1 = (PINSEL1 & (0X03); /把p0.16选择为普通的IO端口 PINSEL2 = (PINSEL2 & (0X0C); /把p1.16-p1.31均选择为普通的IO端口 IO0DIR = (IO0DIR & (0XFFFFFFFF); /把p0.14,p0.15,p0.16均选择为输入. IO1DIR = IO1DIR | 0X3F000000; /把p1.24-p1.29选择为输出. 2.1.2主控电路图图2.1 整体程序流程图2.2 LCD控制程序及电路2.2.1 LCD控制程序/* 函数名称:Set_X_Address(unsigned char x_Address)* 函数功能:给LCD发送页地址,KS0108B控制器控制的显示屏,共有八页.* 入口参数:x_Address* 出口参数:无 */void Set_X_Address(uint8 x_Address)/该函数设置lcd的行地址.共有8行,x= 07,0xB8=1011'1000行地址为第0行.if(Y_Address<64) IO1SET = LCD_CS1; IO1CLR = LCD_CS2; else IO1CLR = LCD_CS1; IO1SET = LCD_CS2; IO1CLR = LCD_DI;IO1CLR = LCD_RW;LCD_DATA_output();IO1CLR = 0XFF<<16;IO1SET = (x_Address|0xB8)<<16;IO1SET = LCD_EN;IO1CLR = LCD_EN;Delay_1ms(1);/* 函数名称: Set_Y_Address(uint8 Y_Address)* 函数功能:给LCD发送列地址,KS0108B控制器控制的显示屏,共有64列.* 入口参数:Y_Address* 出口参数:无 */void Set_Y_Address(uint8 Y_Address) / 该函数设置lcd的列地址,共有128列.y= 0128 /0xB8=1011'1000if(Y_Address<64) IO1SET = LCD_CS1; IO1CLR = LCD_CS2; else IO1CLR = LCD_CS1; IO1SET = LCD_CS2; IO1CLR = LCD_DI;IO1CLR = LCD_RW;LCD_DATA_output();IO1CLR = 0XFF<<16;IO1SET = (Y_Address|0x40)<<16;IO1SET = LCD_EN;IO1CLR = LCD_EN;Delay_1ms(1);2.2.2 LCD控制电路图2.2 LCD接口图3 实训心得体会总结本次实训,我学到了很多仅靠课本不能学到的知识,学到了很多以前没有接触过的知识,让我更进一步加深掌握了ARM的知识。本次实训是老师给任务同学自己选择项目。由于兴趣,我选择的是简易液晶菜单设计。由于是这个学期才开始接触ARM,所以只掌握了基本的用法,要完全自己编程实现功能对我来说有一定的难度,但是我决心一定要把它做好,做好的过程当中一定要学到很多。第一步是找资料,在网上找原理图和程序很烦,因为往往找到的原理图很多,而且经常还会有一些缺陷,去图书馆也找了相关的材料做参考。我在网上找到了一个简易液晶菜单设计改进版的资料,有原理图和程序作参考,同时我就芯片的资料上网查找了用法。第二步是分析原理图,我在分析次原理图时发现原理比较简单,我把基本的原理弄懂了,并在头脑里有了一个清晰的思路,但是那个资料中程序有很多缺陷,我在老师以及科协同学的帮助下,修改了电路图,并删剪了一些程序,使其更精简。第三步是调试程序,在调试的过程中我学到了很多东西。在调试在本次调试过程中,出现了很多问题。首先,由于对LPC2138和LCD12864用法不熟悉,我花了很多时间来理解他们的管脚配置方法和初始化设置,其次,在实现显示功能以后,按键的作用无法发挥功能,通过请教同学再加上自己摸索我才知道,要添加足够的延时。由于不懂怎么改变程序让其显示不同的汉字和英文,同学告诉我,可以用取模软件把生成汉字的代码,我才明白原来是那么简单。在程序编写的时候,根据刚刚学习的ARM的程序编写的基础,再加上对课本知识的进一步复习与巩固和过去C语言的基础,最终还是把程序编写成功了。其中,我还参考了别人的程序。虽然程序相对较简单,但是凭借自己的知识编写出来,很有成就感。以上都是我在本次制作中学到和巩固的东西。虽然本次实验存在一些小的问题,但是都被我一一改正了,所以我觉得在这次实训中收获大于遗憾。这些收获将是我在电子方面继续学习的财富,它也时刻提醒我,只有动手去做了才知道制作的快乐,只有自己体会才会知道自己的缺点!我们要学习的东西还有很多很多,学无止境!谢 辞首先,感谢应用科技学院为我们安排了这次嵌入式系统设计实训。非常感谢学院领导和老师给我们提供实验室条件和在理论知识方面的帮助。还要感谢符强老师的授课和实训操作指导,在任务开始前,符强老师都会首先全面的为我们补充讲注意事项。特别感谢符强老师和孙安青老师,他们在整个实训过程中对我们严格要求,耐心指导,给予我们极大的帮助以及鼓励。最后,再次衷心地感谢所有关心、支持、帮助过我的老师、同学和亲友!参考文献1 崔更申 孙安青.ARM嵌入式系统开发与实践M.北京:中国电力出版社,20082 何加铭. 嵌入式32位微处理器系统设计与应用M. 北京:电子工业出版社,20063 杨宗德. 嵌入式ARM系统原理与实例开发M. 北京:北京大学出版社,2007 4 刘天时等 .ARM7嵌入式开发基础实验M. 北京:北京航空航天大学出版社,2007附 录系统原理图:

    注意事项

    本文(嵌入式系统设计实训 (论文)说明书简易液晶菜单设计.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开