当前位置:首页 > 单片机 > 单片机
[导读]实验动物独立通气笼盒(Individual Ventilated Cages,IVC)(闭环)监控系统,由微控制器实现对笼盒风扇的通气量、笼盒内部的氨含量等参数采集,并根据这些参数来调整通气风扇转速,以调整笼盒的换气率,从而确保笼盒内

实验动物独立通气笼盒(Individual Ventilated Cages,IVC)(闭环)监控系统,由微控制器实现对笼盒风扇的通气量、笼盒内部的氨含量等参数采集,并根据这些参数来调整通气风扇转速,以调整笼盒的换气率,从而确保笼盒内部的空气质量。同时,根据相关参数指标发出警报以提醒更换过滤膜等,实现对小动物生长环境的过程控制。

在整个监控系统中,人机交互界面部分用于显示整个实验动物生长环境过程中的控制历史数据、实时控制参数和环境温度参数等。

本文采用以ST7920为控制器的YMl2864R点阵式液晶显示模块(LCD Module,LCM)构成了整个IVC监控系统的人机界面部分。YM12864R点阵式液晶显示模块具有灵活的接口方式和简单的操作指令,构成的全中文人机交互图形界面既可以显示8×4行16×16点阵的汉字,也可以显示图形。模块内部设有2MB的中文字型CGROM和64×256点阵的GDRAM绘图区域;同时,提供4组可编程控制的16×16点阵造字空间。

1 点阵式液晶硬件接口设计

以ST7920为控制器的YM12864R点阵式液晶显示模块和单片机之间的接口方式有并行和串行两种。本文采用串行接口方式,单片机选用AVR公司的ATmega16。接口电路如图1所示。其中,PC4控制串行的片选信号(CS),低电平有效;PC5控制串行的数据线(SID);PC6控制串行的时钟输入(CLK)。ST7920通过VCC(+5 V)和GND之间串联一个10 kΩ的电阻来控制背光强度。如果不需要调节对比度,可以直接将VLCD引脚接VCC(+5 V),此时对比度最大。



2 文本显示及绘图显示

2.1 文本显示

ST7920可以显示半宽的HCGROM字型、CGRAM字型以及中文CGROM三种字型,通过在DDRAM中写入的编码选择。文本显示DDRAM提供8个×4行的汉字空间,如下所示:



字型编码如下:

①显示半宽HCGROM字型。将1字节写入DDRAM中,范围为02H~7FH的编码。

②显示半宽CGRAM字型。将2字节编码写入DDRAM中,总共有0000H、0002H、0004H、0006H四种编码。

③显示中文CGROM字型。将2字节编码写入DDRAM中,范围为A1AOH~FTFFH(GB码)或A140H~D75FH(BIG5码)的编码。

2.2  绘图显示

绘图显示GDRAM提供128×8字节的记忆空间。在更改绘图RAM时,先连续写入水平与垂直的坐标值,再写入2个字节的数据到绘图RAM中,而地址计数器(AC)会自动加1。在写入绘图显示RAM的期间,绘图显示功能必须关闭。整个写入绘图RAM的步骤如下:

①关闭绘图显示功能;

②先将水平的位元组坐标(X)写入绘图RAM地址,再将垂直的坐标(Y)写入绘图RAM地址;

③依次将D15~D8和D7~D0写入RAM中;

④打开绘图显示功能。

图形显示坐标如图2所示。其中,水平方向X以字节单位,垂直方向Y以位为单位。



3 字符反白

在实现人机交互界面菜单时,字符反白可以表示菜单中不同选项被选中的状态。液晶显示模块YM12864R的使用手册中提供了对应行的反白指令,但在原理上ST7920控制器的128×64点阵液晶等同于256×32点阵,第3行对应的文本显示(DDRAM)地址紧接着第1行,第4行对应的文本显示(DDRAM)地址紧接第2行。因此,用户对第1行执行反白显示操作时,第3行必然也反白显示;对第2行执行反白操作时,第4行也必然反白。可见,使用手册中自带的反白指令不能实现任意字符的反白。

为了解决上述问题,可以将图形显示和字符显示结合起来使用。在ST7920控制器中,文本显示的DDRAM和图形显示的GDRAM是相互独立的,而最后显示到液晶上的结果则是,文本显示DDRAM中数据和图形显示GDRAM中数据的异或结果。

如果要在液晶显示模块的某个点上呈现反白显示,那么就在该点绘图并且显示文本;如果要取消反白,只需用全“0”擦掉该点的绘图。这样,就可以实现YM12864R的任意字符的反白。

字符反白程序流程如图3所示。其中,base_x表示绘图起始的行地址;Y_Pos表示绘图起始的列地址;第1行至第4行的起始地址分别是(0x80,0x80),(0xS0,0xg0),(0x88,0xS0)和(0x88,0x90)。



反白就是在需要反白的区域进行绘图,即在这个区域写进0xff。清除一个区域的反白,就是对需要清除反白的区域清除绘图,即在这个区域写进0x00。

在整个绘图的过程中,横向地址指针是自动进行加1运算的,所以只需要确定这一行的首地址横坐标;而纵坐标的地址不进行自动加1运算,需要在程序中修正,每次修正是以像素为基本单位的。
字符反白显示实例如图4所示。



4 任意位置显示任意大小图形

在实现人机交互界面时,图文结合是常见的一种方式。本文尝试一种任意位置显示任意大小图形(横向尺寸以字节为基本单位,纵向尺寸以位为基本单位)的方法,为人机交互界面的图形结合设计提供了捷径。

4.1 任意位置显示任意大小图形程序

任意位置显示任意大小图形程序流程如图5所示。其中,x1和y1表示所画图的起始点相对于液晶屏幕左上角起始点(0xS0,0x80)的距离(横向x1以字节为基本单位,纵向y1以位为基本单位);x表示所画图的起始横坐标地址;y表示所画图的起始纵坐标地址;Write_command()函数用于向液晶中写命令;templ表示图形的纵向尺寸(以像素为单位)。



绘图时,如果所画的图形只涉及上半屏(或下半屏),那么在写地址时可以不考虑地址跨越上下半屏的调整,只需要在所画图形的初始处写好行地址和列地址:

Write_command(y+templ);
Write_command(x);

在绘图过程中,横坐标地址指针会在写数据的过程中自动加1,因此只需要写出这一行的首地址;但纵坐标地址指针不会自动加1,需要在程序中修正。

4.2  任意位置显示任意大小图形实例   

任意位置显示任意大小图形实例如图6(a)~(c) 所示。



结  语

ST7920因内置字库而被广泛应用,其图形显示的关键点是熟练掌握图形显示坐标。在笔者所参与的独立通气笼盒监控系统设计过程中,利用以ST7920为控制器的液晶显示模块构建良好的人机交互界面,以曲线和直方图的方式显示实时温度。系统可由用户设定开启密码,可以查看相关历史数据、实现实验动物生长环境及生长过程的控制,以及回溯历史数据、实时控制参数和环境温度等参数。该设计对优化控制实验动物生长环境、稳定实验动物生活习性、动物形态十分有益。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭