文档视界 最新最全的文档下载
当前位置:文档视界 › 51单片机实现电子时钟功能-1602液晶显示

51单片机实现电子时钟功能-1602液晶显示

51单片机实现电子时钟功能-1602液晶显示
51单片机实现电子时钟功能-1602液晶显示

第一章设计要求及系统组成

一、基本操作时序:读状态:输入:RS=L,RW=H,E=H 输出:D0~D7=状态字

写指令:输入:RS=L,RW=L,D0~D7=指令码,E=高脉冲输出:无

读数据:输入:RS=H,RW=H,E= 高脉冲输出:D0~D7数据

写数据:输入:RS=H,RW=L。D0~D7=数据,E=高脉冲输出:无二、、、状态字说明:STA7 D7\ STA6 D6\ STA5 D5 \ STA4 D4 \STA3 D3 \ STA2 D2\\ STA1 D1

STA0-6:当前数据地址指针的数值

STA7:读写操作使能 1表示禁止,0表示允许

对控制器每次进行读写操作之前,都必须进行读写检测,确保STA7为0;但是我们可以进行延时进行实现。

RAM地址映射: LCD 16字*2行

00 01 02 03 04 05 06 07 08 08 09 0A 0B 0C 0D 0E 0F (27)

40 41 42 4F 50 (67)

指令说明:1.初始化设置 1.显示模式设置指令码:00111000(0x38)功能:设置16*2显示,5*7点阵,8位数据接口

必须开显示 2.显示开、关及光标设置指令码:00001DCB,功能:D=1 开显示;D=0 关显示;C=1显示光标;B=1 光标闪烁;B=0 光标不显示 000001NS:功能:N=1当读或写一个字符后地址指针加1,且光标加1;N=0相应的减1;S=1当写一个字符,整屏显示左移(N=1)或右移(N=0),以得到光标不移动而屏幕移动的效果。

S=0 当写一个字符,正屏显示不移动。

数据控制:控制器内部设有一个数据地址指针,用户可通过它们来访问内部的全部80字节RAM

4.2.1 数据指针设置:指令码:80H+地址码(0-27H,第二行开始:40H-67H) 4..2.2 读数据,写数据

其它设置:01H:显示清屏:1.数据指令清零 2 所有显示清零 02H:显示回车:1.数据清零

如何进行连接:实际操作中,液晶接到,第一管脚是D,第二管脚是VCC,15和16是背光,D0-D7是数据口,接到单片机的P0口,P0口接了两个锁存器,液晶,D/A,具有高阻状态的都可以随便接,没有影响,,第六管脚是LCDEN相当于 E,使能信号,它接P3^4,R/W接地,表示低电平,因为我们只进行写操作,RS接2实验板上的P3^5;只需这两端口便足以控制液晶,2和3是偏压信号,一端接地,

接口信号说明:编号:1 VSS(符号表示)电源地(引脚说明)2VDD 电源正极3VL液晶显示偏压信号4RS数据/命令选择端(H/L)5R/W 读写选择端(H/L)6E使能信号7D0 Data 1/0 8D1 Data 1/0 9 D2 Data 1/0 10 D3 Data 1/0 11D4 Data 1/0 12D5 Data 1/0 13D6 Data 1/0 14D7 Data 1/0 15BLK背光源正极16 BLK背光源负极

实际操作:::

先写光标程序;写两个子程序,一个写数据,一个写指令:先进性两个宏定义,再位申明LCDEN与RS;为了电量充足。初始化时关断数码管,定义数码管的两个锁存端,dula与wela,P2^6与P2^7,先写主函数(调用初始化函数,在调用数据子函数(’1’),从右向左滚动进来

Code:

),再写初始化函数(先关断数码管,在进行显示模式设置,显示开、关及光标设置,设计数据),接着写命令子函数writer——com(开始操作时序,写指令,P0口送的指令码,接着需要延时一段时间让E 变成高电平,在持续一段时间,E再变低),它由所用的指令直接调

用即可。。。。。。。。。。。。

再写一个写数据的子函数writer_data (lcdrs=1),需用延时子函数。 Uchar code table[]={“” }

注意:为了使得黑托不出现,应该屏幕全部清零writer_com(0x01)。

???????xdata :外部地址空间

1.1 设计要求

利用单片机最小系统设计一个电子时钟,显示方式为**:**:**,并且可以任意修改时间。

1.2系统组成

原理框图如图1.1

图1.1

系统原理框图

第二章系统设计方案2.1 系统设计方案

电路原理图如图2.1所示

图2.1 电路原理图

2.2 电路模块组成及其工作原理

2.2.1 时钟电路

系统时钟源由内部时钟方式产生,时钟电路由12MH晶振和两个30PF瓷片电容组成,构成自激振荡,形成振荡源提供给单片机。电容可在5PF到30PF 之间选择,电容的大小对振荡频率有微小影响,可起频率微调作用。

时钟电路如图2.2所示

图2.2 时钟电路

2.2.2 复位电路

单片机复位有上电复位和手动复位两种方式,上电复位是接通电源后利用RC充电来实现复位。手动复位是通过人为干预,强制系统复位。

复位电路如图2.3所示,可以实现上电复位和手动复位功能。

图2.3 复位电路

2.2.3 按键电路

在单片机的P1.0、P1.1、P1.2三个I/O口接三个简易按键,通过不断检测按键状态,识别按键的按下顺序和次数即可实现时间的任意修改。

按键电路如图2.4所示。

2.2.4 1602液晶显示模块电路

本设计是通过对1602液晶显示屏的控制来实现时间的显示。

1602液晶显示模块的驱动如下所述:

图2.4 1602液晶屏实物图

1602采用标准的16脚接口,其中:

第1脚:VSS为地电源

第2脚:VDD接5V正电源

第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度

第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。

第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。

第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

第7~14脚:D0~D7为8位双向数据线

第15~16脚:空脚

1602显示屏的时序图如图2.5。

图2.5 1602时序图

1602液晶显示屏与单片机的连线图如图2.6所示。

图2.6 1602与单片机连线图

相关文档