基于单片机的电子密码锁设计(论文程序硬件)(编辑修改稿)内容摘要:

2) RAM 地址映射图控制器内部带有 80X8 位( 80字节)的 RAM 缓冲区,对应关系如右图所示: 3) 指令说明  初始化设置  显示模式设置 图 SMC1602A 接口说明 图 SMC1602A RAM 地址映射图 图 SMC1602A 显示模式设置 河北工业大学城市学院 20xx 届本科毕业论文 9  显示开 /关及光标设置  数据控制 控制器内部设有一个数据地址指针,用户可通过它们来访问内部的全部 80 字节RAM。  数据指针设置  其他设置 4) 初始化过程(复位过程)  写指令 38H:显示模式设置第一次  延时 3ms  写指令 38H:显示模式设置第二次  延时 3ms 图 SMC1602A 显示与光标设置 图 SMC1602A 数据结构指针设置 图 SMC1602A 其他设置 河北工业大学城市学院 20xx 届本科毕业论文 10  写指令 38H:显示模式设置第三次  延时 3ms  写指令 38H:显示模式设置第四次  延时 3ms  写指令 08H:显示关闭  写指令 01H:显示清屏  延时 3ms  写指令 06H:显示光标移动设置  写指令 0CH:显示开及光标设置 系统框图 本系统的 核心部分是 STC89C52 单片机, 利用 MAX232 芯片实现将 hex 文件下载到单片机运行的功能;利用 SMC1602 液晶显示屏实现电子密码锁所需的提示信息输出功能;利用 键盘实现 对 密码 操作的各项 的功能 比如输入密码或者修改密码等 ;采用蜂鸣器实现 系统 在输入密码错误三次后的自动 报警功能; LED 灯来指示密码输入是否正确和指示状态的功能;利用 STC 单片机内部的 EEPROM 实现密码 数据 保存功能;用电源电路为 系统提供 5V的稳定电源 电源;用 12MHZ 的 晶振电路为系统的单片机提供内部时钟。 系统的框图如下图所示: 图 系统结构框图 单片机中 ~ 连接 10个独立按键来组成一个矩阵键盘, 实现 键盘扫描并 单片机 STC89C51 电源电路与晶振电路 复位电路 LCD 液晶显示电路 UART 串口 矩阵键盘电路 报警电路与指示电路 河北工业大学城市学院 20xx 届本科毕业论文 11 对按键进行编码,从而实现输入密码和修改密码的功能; 通过 NPN 型三极管来驱动 蜂鸣器, 当输入密码错误三次后自动 实现报警功能; ~ 连接液晶显示器的 8位数据线,实现从单片机向液晶显示器传输数据; RS端和 max232的 out 端、 连接液晶的 RW端和 max232 的 in端、 连接液晶的 EN 端,实现单片机控制液晶显示器和连接串口的功能; 连接独立按键,按键后进入输入密码状态; 单片机的 、 、 都 连接 了 独立按键, 这些独立键盘都是功能键盘他们是:输入密码功能键,按下系统会进入输入密码状态;修改密码功能键,按下系统会进入修改密码状态 ;还有一个确定功能键,按下系统会实 现确定功能 ; 和 分别连接红色 LED 灯和绿色的 LED 灯,实现密码输入是否正确指示的功能。 本章小结 根据毕业设计的要求和系统中所用到的元件的原理特征,确定了设计的总体方案即:以 STC89C52 为主控制器, SMC1602A 液晶显示为提示器件,矩阵键盘为输入器件,蜂鸣器为报警器件, STC89C52 内部的 EEPROM 为存储数据器件, LED 灯为指示器件,MAX232 和上位机实现异步通信的器件 等。 这些器件与单片机的连接方式将在下面的内容进行说明。 河北工业大学城市学院 20xx 届本科毕业论文 12 3 系统硬件设计 本设计包括 8个 电路 模块,其中 包括 : 指示灯电路模块、 5V电源电路模块、晶振电路模块、复位电路模块、 LCD 显示电路模块、报警电路模块、键盘电路模块、串口电路模块。 指示灯 电路设计 指示电路分为两个部分:电源指示和密码输入 状态 指示,设计电路如下图所示: 电源指示灯电路设计 当电源接通后指示灯亮,表示系统供电正常。 图 电源指示灯电路 密码输入 状态 指示 电路设计 连接红色 LED1, LED1 亮表示当前密码输入错误; 连接绿色 LED2, LED2亮表示当前密码输入正确, LED LED2 全亮表示系统在修改密码状态。 图 密码输入 状态 指示 电路 5V电源 电路设计 设计电路如下图所示: VCC1KR7D1POWERGND1KR51KR6D3REDD4GREENLED1LED2河北工业大学城市学院 20xx 届本科毕业论文 13 图 电源电路接法电路 晶振 电路设计 晶振电路这里采用的是 内部振荡器接法 ,晶振的频率为 12MHZ,它为单片机提供内部时钟源,设计 电路 如下图所示: 图 晶振电路 复位 电路设计 单片机 的复位 本设计 手动 复位, 复位的 作用是防止 程序由于某些原因跑飞 ,通过此键 来保证单片机运行的可靠性 , 设计 电路 如下图所示: 图 复位电路 LCD 显示 电路设计 单片机的 ~ 连接液晶显示器的 7~14 脚( 8 位数据),实现从单片机向12J2CON2C7100uF/25VC10100uF/25VC8104C9104Vin1GND2+5V3U4LM7805CTVCCD6IN4007D7IN4007D8IN4007D9IN400712J4CON2+20pFC120pFC2Y1GNDX1X2S1SWPB10KR1VCCGND10uFC11RST河北工业大学城市学院 20xx 届本科毕业论文 14 液晶显示器传输数据的功能; 连接液晶 4脚( RS 端),从而实现单片机向其发送命令或数据功能; 连接液晶的 5脚( RW 端),从而实现单片机对其读写的功能; 连接液晶的 6脚( EN 端),这个引脚是用来编程控制 lcd 使能的。 还有 lcd 显示器的 3引脚连接 10K 欧姆的可变电阻器,当改变它的阻值大小时可以改变 lcd 显示的对比度如,设计电路下图所示: 图 液晶显示电路 报警 电路设计 蜂鸣器的 连接到单片机的 端。 当编程给 一个高电平的话,三极管的源极 和集电极导 通,蜂鸣器将要通电,通过设置蜂鸣器的通电的时间来实现报警的声音,设计电路如下图所示: 图 报警电路 12345678910111213141516P1SMC1602AGNDVCCR1110KVCCGNDLCDRSLCDRWLCDEND0D1D2D3D4D5D6D7LS1BellVCCGND10KR10Q1PNP河北工业大学城市学院 20xx 届本科毕业论文 15 键盘 电路设计 键盘电路分为两种:矩阵式输入键盘和独立按键,矩阵式输入键盘是( 0~9) 10个数 输 入键,独立按键共 3个为功能键:输入密码 键 、修改密码 键 、确定 键 ,设计电路如下图所示: 矩阵式键盘 矩阵键盘与单片机的引脚连接如下图 ,其中的 ~ 是行扫描, ~列扫描。 图 矩阵键盘电路 独立式功能键 以下三个独立按键是密码锁的功能键, S12 连接 实现进入输入密码状态的功能; S13 连接 实现按键后进入修改密码状态的功能; S14 连接 实现确定功能。 图 功能键盘电路 S20S64S108S31S75S119S42S86S53S97 10KR210KR310KR4VCCS12XGPASSWDS13INPUTPASSWDS14OKGNDGAIMIMIMAOK河北工业大学城市学院 20xx 届本科毕业论文 16 串口 电路设计 串口电路的作用是将 TTL 电平转换为 CMOS 电平,从而将 PC机产生的 hex 文件拷贝到单片机中,设计电路如下图所示: 图 串口电路 本章小结 根据毕业设计的设计要求完成了以上所述的各个硬件部分的设计。 系统硬件设计共分为 8个部分:指示电路设计的作用是指示电源与密码输入状态的指示作用; 5V电源电路设计的作用是为系统提供稳定的电压;晶振电路设计的作用是为单片机的运行提供内部的时钟脉冲;复位电路设计的作用是防止程序跑飞回复运行的作用;液晶显示电路设计的作用是提示与指示操作的作用;报警电路设计的作用是当密码输入错误三次以上能够报警;键盘电路设计的作用是向系统输入数据 和进入各种功能状态;串口电路设计的作用是将 hex 文件拷贝到单片机内部 rom。 R1 IN13R2 IN8T1 IN11T2 IN10V+2V6R1 OUT12R2 OUT9T1 OUT14T2 OUT7C1+1C1 3C2+4C2 5U6MAX232C6104C5104C4104RXDTXDLCDRSLCDRWVCC162738495J3DB9RXDTXDC3104河北工业大学城市学院 20xx 届本科毕业论文 17 4 系统 软件设计 本系统软件主要包括 10 个 软件 程序模块:主程序、键盘扫描程序、输入密码程序、修改密码、时间显示程序、时间调整程序、报警程序、对 EEPROM 操作程序、还原出厂设置程序、密码校验函数 等函数模块的设计。 主程序设计 流程 主程序流程图 如下图所示 : 图 系统主程序流程图 N Y N Y N Y N Y N Y 是否一键还原。 调用密码还原函数 是否输入密码。 调用输入密码函数 是否输错到 3 次。 调用报警函数 初始化 显示时钟 是否设置时钟。 调用设置时钟函数 调用修改密码函数下。 是否修改密码。 开始 河北工业大学城市学院 20xx 届本科毕业论文 18 系统上电后,系统将 对硬件中的寄存器进行 初始化 设置 ,初始化 的寄存器主要是 初始化 单片机的内部 定时器 用哪个定时器就要使能该定时器然后设置它的定时 初值; 初始化液晶, 主要是初始化 lcd 的显示方式等; 初始化 单片机的 IO 端口等。 当初始化完成后系统进入了 显示当前时间的 等待状态, 在显示 时间的同时系统在主函数中也不断的调用以 下几个功能函数 :输入密码 子 函数,修改时间 子函数 ,报警 子 函数,一键还原 子 函数 等。 当系统检测到有功能键按下的时候,系统就调用相应的子函数去执行 , 来实现 相应子程序的预设 功能。 下面对主要的函数模块的流程简要的说明。 键盘扫描设计流程 键。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。