当前位置:首页 > 电源 > 数字电源
[导读] 随着图形点阵LCD液晶显示模块在各行各业的逐步使用,使得人机界面变得越来越直观,尤其对于国内大多数需要有汉字和图形显示的用户来说,显示界面的友好与否,将直接影响到其产品的形象和市场竞争力,但一般涉及有关图

    随着图形点阵LCD液晶显示模块在各行各业的逐步使用,使得人机界面变得越来越直观,尤其对于国内大多数需要有汉字和图形显示的用户来说,显示界面的友好与否,将直接影响到其产品的形象和市场竞争力,但一般涉及有关图形点阵液晶模块显示界面开发的技术人员由于缺乏经验而往往感到力不从心,尤其当用户的控制电路资源非常缺乏的条件下(如家用电器),图形点阵液晶模块则更是望尘莫及,而市面上所能见到的仍是那些“不顾客户死活而又自认清高”的传统型液晶显示模块,虽然其成本已经降到普遍能接受的地步,但还是因其控制方法的特殊性和复杂性严重阻碍液晶显示器的推广应用。

       针对目前的这种状况,深圳联合电子有限公司开发出一种图形点阵液晶模块,将LCD所有的底层操作集成于模块内的MCU中,这样其控制就变得极为容易,占用户资源最少,并且所有显示界面的编辑及调试全部在电脑上独立完程,整个过程一目了然,极大地方便用户编写显示界面的控制软件,从而也提高了LCD液晶显示模块在产品中的附加值。

       可视化编程LCD模组技术特性:

       1.模块显示点阵数(分辨率)128X64,192X64,256X64三种可选;

       2.内含高速MCU及64KB用户显示资料现场可编程FLASH;

       3.标准RS232串行通讯控制,只占用户两根口线,小马拉大车成为可能;

       4.配备仿真调试软件,在电脑上独立完成显示界面的编辑,资料下载,仿真调试;

       5.简单又丰富的控制命令使模块显示的控制易如控制一只LED;

       6.用户可随时改写显示资料,现场编程易如反掌,显示界面无限升级;

       7.模块提供忙信号输出,以检测模块状态;

       用户首先在电脑上完成LCD显示界面的编辑,资料下载及仿真调试工作,所配仿真调试软件可使用户方便的进行上述工作,在硬件上除可视化编程LCD模组之外还配有一块电脑RS232电平转换转接板,此板负责模块与电脑联接和对模块的供电,模块与电脑联接图示如下。

       图1 模块与电脑的联接

       将所配仿真调试软件Visual LCM1.0安装在电脑上(运行附带软盘中INSTALL.BAT),安装前注意要先将电脑里正在运行且占用串口的程序关闭,安装完毕屏幕上即出现如下软件主界面:

       图2 仿真调试软件主画面

       当鼠标移动到某可操作对象上停留一会儿,就会有相应的操作提示,建议操作前请先将各功能浏览一遍,以便先对操作有个感性认识。[!--empirenews.page--]

       在模块与电脑联接之前,用“图文编辑”将LCD预显示位图画好存档,注意所作位图必需是黑白的单色位图且需旋转270度,将画好的位图通过“添加”一一列入“下载位图排序”中,把模块设为编程模式(JP1选择)与电脑由RS232转换板相接并通电,在“串口选择”中选好模块所接串口,用“状态测试”检查连线和串口号及电源是否正常,若联机成功,模块资料下载界面则显示“联机测试OK!”,同时主画面中“下载资料”激活,点击后电脑将排序列表中的位图按序号由小到大一一下载到模块内FLASH中,下载时间与列表中位图总和大小成正比,结束时模块显示“下载资料OK!”,此时将模块断电
, 设其为正常模式再加电,用“状态测试”告电脑模块此时已为正常模式,通过点击“浏览资料”可在LCD屏上以点(00,00)为顶点一一观察刚刚下载的所有位图,且顺序与排序列表中的相同,也可直接点击排序列表中的位图进行浏览,所有位图无误后,可进行LCD显示界面的仿真调试。

       LCD显示界面的生成用六种命令来实现,在主画面的“发送命令”下边的命令列表框中罗列出这六种命令的含义及语法规则,若输入错误的命令将会提示错误信息,命令及各参数说明如下:

      以下是针对图三以及相应程序的参数定义和说明:

       命 令 格 式 功 能 说 明 :

       1  BMPnxy 在以点(x,y)为顶点处显示位图n

       2  CLR 清除屏上所有显示

       3   CLSxywh 清除以点(x,y)为顶点,宽w高h的距形

       4   INVxywh 反色以点(x,y)为顶点,宽w高h的距形

       5   SDTxy (CDTxy) 在点(x,y)处画点(在点(x,y)处灭点)  

       n 0=x 0=y 0=w 0h 0各参数在128X64LCD显示屏上图示如下:

       图3 命令参数在128X64模块显示屏上示意

       在主画面的“发送命令”左边的命令输入框中输入正确的命令后点击“发送命令”,此时LCD屏上会有相应的显示动作,若在调试过程中发现要修改某位图时可以用“图文编辑”

       重新修改后按前述步骤再一次下载位图,直到对显示界面满意为止。

       最终要将模块脱离电脑通过模块上的SIO接入用户控制电路中运行,SIO定义如下:

       PIN1:模块背光电极1(LED背光时为负极,EL背光时为交流驱动电极1);

       PIN2:模块背光电极2(LED背光时为直流正5伏,EL背光时为交流驱动电极2);

       PIN3,PIN5:模块逻辑电源地;

       PIN4:模块逻辑电源直流正5伏;

       PIN6:模块内MCU外部复位,高有效,防死机时用;

       PIN7:模块忙信号,低为忙,高为闲;

       PIN8:模块显示控制命令串行输入,通讯协议为(9600,n,8,1),即9600波特率,无校验位,8个数据位,1个停止位。

       现举例说明模块如何与单片机AT89C2051接口,为保证波特率的准确,建议AT89C2051用11.0592MHz的晶体,联接图示如下:

       图4 单片机AT89C2051与模块128X64的联接

     
; 在编写单片机AT89C2051的控制软件时需注意以下事项:

       1.串行口模式设为模式1(1个起始位,8个数据位,1个停止位);

       2.波特率设为9600(TH1=TL1=0FDH,SMOD=0;TH1=TL1=0FAH,SMOD=1);

       3.在发送命令之前需检测模块为闲态(PIN7=1),否则所发的命令可能失效;[!--empirenews.page--]

       4.串口发送的必须是完整命令的ASCII码,如命令“BMP0B0C0D”,实际由串口发送的内容是“424D50304230433044”,顺序为 “B->M->P->0->B->0->C->0->D”;

       5.在每条命令末尾还要加上命令结束码“0D”,以表明命令结束。

       6.若单片机AT89C2051的串口已被占为他用,那么用一根口线来摸拟生成一个软串口即可。

       7.模块SIO接口中PIN6的作用是当模块内MCU由于干扰死机时,用户控制电路可强行外部复位,使模块脱离死机状态,判断模块是否死机可通过向其发送正确的显示命令后,PIN7电平是否有变化来得知,实际上模块在完成每条命令内部操作后即进入睡眠状态,死机的机率是极低的。在下面的软件中未考虑死机的情况。

       用MCS-51汇编语言编写简单的显示控制源程序如下(实际运行已通过):

       BUSY BIT P3.0 ;定义忙信号口线,当然也可定义为其他口线

       X_V EQU 30H ;定义各参数单元

       Y_V EQU 31H

       NUBER EQU 32H

       WIDTH EQU 33H

       HIGHT EQU 34H

       REG_ASC_XH EQU 35H ;定义参数x高位ASCII码单元

       REG_ASC_XL EQU 36H ;定义参数x低位ASCII码单元

       REG_ASC_YH EQU 37H ;定义参数y高位ASCII码单元

       REG_ASC_YL EQU 38H ;定义参数y低位ASCII码单元

       REG_ASC_NH EQU 39H ;定义参数n高位ASCII码单元

       REG_ASC_NL EQU 3AH ;定义参数n低位ASCII码单元

       REG_ASC_WH EQU 3BH ;定义参数w高位ASCII码单元

       REG_ASC_WL EQU 3CH ;定义参数w低位ASCII码单元

       REG_ASC_HH EQU 3DH ;定义参数h高位ASCII码单元

       REG_ASC_HL EQU 3EH ;定义参数h低位ASCII码单元

       ORG 00H ;程序开始

       AJMP MAIN

       ORG 30H

       MAIN:

       MOV SP,#60H ;设堆栈指针

       LCALL INIT_SIO ;初始化串口

       MOV X_V, #0CH ;在x=12,y=13为顶点处显示位图11

       MOV Y_V, #0DH

       MOV NUBER, #0BH

       LCALL ORDER_BMP ;发送位图显示子程,其它命令类似

       AJMP $ ;观察LCD显示屏

       INIT_SIO:

       MOV SCON,#50H ;串行口:方式1

       MOV TMOD,#21H ;定时器T1为波特率发生器,方式2

       MOV TH1,#0FDH ;波特率=9600, Fosc=11.0592MHz

       MOV TL1,#0FDH ;SMOD=0

       SETB TR1 ;启动T1

       RET

       ORDER_BMP: MOV A,X_V

       MOV R0, #REG_ASC_XH

       LCALL H_ASC ;将参数x转换为两个字节的ASCII码

       MOV A,Y_V

       MOV R0, #REG_ASC_YH

       LCALL H_ASC ;将参数y转换为两个字节的ASCII码

       MOV A,NUBER

       MOV R0, #REG_ASC_NH

       LCALL H_ASC ;将参数n转换为两个字节的ASCII码

       LCALL BUSY_CK ;检测模块状态[!--empirenews.page--]

       MOV A, #“B” ;先发送命令码BMP的ASCII码

       MOV SBUF, A

       JNB TI, $

       CLR TI

       MOV A,#“M”

       MOV SBUF, A

       JNB TI, $

       CLR TI

       MOV A, #“P”

       MOV SBUF, A

       JNB TI, $

       CLR TI

       MOV R0, #REG_ASC_NH

       LCALL SEND_CS ;发参数n的ASCII码

       MOV R0, #REG_ASC_XH

       LCALL SEND_CS ;发参数x的ASCII码

       MOV R0, #REG_ASC_YH

       LCALL SEND_CS ;发参数y的ASCII码

       MOV A,#0DH

       MOV SBUF, A ;发送命令结束标志“0DH”

       JNB TI, $

       CLR TI

       RET

       BUSY_CK: JNB BUSY, $ ;等待模块为闲状态

       RET

       SEND_CS: MOV A,@R0

       MOV SBUF, A

       JNB TI, $

       CLR TI

       INC R0

       MOV SBUF, A

       JNB TI, $

       CLR TI

       RET

       H_ASC: MOV B, A ;将一字节的十六进制数转换为两字节的ASCII码

       ANL A, #0F0H

       SWAP A

       CJNE A, #9, PD_G

       XY9: ADD A, #30H

       TURN_LOW: MOV @R0, A

       AJMP LOW_BIT

       PD_G: JC XY9

       ADD A, #37H

       AJMP TURN_LOW

       LOW_BIT: MOV A, B

       ANL A, #0FH

       CJNE A, #9, PD_G1

       XY_9: ADD A, #30H

       TURN_LOW1: MOV @R0, A

       RET

       PD_G1: JC XY_9

       ADD A, #37H

       AJMP TURN_LOW1

       END

       结束语:对那些正准备用图形点阵LCD模块来完善人机界面和提高产品档次的广大用户来说,我们真诚盼望您的产品构思能迅速变成实物,其实这也正是您所希望的,可视化编程LCD模块必然能助您一臂之力。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭