图2.6 SMC1602A 显示与光标设置
? ? 数据控制
控制器内部设有一个数据地址指针,用户可通过它们来访问内部的全部 80 字节RAM。
? 数据指针设置
图2.7 SMC1602A 数据结构指针设置
? 其他设置
其他设置 图2.8 SMC1602A
4) 初始化过程(复位过程) ? 写指令38H:显示模式设置第一次 ? 延时3ms
? 写指令38H:显示模式设置第二次 ? 延时3ms
? 写指令38H:显示模式设置第三次 ? 延时3ms
? 写指令38H:显示模式设置第四次 ? 延时3ms
? 写指令08H:显示关闭 ? 写指令01H:显示清屏 ? 延时3ms
? 写指令06H:显示光标移动设置 ? 写指令0CH:显示开及光标设置
2.2.3 系统框图
本系统的核心部分是STC89C52单片机,利用MAX232芯片实现将hex文件下载到单片机运行的功能;利用SMC1602液晶显示屏实现电子密码锁所需的提示信息输出功能;利用键盘实现对密码操作的各项的功能比如输入密码或者修改密码等;采用蜂鸣器实现系统在输入密码错误三次后的自动报警功能;LED灯来指示密码输入是否正确和指示状态的功能;利用STC单片机内部的EEPROM实现密码数据保存功能;用电源电路为系统提供5V的稳定电源电源;用12MHZ的晶振电路为系统的单片机提供内部时钟。
系统的框图如下图所示:
UART串口 单片机 STC89C51 报警电路与指示电路 复位电路 电源电路与晶振电LCD液晶显示电路 矩阵键盘电路 图2.8 系统结构框图
System structure diagram in figure 2.8
单片机中P1.0~P1.6连接10个独立按键来组成一个矩阵键盘,实现键盘扫描并对按键进行编码,从而实现输入密码和修改密码的功能;P1.7通过NPN型三极管来驱动蜂鸣器,当输入密码错误三次后自动实现报警功能;P2.0~P2.7连接液晶显示器的8位数据线,实现从单片机向液晶显示器传输数据;P3.0连接液晶的RS端和max232的out端、P3.1连接液晶的RW端和max232的in端、P3.2连接液晶的EN端,实现单片机控制液晶显示器和连接串口的功能;P3.3连接独立按键,按键后进入输入密码状态;单片机的P3.4、P3.5、P3.6都连接了独立按键,这些独立键盘都是功能键盘他们是:输入密码功能键,按下系统会进入输入密码状态;修改密码功能键,按下系统会进入修改密码状态;还有一个确定功能键,按下系统会实现确定功能;P3.6和 P3.7分别连接红色LED灯和绿色的LED灯,实现密码输入是否正确指示的功能。
3 系统硬件设计
本设计包括8个电路模块,其中包括:指示灯电路模块、5V电源电路模块、晶振电路模块、复位电路模块、LCD显示电路模块、报警电路模块、键盘电路模块、串口电路模块。
3.1 指示灯电路设计
指示电路分为两个部分:电源指示和密码输入状态指示,设计电路如下图所示: 3.2.1 电源指示灯电路设计
当电源接通后指示灯亮,表示系统供电正常。
图2.9 电源指示灯电路 Figure 2.9 power light circuit
3.2.2 密码输入状态指示电路设计
P3.6连接红色LED1,LED1亮表示当前密码输入错误;P3.7连接绿色LED2,LED2亮表示当前密码输入正确,LED1、LED2全亮表示系统在修改密码状态。
图3.0 密码输入状态指示电路
Figure 3.0 password input status indication circuit
相关推荐: