嵌入式电梯LCD显示屏系统设计

嵌入式电梯LCD显示屏系统设计

摘要:

针对传统电梯显示系统的特性缺点,提出了基于STM8S的电梯LCD显示屏系统设计,给出了其硬件设计方案和软件工作流程。该设计显示精度高、显示功能丰富、抗干扰性好、结构简单,符合现代智能电梯实时显示的工作要求。

关键词:

STM8S,LCD显示屏,Modbus协议,设计流程

本文设计出一种基于STM8S的电梯专用LCD显示屏系统,不但能精确显示上下楼层、超载、满载、消防、检修等信号,还可以与电梯主控制板连接,实现显示屏与电梯主控板的一体化控制。

1系统总体设计

基于STM8S的电梯LCD显示屏系统是基于现代电梯技术和嵌入式系统技术的有机结合,采用意法半导体的高性能的8位内核处理器芯片作为整个控制器的处理运算核心[1]。系统中,STM8S芯片不断地采集电梯系统的按键输入信号,并对该信号进行实时处理,最后将结果通过LCD显示屏显示出来。有鉴于此,作者构建起基于STM8S的系统设计方案,结合数据收发电路和驱动接口线路构成整个LCD显示屏系统。微控制器STM8S作为整个显示屏系统的核心,它不但要对外呼按键信号进行采集处理、还需实时通过数据收发线路将数据传递给电梯运行主控板ARM9处理器(AT91SAM9263芯片),经由主控板确认并判断执行,再发送指令给STM8S,由其通过驱动接口线路传递给LCD显示屏,实现电梯运行信息的正确显示。整个电梯运行过程中,STM8S都要实时地通过Modbus通信协议与电梯主控板ARM9处理器进行数据通信,以准确显示外呼、上下楼层、超载、满载等信息[2],确保电梯运行安全。

2系统硬件电路设计

本系统选用ST公司新推出的高性能的8位微控制器STM8S103K3作为主控芯片,STM8S103K3使用先进架构的STM8内核、且具有三级流水线的哈佛结构和扩展指令集[3],其灵活的静态存储器控制器使得它能很方便地与许多存储器和外设连接,同时STM8S片上外设丰富,可以简化系统电路的设计。本系统主要硬件电路分别为数据收发线路、STM8S主控电路和LCD驱动接口线路,其中主控电路是整个系统的核心,数据收发线路和LCD驱动接口线路都是围绕它进行设计的,对此下文将分别作论述。

2.1STM8S主控电路设计

主控电路采用的是核心芯片STM8S103K3微控制器,系统中所有的线路都与它相连接,包括时钟电路、复位电路、上下楼层按键电路、数据收发线路、以及LCD液晶接口驱动电路。

2.2数据收发线路设计

数据收发线路是整个显示屏控制系统的重要组成部分,是显示屏系统和电梯运行主控板间的数据通道。本设计采用的是AnalogDevices公司推出的基于RS485/422通信协议的数据收发器件ADM487,其传输速率达到250kbps[4],在本设计中的具体连接线路。ADM487的管脚A和B连接至电梯运行主控板ARM9处理器,通过Modbus协议收发主控板的运行指令,实现STM8S显示屏系统与电梯运行主控板之间的数据通信;而RO和DI管脚则分别连接至STM8S微控制器的发送和接收端,并通过UART协议完成数据交换。具体设计时,考虑到数据传输的稳定性和抗干扰性,特增加了阻抗、感抗和稳压电路。

2.3LCD驱动接口线路设计

LCD驱动接口电路设计选用和泰科技的专业液晶驱动HT1621芯片[5]来进行设计,其与LCD液晶的连接,主要用于完成LCD显示屏系统数据的读写、擦除、控制数据的产生与传输、显示明暗度的调节等功能。

3系统软件设计

系统软件主要包括3个部分:数据收发软件、STM8S控制软件和LCD液晶驱动软件,3个部分协同工作实现对LCD液晶显示屏的控制。

3.1数据收发软件设计

LCD显示屏系统的数据收发程序主要由两部分构成:①STM8S和ADM487的UART串口驱动程序设计;②STM8S和ARM9的ModBus通信程序设计。其中,UART串口驱动程序的过程主要表现为缓冲区数据的读取写入及发送接收两部分。而STM8S和ARM9的Modbus通信程序设计则较为复杂,也是整个软件设计的难点,具体设计时,要针对STM8S和ARM9处理器的硬件情况,首先对系统进行初始化、开总中断、然后对串口进行初始化、定时器初始化和变量初始化;等待串口接收中断、如果有中断,判断正在接收标志是否为1,如果为1,则接收Modbus数据帧;当捕捉到Modbus帧接收完毕标志后,进入Modbus帧处理模块,其过程包括对数据的解包、分析后组包;最后将组包后的Modbus回复消息帧发送给主机[6]。

3.2STM8S控制软件设计

STM8S微控制器在整个系统中起着核心调度的作用,控制着系统中各功能模块的工作状态,其软件设计要根据显示屏的工作流程,采用自上而下的模块化设计方法。主要程序包括外呼按键请求、按键信号转接、中控信号处理、显示模式算法设计、液晶驱动设置等。

3.3LCD液晶驱动软件设计

LCD液晶驱动程序主要根据微处理器的控制,对输出接口进行驱动,实现图像数据的重构,把数据转换为能直接用于LCD扫描信息的“0”和“1”编码系列,并根据显示屏驱动芯片HT1621的时序,将编码系列传输到显示屏上显示[7]。主要包括LCD液晶初始化函数定义、控制时钟及控制寄存器设置、数据缓冲帧设置、编码信号与时序处理、分辨率像素等参数设置等。

4性能分析

基于STM8S的电梯显示屏系统是软硬件相结合的设计,经由IAR编译程序后下载至显示屏系统,并通过Modbus协议与电梯运行的ARM主控板联通,测试系统的显示效果。显示屏能精确显示楼层、超载、故障和检修等电梯显示信息。

5结束语

该系统在硬件上采用当下的主流STM8S103K3微控制器,软件上采用显示模式算法设计,能精确显示上下楼层、超载、满载、消防、检修等信号。不但显示精度高、显示功能丰富,还具有高集成度、高可靠性和低功耗、低成本、体积小等优点,非常适合于电梯轿厢及楼道的工作环境,符合现代智能电梯实时显示的设计要求。

作者:钱丹浩 刘萍萍 单位:南京科技职业学院 苏州法奥电梯有限公司

参考文献

[1]潘永雄.STM8S系列单片机原理与应用[M].西安:西安电子科技大学出版社,2012:21-26

[2]郝博雅,管瑞.新一代液晶显示系统设计与实现[J].计算机测量与控制,2011(11):2484-2487

[6]李芳芳.基于MODBUS协议的人机接口通信研究[D].西安:长安大学,2009

[7]谈卫星,胡建人.基于STM32的全彩LED显示屏系统的设计[J].电子器件,2011(6):258-260