基于P89LPC932的LCD组态设计
发布时间:2007/8/28 0:00:00 访问次数:421
摘要:在概述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为Sla
摘要:在概述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为Sla