鱼缸智能控制系统的研究与设计 下载本文

内容发布更新时间 : 2024/4/25 6:36:06星期一 下面是文章的全部内容请认真阅读。

表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。

指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。

指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。

指令10:写数据。 指令11:读数据。

读写操作时序如图2.11和2.12所示:

图2.11 读操作时序

图2.12 写操作时序

④1602LCD的RAM地址映射及标准字库表

17

液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图2.13是1602的内部显示地址。

图2.13 1602的内部显示地址

例如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行, 因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是 01000000B(40H)+10000000B(80H)=11000000B(C0H)。 在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。

1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表2.6所示,这些 字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是 01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

表 2.5 1602点阵字符图形

×××0000 0000 CGRM (1) ×××0001 ×××0010 ×××0011 ×××0100 ×××0101 ×××0110 ×××0111 ×××1000 ×××1001 ×××1010 ×××1011 ×××1100 ×××1101 ×××1110 ×××1111 (2) (3) (4) (5) (6) (7) (8) (1) (2) (3) (4) (5) (6) (7) (8) 0010 ! ” # $ % & > ( ) · + フ - . / 1 2 3 4 5 6 7 8 9 : ; < = > ? 0011 0 0100 ? A B C D E F G H I J K L M N O 0101 P Q R S T U V W X Y Z [ ¥ ] ^ — 0110 \\ a b c d e f g h i j k l m n o 0111 p q r s t u v w x y z 〈 | 〉 . ← 1010 □ r ? \\ ロ テ ア イ ウ エ オ ヤ ュ ヨ ツ 1011 一 ァ ィ ゥ ェ ォ ヵ キ ク ケ コ サ シ ス セ ソ 1111 P q θ ∞ 0 ∑ x X y 千 万 十 18

⑤1602LCD的一般初始化(复位)过程 延时15mS

写指令38H(不检测忙信号) 延时5mS

写指令38H(不检测忙信号) 延时5mS

写指令38H(不检测忙信号)

以后每次写指令、读/写数据操作均需要检测忙信号 写指令38H:显示模式设置 写指令08H:显示关闭 写指令01H:显示清屏 写指令06H:显示光标移动设置 写指令0CH:显示开及光标设置 2.5.4光耦合器件的选取

TLP521是可控制的光电藕合器件,光电耦合器广泛作用在电脑终端机,可控硅系统设备,测量仪器,影印机,自动售票,家用电器,如风扇,加热器等。电路之间的信号传输,使之前端与负载完全隔离,目的在于增加安全性,减小电路干扰,减化电路设计。

东芝TLP521-1,-2和-4组成的砷化镓红外发光二极管耦合到光三极管。该TLP521-2提供了两个孤立的 光耦8管脚封装,而TLP521-4提供了4个孤立的光耦中16引脚塑料DIP封装。TLP521、TLP521-2、TLP521-4光耦内部结构图及引脚图如图2.14。

集电极-发射极电压: 55V(最小值) 经常转移的比例: 50 %(最小) 隔离电压: 2500 Vrms (最小)

图2.14TLP521、TLP521-2、TLP521-4 光藕内部结构图及引脚图

19

2.5.5 时钟芯片的选取 (1)DS12887的功能特点

DS12887是美国达拉斯半导体公司最新推出的时钟芯片,采用CMOS技术制成,把时钟芯片所需的晶振和外部锂电池相关电路集于芯片内部,同时它与目前IBM AT计算机常用的时钟芯片MC146818B和DS1287管脚兼容,可直接替换。采用DS12887芯片设计的时钟电路勿需任何外围电路并具有良好的微机接口。DS12887芯片具有微轼耗、外围接口简单、精度高、工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟场合中。其主要功能如下:

①内含一个锂电池,断电情况运行十年以上不丢失数据。 ②计秒、分、时、天、星期、日、月、年,并有闰年补偿功能。 ③二进制数码或BCD码表示时间、日历和定闹。

④12小时或24小时制,12小时时钟模式带有PWM和AM指导,有夏令时功能。 ⑤MOTOROLA5和INATAEL总线时序选择。

⑥有128个RAM单元与软件音响器,其中14个作为字节时钟和控制寄存器,114字节为通用RAM,所有ARAM单元数据都具有掉电保护功能。 ⑦可编程方波信号输出。

⑧中断信号输出(IRQ)和总线兼容,定闹中断、周期性中断、时钟更新周期结束中断可分别由软件屏蔽,也可分别进行测试。 (2)DS12887的原理及管脚说明

DS12887内部原理如图2.15所示,由振荡电路、分频电路、周期中断/方波选择电路、14字节时钟和控制单元、114字节用户非易失RAM、十进制/二进制计加器、总线接口电路、电源开关写保护单元和内部锂电池等部分组成。图2.16显示了DS12887管脚排列图。下面分别说明管脚功能:

图2.15 DS12887内部原理图

20

图2.16 DS12877管教排列

GND,VCC:直流电源+5V电压。当5V电压在正常范围内时,数据可读写;当VCC低于4.25V,读写被禁止,计时功能仍继续;当VCC下降到3V以下时,RAM和计时器被切换到内部锂电池。

MOT(模式选择):MOT管脚接到VCC时,选择MOTOROLA时序,当接到GFND时,选择INTEL时序。

SQW(方波信号同):SQW管脚能从实时时钟内部15级分频器的13个抽头中选择一个作为输出信号,其输出频率可通过对寄存器A编程改变。

AD0~AD7(双向地址/数据复用线):总线接口,可与MOTOROLA微机系列和INTEL微机系列接口。

AS(地址选通输入):用于实现信号分离,在AD/ALE的下降沿把地址锁入DS12887。

DS(数据选通或读输入):DS/RD客脚有两种操作模式,取决于MOT管脚的电平,当使用MOTOROLA时序时,DS是一正脉冲,出现在总线周期的后段,称为数据选通;在读周期,DS指示DS12887驱动双向总的时刻,在写周期,DS的后沿使DS12887锁存写数据。选择INTEL时序时,DS称作(RD),RD与典型存贮器的允许信号(OE)的定义相同。 R/W(读/写输入):R/W管脚也有两种操作模式。选MOTOROLA时序时,R/W是一电平信号,指示当前周期是读或写周期,DSO为高电平时,R/W高电平指示读周期,R/W低电平指示写周期;选INTEL时序,R/W信号是一低电平信号,称为WR。在此模式下,R/W管脚与通用RAM的写允许信号(WE)的含义相同。

CS(片选输入):在访问DS12887的总线周期内,片选信号必须保持为低。 IRQ(中断申请输入):低电平有效,可作微处理的中断输入。没有中断条件满足

21