读数据 1 1 数据 从RAM中读数据
写数据 1 0 数据 对RAM写数据
清屏 0 0 0 0 0 0 0 0 0 1 显示清屏:1、数据指针清零
2、所有显示清屏
回车 0 0 0 0 0 0 0 0 1 0 显示回车,数据指针清零
数据指针设置 0 0 80H+地址码(0~27H,40~47H) 设置数据指针地址
表3.3 SMC1602A操作指令
3.2.4 显示的仿真器件图
图3.5 LM016L
显示区间:
第0行:模式(前8位),当前时间(后8位)
第1行:对应状态(前7位),
当前水温和水位(后9位):水温(4)T:×× 水位(4):××%
3.3 DS1302时钟芯片
DS1302是采用SPI总线涓流充电的时钟芯片。SPI总线是同步串行外设接口,其中数据的传输需要一条时钟线,一条数据线和一条控制线。
DS1302内含一个实时时钟/日历和31字节静态RAM,通过简单的串行接口和单片机通信。实时时钟/日历电路提供秒,分,时,星期,日,月,年的信息,每月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM指示决定采用24或12小时格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需三个口线: 复位、I/O数据线、SCLK串行时钟。
3.3.1 DS1302的封装形式和引脚
DS1302的DIP封装形式如图3.6
图3.6 DS1302的封装形式
DS1302的引脚功能如下:
Vcc2;主电源,一般接+5V电源。
Vcc1:备份电源,一般接3.6V可充电源。
X1和X2:晶振引脚,接32.768kHZ晶振,通常该引脚上还可以接补偿电容。
GND:电源接地端,接主电源和备份电源的地端。
SCLK:串行时钟输入端。
I/O:数据输入输出端。
:复位输入端。
3.3.2 DS1302的命令字节格式
每一数据的传送由命令字节进行初始化,DS1302的命令字节格式如表3.4所示,
D7(MSB) D6 D5 D4 D3 D2 D1 D0(LSB)
1 RAM/
A4 A3 A2 A1 A0 RD/
表3.4 DS1302的命令字节格式
控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1(A4~A0):指示操作单元的地址;位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。
控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。
同样,在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据也是从最低位到最高位。
输入驱动高启动所有的数据传输。
输入有两个功能。首先, 打开控制逻辑,允许访问的移位寄存器的地址/命令序列。其次, 提供了一个终止单字节或多字节数据传输方法。
一个时钟周期是由一个下降沿之后的上升沿序列。对于数据传输而言,数据必须在有效的时钟的上升沿输入,在时钟的下降沿输出。如果 为低,所有的I/ O 引脚变为高阻抗状态,数据传输终止。 AT89C51单片机野外多功能饮水机设计(4):http://www.751com.cn/zidonghua/lunwen_8065.html