天天加油 - 助您成才
基于P89LPC932的LCD组态设计
您正在看的电子通信论文是:基于P89LPC932的LCD组态设计。

摘要:在概述Philips P89LPC932的基本功能以及与P89LPC764比较的基础上,针对LCD显示设计中的诸多问题,给出一种能广泛应用于各类现场数据显示、组态式LCD的软硬件实现方案;分析硬件电路及其工作原理,并给出软件设计中部分关键代码。该方案在模拟系统上和现场运行情况中进行了难证,成本低,且具有通用性和灵活性等优点。

    关键词:P89LPC932 组态设计 LCD显示 通信模式 堆栈空间 初始化程序

引言

随着微电子技术、网络技术和控制技术的不断发展,LCD作为现场显示设备广泛应用在各种通信与控制系统中。大部分的LCD集成了中英文字库,用户输入区位码或ASCII码即可实现文本显示。由于现场控制设备通常较为分散,显示的项目个数和功能也不尽相同,往往给设计带来许多不例。常用的方法是,在软件的设计阶段,根据要求把各个显示的信息固化和程序中。若要修改某个中文字符,程序员首先必须查出其区位码,然后修改计算机上的汉字数据。这样,不但系统的开发周期长、程序可读性差,而且给日后的维护带来很大的不便。为了实现程序的通用性,选用Philips的P89LPC932实现具有组态功能的LCD显示。其优点是,在不需要修改系统软件情况下,通过串口与组态软件方便地设定LCD显示的项目和个数,功能菜单随着设定项目的个数自动改变,并且实现了对设备的简单控制操作,达到了通用性和灵活性结合的目的。

1 P89LPC932介绍

P89LPC932是Philips公司推出的高性能高速度的80C51 CPU,采用0.35μm Flash,6倍速于标准的8051。8KB Flash程序存储器,具有1KB可擦除扇区和64B可擦除页;512B数据EEPROM存储器可用来存储器件序列码及设置参数;256B RAM,512B辅助片内RAM。

    在P89LPC76X系列中,P89LPC764得到了广泛的应用;但由于LPC764只有4KB 的程序空间和128B的数据存取空间,故不能满足较大量数据通信和显示的要求。与之相比,P89LPC932还具有如下特点与优势:

①程序区域扩大。由4KB的EPROM扩大为8KB Flash,并提供在线编程功能。

②数据区域扩大。P89LPC932有256B的内部数据存取区,512B的辅助存取区和512B的EEPROM。

③串行通信功能增强。设置高精度波特率发生器。LPC764实时串行通信时,模式3要使用到定时器1。LPC932使用波特率发生器实现通信设置,可节省出定时器1。带有字符检测、帧错误检测、溢出错误检测、双缓冲发送功能、发送中断控制(停止位的开始或结束产生中断)、可实现RX/TX中断分开,从而提高通信效率。

④新增定时器模式6。简单的8位PWM信号发生器,带自动重装的8位定时/计数器,重装值表示PWM领带的占空比。

⑤串行外围接口SPI。高速串行通信接口,最高速度为3Mb/s。主从模式实现全双工同步通信。

图3

2 LCD系统组态

组态式LCD实现的关键在于对汉字处理,以往的做法把系统菜单的汉字区位码固定在程序中。由于立即数表示的信息难于维护,一旦需要对程序修改,将是一件费劲的事件。我们的处理方法是,设置系统信息表,并把所有的中文信息(系统菜单和显示信息)存放于EEPROM。中文信息和系统信息表通过由VB编写的LCD组态软件完成,并通过串口下载到EEPROM。当LCD上电后,程序根据系统信息自动配置显示菜单,从而实现了系统的组态性。

系统信息表记录实际显示的AI、AO、操作参数、DI、DO的个数。LCD在进行页面更新时,先读出相应项目的个数,并自动调整显示的条目。所有AI、AO、OPER、DI、DO的名称中文区位码,单位ASCII码,状态信息中文区位码都存放到EEPROM中。项目名称为4个汉字,单位信息为2个ASCII字符,状态信息为2个汉字。

LCD显示装置实现功能如下:

①实时显示8个模拟量输入点(AI)、8个模拟量输出点(AO)、8个运行参数、8个开关量输入点(DI)、8个开关量输出点(DO)。

②修改模拟量输出点、运行参数和开关量输出点,实行就地对设备的控制。

③密码管理。用户可以直接在LCD上或通过组态软件修改密码。

④流动显示和手动显示功能。

⑤组成功能。通过组态软件可以方便地修改各显示量的中文代码和单位等信息。

    在各种通信与控制系统中,LCD显示特定的数据信息而处于控制系统的末端,通常傣族法通过RS485总线与控制器相连形成一个网络。控制器与LCD在数据传送上有两种关系。一种是控制器为Master,LCD为Slave.控制器轮流地向各LCD传送数据,从而实现实时数据显示。另外一种是控制器为Slave,LCD为Master.LCD主动地向控制器发出请求信息,实现集中显示的功能。为了系统的通用性,我们设计了两个特殊功能开关,从而实现LCD主从模式的和组态模式的切换。

Slave模式:LCD等待主站发送实时数据。当接收到数据时检测是否为本机站号。若是,立即接收数据并进行显示,否则丢弃数据包,如图1所示。

Master模式:LCD轮流向各个控制器发出请求读数命令,并作相应的显示,如图2所示。

组态模式:LCD发出组态命令,当接收到组态信息后发出组态成功信息。

3 硬件设计

如图3所示,P89LPC932中P0口作为键盘输入和站号地址,P2口与LCD数据线相连,P1.7、P1.6为LCD数据传输的握手信号。串行通信线TXD、RXD与MAX487相连,并通过P1.4实现通信方向的切换。

LCD选用的是OCM2×8液晶显示器,内含GB231216×16点阵国际一级简体汉字字库和ASCII8×8及8×16点阵英文字库;具有上/下/左/右移动当前显示屏幕及清除屏幕的命令。LCD所有的设置初始化工作在上电时自动完成,实现了即插即用。LCD硬件接口使用8位并行接口方式,采用REQ/BUSY握手协议。图4所示为LCD写汉字时序。LCD模块在收到外部的REQ高是怦信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明LCD已收到数据并正在忙于对数据的内部处理。当BUSY变为低电平时,表明LCD对用户的写操作已经执行完毕。在写入多个数据时,可以不断地查询应答线BUSY是否为低电平。如果为低电平,可以继续送下一个数据。

4 软件设计

图5是软件的结构,每个模块对应一个独立的处理函数。LCD显示以页为单位,程序设“PageArbiter”函数实现对页面的管理。页面管理函数根据用户的按键,决定进入如“菜单显示”、“密码设定、“参数显示”等画面。以下是硬件驱动功能的说明。

图5

    (1)串行通信

P89LPC932的增强型UART具有一个独立的波特率发生器,波特率取决于对BRGR1和BRGR0的值。如果SMOD1(PCON.7)置位,定时器T1被2分频。但需要修改BRGR1和BRGR0寄存器的值前,为了避免向波特率发生器装入错误的值,必须在RBGCON寄存器中的BRGEN位为0才能写入。程序设计使用外晶振(11.0592MHz)选择串行通信模式3,并利用波特率发生器设置通信速率。波特率发生器计算为

(BRGR1,BRGR0)=(11.0592MHz/19200)-16=0x0230

初始化流程如图6所示。

若不使用波特率发生器设置串行通信的通信速率,可以使用定时器。其计算公式为

波特率=2fosc×192/[0xFF-(TH1)]

选用11.0592MHz的外晶振,波特率为19200bps,则计算出TH1=0xFA。其初始化流程如图7所示。

(2)EEPROM读写操作

P89LPC932拥有512字节的片内数据EEPROM,用于保存配置参数数据。EEPROM由SFR控制,可字节读、字节写以及可擦除(通过行填充和块填充)。用户通过3个SFR和1个中断对其进行读、写和填充。EEPROM可寻址空间为512个字节,使用9位地址。当数据地址大于0xFF时,置控制寄存器DEECON的第0位。值的注意的是,在访问EEPROM时,必须对DEECON的第0位清0或置1。在仿真过程中发现,当读一个地址少于0xFF的字节数据后,再次向同一地址数据时出现错误。检查的结果是第一次读数时DEECON第0位为0,但第二次读数时DEECON的第0位就自动地变为1。所以在读写数据时,必须对DEECON的第0位赋正确的值。

    DEECON中的第4、5位定义了读写操作的模式。

在任何模式中操作完成之后,硬件都会置位EEIF位。如果EEPROM中断允许位(EieE)和系统中断位(EA)都置位。将产生中断请求。中断产生后必须由软件清零。其初始化程序如下:

EieE=TRUE;/*允许EEPROM中断*/

EA=1; /*允许系统中断*/

(3)辅助RAM的使用

我们所所有从串行通信得到的实时数据存放在辅助RAM区内。读写程序如下:

#include"ABSACC.H"

bData=XBYTE[i]; /*辅助RAM读操作*/

XBYTE[i]=bData; /*辅助RAM写操作*/

5 组态软件设计

组态软件和仿真软件是由VB开发的。当LCD进入组状态后,发送请求组态信号。 组态软件检测LCD的站号,并向相应的LCD发出组态初始化信息包。LCD发出组态初始化信息包。LCD接收到组态软件开发的数据包并发出回答信息包。组态软件依次把中文内码和单位传送到LCD。

结语

采用P89LPC932芯片实现了具有组态功能的LCD显示。系统硬件电路简单,易于根据用户和系统的需要设置显示的项目和个数,实现了对AI、AO、DI、DO和运行参数的显示和修改。

排行

  1. 论会计和审计中的重要性原则
  2. 新世纪会计的发展趋势
  3. 利用DVI实现双屏幕超宽图像显示
  4. 2.4GHz DSSS收发器芯片组RFW320原
  5. 中小企业如何吸引人才
  6. 论张家界市旅游业可持续发展
  7. 我国国内旅游业发展的现状、趋势
  8. 公允价值计量属性研究
  9. 打造人力资源管理新模式——来自
  10. 一种数码相机成像和视频处理前端
  11. 单片机复位电路的可靠性分析
  12. Protel软件在高频电路布线中的技
  13. 室内设计七大新趋势
  14. 浅谈混凝土的施工温度与裂缝
  15. CTE翻板型滤池
  16. 加入WTO后铁路建设监理行业的改革
  1. 2.4GHz DSSS收发器芯片组RFW320原
  2. 打造人力资源管理新模式——来自
  3. 论知识经济的社会文化观与现代管
  4. 利用DVI实现双屏幕超宽图像显示
  5. 论会计和审计中的重要性原则
  6. 三峡大坝混凝土快速施工方案及工
  7. 论内部控制
  8. 一种实用的中频数字接收机设计
  9. 中小企业如何吸引人才
  10. 论张家界市旅游业可持续发展
  11. 我国国内旅游业发展的现状、趋势
  12. 水土保持发展的战略目标及建议
  13. 论物流成本研究
  14. 新世纪会计的发展趋势
  15. 树立以人为本的改革观
  16. 《可再生能源开发利用促进法》对
  1. 树立以人为本的改革观
  2. 论张家界市旅游业可持续发展
  3. 打造人力资源管理新模式——来自
  4. 新世纪会计的发展趋势
  5. 企业人才管理的探索
  6. 论内部控制
  7. VPN技术综述及应用
  8. 红外通讯协议在嵌入式系统中的实
  9. 提供 64 级对数调光的白光 LED 驱
  10. 深化环境资源法学研究 促进人与自
  11. 环保自力救济性质分析与对策研究
  12. 我国国内旅游业发展的现状、趋势
  13. 中小企业如何吸引人才
  14. ADC信噪比的分析及高速高分辨率A
  15. 可视化编程串行控制中文字库液晶
  16. 利用DVI实现双屏幕超宽图像显示

最近更新

  • 推荐阅读
  • 电子通信论文《基于P89LPC932的LCD组态设计》基于P89LPC932的LCD组态设计