历史上的今天
今天是:2025年02月28日(星期五)
2021年02月28日 | 基于单片机C8051F020的液晶显示的接口电路和程序实现
2021-02-28 来源:eefocus
在单片机系统设计中,LCM(液晶显示模块)人机交互界面的设计往往是很重要的一个环节。LCM可以用于智能仪器上的显示设定参数、状态提示符、检测结果和待输入参数等功能。本文结合电解质分析仪的设计要求,采用液晶显示模块YXD—12864A2LCM,研究并实现了以单片机C8051F020为基础的液晶显示的接口电路和程序设计,添加了按键系统,从而达到方便用户使用的目的。
1电解质分析仪简介
本系统所设计的电解质分析仪(Electrolyte Analyzer)是一种具有高分辨率和高精度的仪器,可以与多种离子选择电极配套使用,可用自动方法测定样品中钾、钠、氯、钙离子的浓度和pH值。其结构方框图如图1所示。仪器采用单片机C8051F020为核心芯片进行设计,在测量室内由化学传感器采集电解质的电位信号传送给信号调理电路,经过信号调节后送给主电路板进行A/D转换,然后输出显示到LCM上,LCM参数、测量结果的显示等都可由键盘操作。与上位机的通信上,采用RS 232通信方式传输数据。本仪器的特点是可以单机使用、也可以与上位机连接使用,与上位机连接后通过界面操作可以帮助用户完成病人信息的查询、存储、仪器工作情况的实时检测等功能。

图1电解质分析仪结构方框图
系统显示部分采用图形液晶显示模块YXD-12864A2LCM,安装在仪器的表面,用来显示参数设置、测量结果、定标、质控等的情况。界面显示与参数设定及翻页等功能通过按键的控制来实现。
2 YXD-12864A2LCM
2.1模块介绍
YXD-12864A2LCM是一种图形点阵液晶显示模块,它主要由行驱动器、列驱动器及128x64全点阵液晶显示器组成。可完成图形显示,也可以显示4x8个(16&TImes;16点阵)汉字。YXD-12864A2模块共有20个引脚。其中,第1脚VSS接系统地;第2脚VDD接电源电压;第3脚V0接液晶显示器驱动电源;第4脚D/I接数据指令选择信号;第5脚R/W接读写选择信号;第6脚接读写使能信号,E为高时,数据被读出,而在E的下降沿到来时,数据被锁存到DB0~DB7;第7~14脚接三态数据总线;第15、16脚接片选信号;第17脚接复位信号;第18脚Vout接内部负压发生器输出电压端;第19脚接LED背光电源正极;第20脚接LED背光电源负极。
2.2接口电路
接口电路图和原理图如图2,图3所示,C8051F020的P3口作为数据口与液晶模块DB口相连;P2.0为复位引脚控制端;P2.1、P2.4、P2.5作为普通的I/O口使用,分别接液晶模块的使能端E、寄存器选择引脚D/I、读写引脚R/W;P2.2、P2.3分别接片选信号左或者右,对显示进行定位。

图2 LCM接口电路图
图2的电路图中,R28和R41为上拉电阻,因为它每个端口是与单片机相连的,对于显示器而言工作电压是5 V,而C8051F020工作电压是3.3 V,要使C8051F020输出能更好地驱动5 V输入的LCM,就要将每个端口通过一个上拉电阻接到5 V电源,这样就可以保证C8051F020的逻辑“1”输出能被提升到5 V.

图3接口电路原理图
2.3软件设计
显示字符:从屏幕指定的位置开始显示指定的字符串。此LCM是128x64位的液晶显示屏,每个字符所占用的点阵是8x8.显示位置由两个坐标参数据决定,横坐标x表示“行”,取值范围为0~7;第0行对应屏幕最上边的一行,第7行对应最下面一行。纵坐标y表示“列”,取值范围为0~15,第0列对应屏幕最左边的一列,第15列对应屏幕最右边的一列。
假设要从第4行第8列的位置显示字符“K”,则程序段如下:
;entrancd:C(left,right),R4(X),R5(Y),DPTR,R6(length)
data_to_lcd:
SETB CS1_LCD
CLR CS2_LCD
JNC data_to_lcd2
CLR CS1_LCD
SETB CS2_LCD
data_to_lcd2:
MOV A,R4
LCALL display_X_line
MOV A,R5
LCALL display_Y_line
MOV A,R6
MOV R7,A
LCALL write_LCD_bytes
MOV A,R4
INC A
LCALL display_X_line
MOV A,R5
LCALL display_Y_line
MOV A,R6
MOV R7,A
INC DPTR
LCALL write_LCD_bytes
CLR CS2_LCD
CLR CS1_LCD
RET
SETB C;片选的设定
MOV R4,#04H;位置行号
MOV R5,#08H;位置列号
MOV DPTR,#K;字符内容
MOV R6,#08;定义字符的长度
LCALL data_to_lcd;调用输出字符的子程序
史海拾趣
|
http://66.249.89.132/translate_c?hl=zh-CN&sl=en&u=http://www.abacom-online.de/uk/html/demoversionen.html&prev=/search%3Fq%3DC51%2Bcompiler%26hl%3Dzh-CN%26client%3Daff-cs-360se%26hs%3Dbtg%26sa%3DN%26start%3D50%26newwindow%3D1&usg=A ...… 查看全部问答> |
|
一台打印机,我们需要经常调换的就是墨盒了,然而用完了的墨盒还能用作什么用处?我想不出来。南韩设计师Jeon Hwan Ju为此设计了一款新的打印机墨水来源,就是利用我们经常喝过了的咖啡渣或茶渣來代替一般的墨水。 该款环保型打印机称为RITI, ...… 查看全部问答> |
|
我的代码是这样的: { ....... KeInitializeEvent(&event, NotificationEvent, FALSE); IoCopyCurrentIrpStackLocationToNext(Irp); IoSetCompletionRoutine(Irp,PacketCompletion,&even ...… 查看全部问答> |
|
1、谁能提供wince 6比5新的的详尽的特性对比?(google上搜到一个老外的页面的对比,不是很详细)最好是非常详细带解释的!高分求!!!!!!!! 2、谁能提供一份文字详细的wince6在2410或2440上运行的步骤包括编译连接烧写等加载! 3、以前的4 ...… 查看全部问答> |
|
我最近搞f2812时又出现了一个问题,用DSP往PC机传数据时,通过观查寄存器看到的结果是正确的,但是PC机上用串口调试助手接收到的数据却错误。我传的是0~9的一个随机数,但接收到的全是F0 00 00(用16进制显示)。我在网上查了可能是晶振或波特率设 ...… 查看全部问答> |
|
对用于低电平测量的测试夹具有几个重要的要求: * 绝缘电阻[1]:所有连接器、内部连线、端子和插座等的绝缘电阻都应当尽可能地高。一般地说,在高质量的测试夹具中,所有的连接器和插座都使用聚四氟乙烯绝缘材料。 * 屏蔽[2]和保护:测试夹具 ...… 查看全部问答> |




