欢迎访问博鱼(中国)官方网站-BOYU SPORTS!

预约上门| 联系博鱼(中国)

全国24服务热线

400-123-4567
行业新闻 公司新闻
电子密码锁的设计毕业论文
时间:2023-11-26 11:07:49        点击量:【 】次

  电子密码锁的设计毕业论文毕业论文 (设计) 题 目 电子密码锁的设计 二○ 一二年五月二十一日 目 录 引言 1 本课题的目的和研究意义 1 本课题的研究现状 1 本课题的研究内容 3 方案对比与论证 3 系统选择方案 3 主控芯片的选择 4 显示电路的选择 4 输入键盘按键的选择 4 系统硬件设计 5 系统总体框图 5 各模块电路简介 5 主控器件单片机模块 5 下载器下载模块 8 I2C 总线 矩阵键盘输入模块 16 模拟开锁模块 17 完整电路图 17 PCB 图 19 软件系统设计 20 系统整体流程图 20 子程序流程图 21 4.2.1 LCD1602 流 程图 21 4.2.2 AT24C02 流 程图 21 结束语 23 声 明 本人郑重声明: 1、 持以“求实、创新”的科学精神从事研究工作。 2、 本论文是我个人在导师指导下进行的研究工作和取得的研究成果。 3、 本论文中除引文外,所有实验、数据和有关材料均是线、 本论文中除引文和致谢的内容外, 没有抄袭其他人或其他机构已经发表或撰写过的研究成果。 5、 其他同志对本研究所做的贡献均已在论文中作了声明并表示了谢意。 作者签名: 日 期: PAGE PAGE 10 电子密码锁的设计 童好娉 南京信息工程大学电子与信息工程学院,南京, 210044 摘要: 本文的目的是设计一个电子密码锁,实现所需要的基本功能。电子密码锁主要由模块、液晶显示模块、矩阵键 盘输入模块、密码存储模块等模块组成。其中采用 STC89C52 单片机作为主控器件,利用 I 2C 总线 密码存储器件来进行密码的读取与更改,输入设备采用 4*4 矩阵键盘。通过输入密码,单片机进行处理后,将结果通过 LCD 显 示器显示。系统还具有报警功能,当输入密码与设定密码不符时,蜂鸣器发声。本论文设计了一种电子密码锁,表述了设计的 思路过程以及结果。 关键词: 电子密码锁;单片机;液晶显示;矩阵键盘; 引言 本课题的目的和研究意义 在人类发展进步的历史长河之中, 锁具逐渐被广泛应用, 且其重要性越来越大。 但是随着科技的发展, 技术的进步,传统机械式钥匙开锁类型的锁具虽然仍是锁具的主流,但是其安全性在不断的降低。除了随 身携带钥匙的不便利性,还存在着钥匙丢失,钥匙被复制等安全隐患。但是各种集成电路技术相继出现, 特别是各种可编程器件的问世及普及,渐渐人们开始使用一种既高效又便宜的方法来加强安全防盗性能: 电子密码锁。 这种电子密码锁越来越被人们接受与喜爱, 究其原因在于它的安全性高, 使用方便, 体积小, 使用功耗低,容易操作。 刚刚开始使用集成电路做成的电子锁的组成模块比较多:数控的集成电路、传统的机械锁部分、加密 装置、报警装置、必要的网络接口电路及电子识别磁条等,造成电子密码锁体积比较大。本系统设计的主 控芯片将采用 STC89C52 型单片机。与传统的电子密码锁相比,电子锁无论在体积、安全性、方便性上都有很大的提高。 一般日常使用的机械锁存在几个缺点:容易被非法打开而不易看出打开痕迹;复杂多变的内部结构, 特别是开锁部分使用的器材容易受到环境的影响;一旦钥匙丢失或被盗,只能更换锁具,造成麻烦;对于价格低廉的锁,会出现一把钥匙可以打开几把锁的情况;对于老人或小孩来说,一旦锁具内部结构出现问题,需要很大的力气才能打开;容易被损坏,造成无法开锁。从这些情况可以看出,需要迫切改善原有的防盗方式。 本课题的研究现状 17 世纪末,凸轮转片锁由英国人 D. 波特发明,这项发明把安全性能带上了一个新的台阶。而钥匙的 编号数量从 20 多种发展到 80 多种。 19 世纪中期,滑动转片锁成功问世博鱼(中国)官方网站-BOYU SPORTS,这是由欧洲制造商改制完成的, 是在凸轮转片锁和三簧锁的基础上对这两种锁具进行整合,使其钥匙编号达到 1600 种 。 1848 年,弹子锁问世,它含有圆柱形销栓,由美国人 L.耶尔发明。在传统锁具里,这种锁具就已经能够满足一般的防盗使用,而广受欢迎。经过时代的发展,现代弹子锁的结构又出现了新的突破,相继出 现双向、三向、乃至于四向弹子结构,同时面向的发展产生的平面、双面、多面、双排双面、多排多面弹 子结构, 这些结构和组合弹子相结合, 又有了新的突破。 正因为这些突破, 锁具的安全性被大大的提高了, 通过“向” 、“面”的变化,使锁的编号由原有的 2500 种达到百万种。 1970 年前后,微电子技术逐渐发展成熟,出现了磁控锁、声控锁、锁、红外线锁、电磁波锁、电子卡片锁、指纹锁、眼球锁、遥控锁等不同的锁具。高保密性能是这些锁的最大特点,它们具有的机械 结构是其他锁具所不能相比较的。这些锁具通过编程实现各自的功能,完成安全防盗的目的。现代锁的分 类很多,通常可以通过制作材料、用途、是否有钥匙、安全性能的高低和结构的复杂程度来进行分类。 电子密码锁的种类正在逐渐的丰富, 但主要有遥控式、 键盘式、 卡式以及生物特征的防子密码锁。具有生物特征的防盗锁是以后发展的主要趋势,特别是对于安全性高的场合其应用会更加广泛与复 杂。生物特征的防盗锁主要是采用与生俱来,独一无二且不可复制的指纹、眼膜、声频等信息作为解锁工具。由于这种密码锁的解锁方式是随身携带的,而且不存在遗忘或丢失的特点,所以它的安全性与便利性很高。此外,为了加强防盗的力度,还可以结合其他信息,比如数字,字符,时间等。把这些因素加 入其中, 就更加可以保障安全。 虽然生物特征的防盗锁在发展初期的性能不够稳定以及价格高等不利因素, 但技术的日新月异使得这个过程比较短暂,目前具有生物特征的防盗锁是以后防盗的大势所趋。 键盘式的密码锁由于其使用的便利性和价格而被广泛使用。 它主要被人们用于家庭的一般防盗,小区 等的门禁系统, 以及一般规格的保险箱。 这种密码锁的突出优点在于使用方便, 易于掌握。 但也存在缺点: 由于设计的局限以及价格的考量,在密码的可选择性上不高;而密码过于复杂也会使自己记不清楚,从而 影响正常的使用。 为改善缺点, 目前键盘式密码锁发展出了几种新的防盗方式, 例如: 任意设定密码功能, 使每一次的输入密码都不相同,但又仅限于使用者自己知道;自动更改密码技术,使得密码的更改时间以 及有效数字仅限于用户,更改规律不易被人察觉;多重密码输入技术,使得用户可以通过几个不同的密码 来降低隐患,提高安全性 总体来说键盘式的密码锁在市场上处于主流地位,而且可以被用作辅助方法应用于其他防盗产品中。 卡式电子密码锁是目前市场上最为活跃的一款防盗产品,多用于门禁系统。 它主要使用不易被复制的卡片,在卡片上射置磁条信息,以达到防盗的目的。还可以在卡片上增加个人信息的输入等以保障安全性 能。但是,一旦卡片丢失,就容易出现安全隐患,需要及时对卡片取消授权。另外,在门禁系统中,开门后门还有一段时间才能闭合,这在客观上造成犯罪分子的可乘之机。 遥控式电子密码锁利用光来传输信息,传输的信息量大,速度快,而且不容易被发现或复制信息,从而保密性高。但是,这种开锁方式往往需要遥控器,这就要求用户能够妥善保管遥控器,而且需要对遥控器的大小形状等进行改进以便于携带。另需要随时保持遥控器中的电池有电,这样才能够不影响使用。 随着各种综合技术的发展,产品的更新周期也在逐渐的缩短,新技术在不断的产生,这些都使得电子密码锁越来越智能化,发展的方向也逐渐多样化。但是同类型产品之间的差异也越来越小,创新,新材料的问世和技术的创新发展成为电子密码锁是否能够继续发展的重要条件。 本论文的目的是设计一种性价比比较高的电子密码锁来达到防盗报警的功能。 本课题的研究内容 本次系统设计主要是在经济的前提下设计一种电子密码锁,这种电子密码锁需要能够适用于日常生活 的基本防盗功能。本次设计采用 STC89C52 型单片机为主控器件: 1、通过矩阵键盘输入密码; 2、采用LCD1602 进行显示; 3、通过继电器打开锁具; 4、能够更改密码; 5、具有报警功能。在使用时,输入的 密码与原始设定的初始密码对比,如果密码相同,则电路通过三极管导通,继电器模拟锁具打开,同时点 亮绿灯; 如果两者不同, 经过报警提醒后, 如果在三次以内仍没有输入正确, 则报警, 同时要求锁定键盘。数字的显示输出通过液晶显示器 LCD1602 ,选择有 16 个引脚的背光显示器,这样在夜晚也不影响正常的 使用。在更改密码时,首先要求出入正确的原始密码,密码输入正确后才能更改,而且要连续输入两次相 同的密码;如果原始密码输入错误,则不能修改。 方案对比与论证 系统选择方案 方案一:采用数字电路控制 采用数字电路的设计一般来说有两种可行的方案。一种是利用 74LS138 译码器通过与门电路的结合, 设计一种简单易行的密码锁。 但这种方法只有单一的密码, 在不改变电路的情况下, 不能更改密码。 此外, 对于采用 74LS138 译码器设计的密码锁,对于密码的输入顺序也没有要求。基于这两种情况可知,采用 74LS138 译码器设计的密码锁安全性能不高,不能满足日常生活的需要。另一种是采用 74LS112 双 JK 型触发器作为主控器件的电子密码锁, 这种电子密码锁虽然突破了 74LS138 译码器的局限性, 但是它的控制的灵活性和准确性不高,所以不予采用。 方案二:采用主控芯片为单片机的电子密码锁 随着微型计算机的发展,单片机以其体积小,效率高,易编程,功耗小等特点在人们日常生活中的用途越来越广泛。由于单片机的可编程性,通过对它进行特定内容的编程就可以符合特定的要求。它的主要部分可以包括按键输入,显示输出,报警装置,写程序等部分。在单片机外围设计键盘输入以及其他的功 能, 通过后期的调试编码进一步完成相关的任务要求。 输出模块是 LCD1602 ,用这种液晶显示器来显示各种文字和数字。当用户需要输入密码时,首先需要按下键盘上的输入键,然后输入相应的密码,最后按确 认键。在这个过程中,如果密码输入正确,则显示开锁;反之,提示密码错误,要求重新输入。密码输入 次均错误时,则键盘锁定,系统报警。当用户需要修改密码时,必须先输入正确的原始密码,提示后再连续两次输入相同的新密码。这两次输入如果不相同,则系统提示密码输入错误,请重新修改。 从上述描述中可以看出,采用单片机为主控芯片的电子密码锁不仅性价比高,而且可以进行功能的扩展,所以采取方案二。 主控芯片的选择 单片机种类繁多,一般来说,众多单片机的基本功能是一样的博鱼官网,除了各自的工作的最佳环境有所不同 之外,另一个要考虑的因素就在于 I/O 口的多少,以及内存空间的大小。 I/O 口的数量问题直接关系到能够实现的功能的多少,内存空间的大小则影响单片机的运算处理速度。在本次设计中,这些影响因素都不 大,但如果采用 ISP 下载器,最好使用 51 系列的单片机;若采用 DB9 串行下载程序, STC 系列则是较好的选择。在电子密码锁中,要求能够更改和保存密码博鱼官网,这就要求电路中有密码存储设备,以进行密码的读 取和存储。由单片机构成的电子密码锁具有很好的灵活性,在系统需要更改功能或添加其他功能,对原有系统进行扩展时,能够在不改变或改变很小的原有设计和电路系统的情况下完成任务。 虽然两者的差距不是很大,但是通过以前的学习我能够灵活使用 ISP 下载口写入程序,但是对 DB9 却知之甚少,所以采用 STC89C52 单片机来进行本次系统设计。 显示电路的选择 方案一:采用 LCD1602 液晶显示器 LCD1602 液晶显示器通常用来显示字母,数字和符号等非图形的信息, 1602 代表着 16*2 ,每一行最多可以显示 16 个字符,一个屏幕全部使用时,可以有两行。有 16 脚与 14 脚两种规格,其中 16 脚的液晶 显示器有背光的功能,即在黑暗条件下也可以使用,能够看清屏幕显示的字符,而 14 脚的液晶显示器则无此功能。在使用 LCD1602 时,只需要将 16 个脚分别进行连接即可,连接方式简单方便。此外,使用LCD1602 最大的便利在于它不需要特别编程显示字符, 它本身自带显示代码,为使用过程中,各种字符的 显示提供了便利,价格也不昂贵。 方案二:采用数码管显示 使用数码管来显示数字同时存在着利与弊。其优点是:数码管相对于 LCD1602 来说,价格更为便宜, 可以降低制作成本。但是,数码管的连接电路比较复杂,显示的字符需要特别编程,而且几乎只能显示数 字。此外,一旦数码管出现余辉干扰,就比较难以消除。在本次系统设计时,如若采用数码管显示,则需要超过 6 个以上的数码管,从电路的简洁与美观上来说都没有液晶显示器好。 通过以上的分析,在制作时,采用 LCD1602 显示器作为显示电路部分的主控。 输入键盘按键的选择 方案一:采用独立的按键 采用独立的按键设计输入,在成本上比较节约。但是它不占用单片机的中断,需要在编程时编写按键 扫描程序,对按键进行重复的扫描。这种方法在使用时占用过多的 I/O 口资源,大大增加了编程量,没有充分利用单片机的中断资源,在操作上比较繁琐。 方案二:采用 4*4 矩阵键盘 采用 4*4 矩阵键盘作为输入按键,能够充分调动使用单片机的中断资源。在 4*4 矩阵键盘反应灵敏, 响应时间短的基础上,这种输入方式在连接电路时更为简单,编程时也比较方便。虽然可以使用独立按键 先做出一个采用 4*4 矩阵键盘,但这种方法,虽然节约了成本,但是在制作的过程中,还是不可避免的增加了编程量。 综合以上的情况,直接采用采用 4*4 矩阵键盘来进行制作更为方便。 系统硬件设计 系统总体框图 从上诉方案的对比中可以看出,使用单片机为主控系统的电子密码锁具有更好的性能。系统主要有主 控模块,信息显示模块,按键输入模块,报警和电源模块等组成。把编译好的程序通过 DB9 与 MAX232 载入单片机中,通过按键的操作即可实现系统的功能。复位电路和时钟电路构成了单片机的最小系统,单 下载器模块报警模块密码存储模块开锁模块液晶显示模块主 MCU(STC89C52单片机)矩阵键盘输入模块复位电路时钟电路电源部分片机的 P0 口与 LCD 的数据线相连接, 下载器模块 报警模块 密码存储模 块 开锁模块 液晶显示模 块 主 MCU (STC89C52单 片机) 矩阵键盘输 入模块 复位电路 时钟电路 电源部分 图 3.1 系统总体框图 各模块电路简介 主控器件单片机模块 STC89C52 微型处理器使用时消耗的能量少,但是在单位时间内能够处理更多的任务。它是一个 8 位单片机,在系统可编程,同时提供 8k 大小的空间。由于它是单芯片系统,同时具有 8 位 CPU 和在系统可编程 Flash,这些优点使得它为各种控制应用系统的开发、发展提供了更加广阔的前景,也使得这些方案 能够更加的精确有效。 STC89C52 具有很多扩展功能,但其具有的标准配置有: Flash 内 存有 8K 字节,看门狗定时器, 512 字节的 RAM ,一个 6 向量 2 级中断结构, 32 位 I/O 口,全双工串行口,内置 4KB E 2PROM ,三个 16 位定时器 /计数器, MAX810 复位电路。 另外 STC89C52 可以降低到 0Hz 静态逻辑操作状态, 并且支持 2 种软件可选择节电模式。在空闲模式下,虽然单片机的 CPU 将停止工作,但是 RAM 、定时器 /计数器、串口、中断可以继续工作。一旦掉电,在其方式保护下, RAM 中的内容将被保存,不丢失,同时单片机的一切 运转都将停止, 直到硬件复位或者新中断的执行。 单片机的最高运行频率为 35MHz ,有 6T/12T 两种选择博鱼体育。 STC89C52 主要还具有以下的性能: 51 系列与它的兼容性高,在一般情况下,能够相互代替使用;擦写周期超过 1000 次,重复使用的效率高;提供全双工 UART 串行通道的使用,加快运行速度;具有六个中断源,为增加扩展功能提供了可能;即使在掉电后中断仍可唤醒,使程序在整体运行上能够流畅;其存 储器有加密程序,保证了使用的安全性;掉电标识符;双数据指针。 STC89C52 实物及引脚如图 3.2 所示。 引脚介绍: 图 3.2 STC89C52 实物及引脚图 单片机的第 40 个引脚接电源正极,这在使用过程中可以给单片机供电。同时还要求第 20 引脚接地, 这样与第 40 引脚一起,把单片机成功上电。第 31 引脚是外部访问允许端口,在本次系统设计中,把该引 脚接电源正极,这样可以在操作过程中,读取内部存储器的指令,使得系统能够执行。第 9 脚是复位端, 该引脚通过外部电路,在适当的时候通过手动完成复位的操作。为使该操作能够顺利实现,必须使其保持 一定时间的高电平,一般至少需要两个机器周期。该操作在第二个机器周期内通过 CPU 完成,并且在以 后的每一个机器周期都需要重复一次,直至该引脚端电平变低。 18 脚与 19 脚构成一个反相放大器,通过 添加外部电路的方式,使单片机在一定的频率震荡。 19 脚是输入脚, 18 脚是输出脚,只要在其两端添加如下图的电路后,单片机上电后,即可产生自激振荡。同时复位开关不仅使得系统的操作重新开始,而且 可以使得单片机与外围电路的震荡频率保持一致,使得单片机工作效率更高。 P0 口是一个 8 位双向 I/O 口,在电路中与液晶显示器的数据口 D0~ D7 相连接。由于 P0 口内部没有 上拉电阻,为了保证能够正常工作,需要在外部添加上拉电阻。在正常工作时,液晶显示器初始化,然后 向单片机发送信号。单片机根据信号的内容,执行相应的操作,使得其显示各种字符和数字。 P1 口与 P0 口的功能基本相似,且其内部具有上拉电阻。在系统设计中, P1 口与矩阵键盘相连接,接收来自单片机的扫描信号。单片机扫描到被按下的按键后,通过液晶显示器执行相应的操作:显示一连串的字符,显示密 码;或是通过单片机完成键盘解锁等功能。 P2.0 脚与发光二级管和电源相连,当输入密码错误时,单片机 发出低电平信号,电路接通。 P2.1 脚与蜂鸣器相连接,通过接受信号,决定是否导通电路。 P2.2 脚与系统的开锁电路相连接,同样是受到引脚的控制来决定开关。 P2.5 引脚与液晶显示器的 RS(第 4 脚)相连接, P2.6 与 R/W (第 5 脚)相连接,在工作时,单片机通过程序的要求对其进行置位。 P2.7 控制液晶显示器的使能端口,控制整个显示器的工作。第 14 脚与 AT24C02 的 5 脚相连接,使用的是该引脚的第二功能,即 定时器功能。通过这个功能来控制密码存储芯片的 I 2C 总线 脚相连, 使用该引脚数据双向传输的功能。 P3.0, P3.1 与 MAX232 的 9 脚, 10 脚相连,使用单片机的串行输入, 输出的功能。主要是写入程序。 一般使用 P 口的双向数据传输功能,但在一些情况下,可以使用其第二功能。一些重要的第二功能引脚见表 3.1, 3.2。 表 3.1 P1 口第二功能列表 端口引脚 端口引脚 功能 P1.0 P1.1 P1.5 P1.6 P1.7 T2 (定时器 /计数器 T2 的外部计数输入) ,时钟输出 T2EX(定时器 /计数器 T2 的捕捉 /重载触发信号和方向控制) MOSI (在线编程) MISO (在线编程) SCK (在线 口第二功能列表 端口引脚 功能 P3.0 RXD( 串行输入口 ) P3.1 P3.2 P3.3 P3.4 TXD( 串行输出口 ) INT0 (外中断 0) INT1 (外中断 1) T0( 定时 /计数器 0) P3.5 P3.6 T1( 定时 /计数器 1) WR (外部数据存储器写选通 ) P3.7 RD (外部数据存储器读选通 ) 单片机最小系统如图 3.3 所示。 U 1 12 1 2 3 C 1 4 X TA L2 5 6 12 MHZ 7 C 2 Y 1 8 X TA L1 R ST 9 R XD 10 TX D 11 C 3 12 (T2E X)P1 .1 P1 .2 P1 .3 P1 .4  V CC V CC 40 P0 .0 (A D 0) 39 P0 .1 (A D 1) 38 P0 .2 (A D 2) 37 P0 .3 (A D 3) 36 35 V CC  + R ST (MOS I)P1 .5 (MIS O)P1 .6 (SC K)P1 .7 R ST (RX D )P 3. 0 (TX D)P3 .1 (IN T0 )P 3. 2 13 (IN T1 )P 3. 3 P0 .4 (A D 4) P0 .5 (A D 5) P0 .6 (A D 6) P0 .7 (A D 7) EA /VP P A LE/PR O G PS EN P2 .7 (A 15 ) 34 33 32 31 30 V CC 29 28 SD A 14 S1 SC L 15 16 17 (T0)P3 .4 (T1)P3 .5 (W R )P 3. 6 P2 .6 (A 14 ) 27 26 P2 .5 (A 13 ) P2 .4 (A 12 ) 25 24 R 1 X TA L218 (RD )P3. 7 X TA L2 P2 .3 (A 11 ) 23 P2 .2 (A 10 ) 10 K X TA L1 9 20 X TA L1 G ND 22 P2 .1 (A 9) 21 P2 .0 (A 8) ST C8 9C 52 图 3.3 单片机最小系统图 单片机的最小系统包括晶振部分,复位部分以及其他引脚的接地与接电源的部分。时钟电路: 振荡电路是由单片机内部的一个反相放大器构成的, 振荡电路的输入端是 XTAL1 ,输出端是 XTAL2 , 通过与外围电路的连接可以产生自激振荡。时钟可以由内部方式产生。把石英晶体和电容并联组成的谐振 回路通常是定时元件的接法。由于条件的限制,晶体振荡的频率可以在 0— 33MHz 之间选择,电容值可以在 15-30pF 之间选择,频率微调作用由电容充当。本次设计采用的是 12MHz 的晶振和 30pF 的电容。 复位电路: 在 9 脚输入端出现高电平时实现复位和初始化。单片机接通电源后,时钟电路正常工作,此时,为实 现复位操作,必须使 RESET (第 9 脚)保持两个机器周期( 24 个振荡周期)以上的高电平。复位操作在 第二个机器周期内通过 CPU 完成博鱼体育app官网入口,并且在以后的每一个机器周期都需要重复一次,直至 RESET(第 9 脚) 端电平变低。本系统设计的复位操作是手动的,这一操作通过轻触开关来实现。 下载器下载模块 系统采用 MAX232 和 DB9 的下载方式,这种方法利用串口进行下载。 MAX232 芯片是美信( MAXIM )公司使用 RS-232 标准串口设计的单电源电平转换芯片,在使用时接 +5V 电源。 MAX232 的主要特点: 与 RS-232C 技术标准完全符合; RS-232C 驱动器被集成在器件的内部; 供电电源只需要 +5V ;集成度很高,在器件外部连接 4 个电容就可以有效地工作;片载电荷泵的反转能力能够产 生+10V 和-10V 电压,这是通过改变升压、电压极性得到的;耗能低,一般供给的工作电流为 5mA 。 MAX232 实物图及引脚图如图 3.4 所示。与 DB9 的连接介绍: 第一部分是电荷泵电路,由 1~6, 6 个引脚和 4 只电容构成。它的功能是产生电源,来保证 RS-232 串 口电平的需要能够得到满足。 第二部分是数据转换通道, 由 7~14 脚分别构成两个数据通道。 第一数据通道由 T1IN(第 11 脚)、R1OUT (第 12 脚)、 R1IN (第 13 脚)、T1OUT (第 14 脚)组成。第二数据通道由 T2OUT (第 7 脚)、R2IN (第 8 脚)、R2OUT (第 9 脚)、T2IN (第 10 脚)组成。 TTL/CMOS 数据从 T1IN (第 11 脚)、T2IN (第 10 脚) 输入转换成 RS-232 数据后从 T1OUT (第 14 脚)、T2OUT (第 7 脚)送到电脑的 DB9 插头; DB9 插头的 RS-232 数据从 R1IN (第 13 脚)、R2IN (第 8 脚)输入转换成 TTL/CMOS 数据后从 R1OUT (第 12 脚)、 R2OUT (第 9 脚)输出。 第三部分是供电,第 15 脚 GND 接地、 16 脚 VCC 接+5V 电源。 在与 DB9 的连接过程中,虽然 DB9 共有 9 个引脚,但实际上只要使用接收,发送信号引脚以及接地这 3 个引脚就可以正常使用了。 由于大多数 PC 机已经去掉了 RS-232 的接口,使得 DB9 的使用在逐渐的减少。但是 MAX232 是一种价格便宜而且能够满足多种应用需求的芯片。即使是在资源非常有限的微控制处理器中也是可以很容易实 现的,而且 RS-232 的接口特性使它成为一个可以胜任恶劣环境工作的点对点通信解决方案,这样的需求在许多工业控制或测量的实现中是非常典型的。本系统采用这种方式,主要考虑到对这种方式的不熟悉, 虽然它的使用在逐渐的减少,但是学校的资源可以保证它能够正常的工作。 MAX232 和 DB9 的连接方式如图 3.5 所示。 图 图 3.4 MAX232 的实物图以及引脚图 V CC J1 1 6 C 8 + 2 7 3 8 4 9 5 C 9 1.0u + J? V CC + 1.0u C 7 1 2 3 4 C 6 + 1.0u + 1.0u5 6 7 8 c1+ vs+ c1- c2+ c2- vs- t2ou t p2 in 1.0u V CC G ND t1ou t r1in r1ou t t1in t2in r2ou t 16 15 14 13 12 11 10 TX D 9 R XD D B9 MA X2 32 图 3.5 DB9 与 MAX232 模块连接图 I2C 总线结构的密码存储模块 密码存储模块采用 AT24C02 。AT24C02 是一个 E2PROM 芯片,它具有 2K 内存,串行工作。它的内部含有 256 个 8 位字节的部件,先进 CMOS 技术减少了器件消耗的功率。它内置一个 16 字节的写缓冲器。这个器件通过 I2C 总线接口进行操作,有一个专门的写保护功能。其引脚如图 3.6 所示。 图 3.6 AT24C02 的引脚封装排列图 ( 1)AT24C02 的特性:工作电压在 2.7V~7V ;内设防误擦除写保护,增加了使用的安全性;具有高可靠性:擦写周期达到 100 万次,数据保存超过百年;数据线上有看门狗定时器,能够更好地进行串口操 作;最高传送速率可达 400KHz ;页写缓冲区包含 16 个字节, 足够满足使用要求; 高低电平复位信号输出。它的复位门栏电平是可以编程的,这就为使用提供了更多的便利性;可以双向传输数据;输入、输出引脚 也可以直接使用 +5V 电压供电。 ( 2)AT24C02 的极限额定参数见表 3.3 所示: 表 3.3 AT24C02 的极限额定参数 工作温度 -55℃ ~+125 ℃ 存储温度 -65℃ ~+150 ℃ 引脚的对地电压 -1.0V~+7.0V 可以承受的最高工作电压 6.25V 直流输出电压 50mA ( 3)AT24C02 的各个引脚介绍: A0 、A1 、A2(器件地址输入端) :使用器件级联时,需要对各个器件设置引脚,这时就需要通过这些 引脚来设置。当这些引脚悬空时默认值为“ 0”。AT24C02 最多可以级联 8 个器件。在使用时,如果某一次只需要寻址单个的芯片,这三个地址输入脚可以悬空或连接到 VSS,即只能处于低电平状态。 SCL(串行时钟) :所有的时钟信号都由这个引脚产生,它是一个输入管脚,它产生的时钟信号可以控制数据的收发。 SDA (串行数据 /地址):数据信息的收发都要通过这个引脚,它是输出管脚,由漏极组成,可以连线到其他开漏输出或集电极开路输出。 WP (写保护):要保证读 /写功能能够同时使用,则必须把这个引脚保持在低电平,如果它处于高电平,芯片中的内容只可以被读出。 24C02 的连接图如下图 3.7 所示。 U 2 A 0 A 1 3 V CC 8 W P 7 6  SC L  R 9 5.1k V CC 4 A 2 SC L 5 SD A  5.1k G ND SD A 24 C0 2 R 10 图 3.7 AT24C02 的连接方式 AT24C02 采用总线结构工作,这就在很大程度上弥补了系统在运行时单片机内存容量不够用的情况, 而且为以后程序功能的扩展提供了良好的条件。 使用 I2C 总线接口的 IC 器件,其内部不仅有 I 2C 接口电路, 还有一些相对独立的模块,一般来说,以功能来划分这些模块。在使用时,通过片选功能,寻址找到相应 的模块,这样可以减少器件片选线的连接,保持电路的简洁。通过指令来完成硬件系统的扩展与控制,指令还可以把相应的硬件电路抽离或加入总线C 总线 所示。 +VCC R 上拉电阻 R SDA SCL SCL输入 DATA 输 入  SCL输入 DATA 输入 SCL输出 DATA 输出 SCL输出 DATA 输 出 图 3.8 I 2C 总线接口电路 从图中可以看出,传递时钟和数据时,需要在串行数据 I/O 端 SDA 外加上拉电阻,拉高电平。 连接在 SCL 时钟线上的所有器件通过“线与”的功能完成时钟信号,同步传送到 I 2C 总线上来传输信息。由于“线与”的功能,一旦 SCL 线上的某一器件由高电平跳变到低电平,则 SCL 将一直保持低电平状态。此时,即使时钟周期短的器件时钟再次回到高电平也不能改变其状态,这些器件将处于高电平的等 待状态。 只有所有的器件均结束低电平状态时, SCL 线才能重新回到高电平状态。然后,由高电平周期最短, 最早结束高电平的器件使得 SCL 线又再次回到低电平。 由此可见, 时钟处于低电平状态的时间由低电平状态时间最长的器件决定,而高电平状态的时间则是由高电平状态持续时间最短的器件决定。 数据的传输是在起始命令与停止命令之间的。从图 3.9 中可以看出,开始信号是在当 SCL 处于高电平时, SDA 从高电平跳变到低电平的,任何其他的命令不得在此命令之前;与开始信号相反,结束信号产生 于当 SCL 处于高电平,而 SDA 由低跳到高这一过程。开始和结束信号均由主器件产生,一旦开始信号产生总线即处于忙状态,直到结束信号产生,总线才回到空闲状态。 图 3.9 起始命令与停止命令 数据的传输每次都是从最高位开始, 从器件在接收到字节后会做出响应: 释放 SCL 线回到高电平状态, 在准备继续接收数据字节,此时主器件可以继续传递。如果从器件正在进行实时任务而不能接收数据时, 可以先使时钟 SCL 线处于低电平, 从器件使 SDA 保持高电平状态, 此时, 主器件可以产生一个结束信号, 使数据传送结束,迫使主器件处于等待状态,等待从器件的空闲。当从器件处理任务后,释放时钟 SCL 线,主器件继续传输。当主器件发送完成一个字节的数据后,都需要紧接着发送一个 ACK 信号,这时在时钟内主器件释放 SDA 线,一个字节传送结束。 液晶显示模块 通过上文的分析,本次系统的显示器件设计采用 LCD1602 液晶显示器。 LCD1602 液晶显示器也叫 1602 字符型液晶显示器,它是一种专门用来显示数字、符号、字母等的点阵型液晶显示模块,它的显示由若干个点阵字符组成。每个字符均显示在点阵字符位上。不仅每位之间有 间隔,每行之间也有间隔。这些间隔起到了字符间距和行间距的作用,正因为如此,所以 LCD1602 不能显示图形。 ( 1) LCD1602 的实物图如下图 3.10 所示: 图 3.10 LCD1602 实物图 从左到右依次的引脚为 1~16,本次设计电子密码锁采用 16 脚有背光的液晶显示器。各引脚接口说明如表 3.4 所示: ( 2) LCD1602 ( 2) LCD1602 的指令说明及时序 LCD1602 液晶显示器的一共有 11 条控制指令,其控制指令表如下表 3.5 所示: 表 3.5 LCD 控制指令表 10 写数到 CGRAM 或 DDRAM ) 1 0 要写的数据内容 11 从 CGRAM 或 DDRAM 读数 1 1 读出的数据内容 编号 符号 引脚说明 编号 符号 引脚说明 1 VSS 电源地 9 D2 数据 2 VDD 电源正极 10 D3 数据 3 VL 液晶显示偏压 11 D4 数据 4 RS 数据 /命令选择 12 D5 数据 5 R/W 读/写选择 13 D6 数据 6 E 使能信号 14 D7 数据 7 D0 数据 15 BLA 背光源正极 8 D1 数据 16 BLK 背光源负极 序 号 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清显示 0 0 0 0 0 0 0 0 0 1 2 光标返回 0 0 0 0 0 0 0 0 1 * 3 置输入模式 0 0 0 0 0 0 0 1 I/D S 4 显示开 /关控制 0 0 0 0 0 0 1 D C B 5 光标或字符移位 0 0 0 0 0 1 S/C R/L * * 6 置功能 0 0 0 0 1 DL N F * * 7 置字符发生存贮器地址 0 0 0 1 字符发生存贮器地址 8 置数据存贮器地址 0 0 1 显示数据存贮器地址 9 读忙标志或地址 0 1 BF 计数器地址 通过对指令进行编程,可以实现 1602 液晶显示器的各项操作,包括读写操作、屏幕以及光标的操作等。(说明:高电平用“ 1”表示、低电平用“ 0”表示) 指令 1:清显示(清屏) ,指令码为 0x01 。这条指令将空格代码 0x20 写入 DDRAM (显示数据 RAM ) 的全部单元内。然后将地址指针计数器 AC 清零,如果 DDRAM 移位,显示将会返回到它的初始设定的状 态。换句话说,显示的内容全部消失,光标以及闪烁位回到显示的左边界,第一行。 指令 2:光标复位(归位),指令码为 0x20 。这条指令代码同样会将地址计数器 AC 清零,如果 DDRAM 移位,将显示返回到它的初始状态。 DDRAM 的内容不变。光标或闪烁位返回显示的左边界,第一行的位置,即 DDRAM 地址 0x00 的单元位置。 指令 3:输入模式的选择,指令码 0x04~0x07 。向 DDRAM 写入或读出字符代码时使用 I/D 指令。当其为高电平时, DDRAM 的地址增一,进行增一操作后,光标或闪烁位右移一个字符;当其为低电平时, DDRAM 的地址减一,进行减一操作后,光标或闪烁位左移一个字符。同样适用于 CGRAM (字符发生器 RAM )的读写。 此时, S 的状态也会影响显示。当 S、I/D 均为高电平时,将整个显示向右滚动;当 S 为高电平, I/D 为低电平时,整个画面向左滚动。当 S 为低电平时,无论 I/D 的高低电平状态,画面都不会滚动。如果 S 处于高电平状态,看起来好像光标没有移动,而是显示滚动。从 DDRAM 读取时,显示不滚动博鱼·体育(中国)入口。在读写CGRAM 时,画面不滚动。其具体的操作码可以从下面的表格 3.6 中明显的看出: I/DS00 I/D S 0 0 指令码 0x04 输入方式 画面不动,光标左移 0 1 0x05 画面向右滚动 1 0 0x06 画面不动,光标右移 1 1 0x07 画面向左滚动 指令 4:设置显示状态,指令码为 0x08~0x0F 。其中包括控制整体的开关、光标的开关、光标的闪烁开关。 D 用来控制整体显示的开与关,用高电平表示开显示,用低电平表示关显示。关显示只是画面不 出现,而 DDRAM 的内容不变,将 D 置为“ 1”时,即立即可以显示。 C 用来控制光标的开与关,有光标时设置为高电平,无光标时则设置成低电平。 即使光标不显示,在显示数据写时, 不改变 I/D 或其他规范。B 表示控制光标是否闪烁,闪烁需将其置“ 1”,不闪烁即置“ 0”。 指令 5:光标或显示移位。这个指令执行时,不需要对 DDRAM 进行读写操作就可以使光标或画面左 移或右移。其中 S/C:高电平时移动显示的文字,低电平时移动光标; R/L :高电平时向右滚动,低电平时向左滚动。 指令 6:用以设置数据以及字符的工作状态。 DL 设置为高电平时数据总线 为,设置为低电平时为 4 位,用高 4 为即 D4~D7 显示。 N :用于设置字符的行数,当置 N 为低电平时, LCD 为单行显示,若要其双行显示,则需要将 N 置为高电平。 F:字符体的点阵数通过 F 来设置。其中若置 F 为“ 0”即低电平状态,则显示 5*7 的点阵字符,反之显示 5*10 的点阵字符。一般设置 F 为低电平,使点阵字符保持在 5*7 的状态。 指令 7:设置 CGRAM 的地址。指令 8:设置 DDRAM 的地址。 指令 9:忙标志位和光标地址。其中 BF 为忙标志位,采用高电平指示忙,在这个时候,无论是数据 流还是命令都不能被 LCD 模块正常接收处理。反之 BF 为低电平表示不忙。 由此可见,在单片机对液晶显示器进行读写操作之前,只有保证 BF 处于低电平状态,才能确保 LCD 正常工作。 指令 10:写数据。 指令 11:读数据。 LCD1602 的读写操作主要由使能信号控制,在操作时, E 发出高电平;不操作时,处于低电平状态。进行读操作时, E 处于高电平状态,将所需要的数据传送到数据总线上去,当 R/W 端口信号为高电 平时,将数据供给 MCU 读取,这个过程中,必须保证读信号的宽度比使能信号的宽度宽,才能保证读过程顺利;在进行写操作时, E 仍是处于高电平,此时的读写信号应保持低电平状态,显示器将信息传送到 数据总线上, 同样写信号的宽度要比使能信号的宽度宽,这样信号就能顺利写入 MCU 。LCD 同时根据 RS 端的状态来确定总线上的数据是指令代码还是显示数据。当 RS 处于低电平时,指令寄存器通道开通,总线传输的是标志位或指令代码;当其处于高电平时,总线通过数据寄存器通道传输显示数据。 1 0 1 0 K V CC V CC V

  原创力文档创建于2008年,本站为文档C2C交易模式,即用户上传的文档直接分享给其他用户(可下载、阅读),本站只是中间服务平台,本站所有文档下载所得的收益归上传人所有。原创力文档是网络服务平台方,若您的权利被侵害,请发链接和相关诉求至 电线) ,上传者

Copyright © 2012-2025 博鱼(中国)官方网站-BOYU SPORTS 版权所有HTML地图 XML地图         赣ICP备17014991号-1

x
现在留言,无需等待!

收到你的留言,我们将第一时间与你取得联系