- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录
一、目 的…………………………………………………………2
二、描述和要求……………………………………………………2
三、硬件选择………………………………………………………2
四、硬件电路图……………………………………………………5
五、程序设计………………………………………………………5
六、总 结…………………………………………………………7
七、参考书目………………………………………………………8
附录:程序代码……………………………………………………9
一、目的
随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。而创自古以来就是把守门户的铁将军,人们对它要求甚高。即要安全可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。传统的门既要备有大量的钥匙。又要担心钥匙丢失后的麻烦。另外,如:宾馆、办公大楼、仓库、保险柜等由于人员的变动,开锁的钥匙也不再是只有一人拥有。购得新居的家庭。由于装修施工等人住时也要把原有的锁胆更换,况且钥匙随身携带也诸多不便。
随着单片机的问世,出现了带微处理器的电子密码锁,它的出现解决了传统锁的许多缺点,使密码锁具有很高的安全性、可靠性。目前已经大量地应用于日常生活之中。希望通过本课设完成具有一定实用性的电子密码锁,从而培养对单片机学习的兴趣,巩固PIC单片机的知识内容,提高实践动手能力。
二、描述和要求
1、密码正确则电机转动。
2、密码错误则需重新输入,若连续三次输入错误则报警声响起,键盘被锁。
3、按错键时可按“删除”键删除输入键值。
4、按下一个键时响一声,说明按键按下。
三、硬件选择
1、单片机PIC16F887
本系统设计的核心控制芯片为PIC16F887。它是一款采用纳瓦技术的40引脚8位CMOS增强型闪存单片机。
PIC16F887具有8K字程序存储器,368字节用户可用数据存储器和256字节EEPROM。具有36个I/0口,14个A/D通道,1个CCP,1个增强型CCP,1个增强型通用同步/异步收发器,1个主控同步串行端口,2个比较器,2个8位计数器/定时器,1个16位计数器/定时器。
PIC16F887引脚图如下:
本系统用到的引脚主要有:
引脚1:RE3/MCLR/Vpp,系统复位端。接操作按键K1。
引脚11、32:Vdd,系统电源端。
引脚12、31:Vss,系统接地端。
引脚13、14:RA7/OSC1/CLKIN、RA6/OSC2/CLKOUT,接4MHz的晶振,为系统的时钟源。
引脚33:RB0/AN12/INT,为外部中断输入端。接操作按键K2。
引脚34:RB1/AN10/C12IN3,设为输入口,接操作按键K3。
引脚35:RB2/AN8,设为输入口,接操作按键K4。
引脚19~23:RD0~RD3,设为输出口,接LCD1602的数据输入端高四位。
引脚27:RD4,设为输出口,接LCD1602的RS数据/命令选择端。
引脚28:RD5/P1B,设为输出口,接LCD1602的RW读写选择端。
引脚29:RD6/P1C,设为输出口,接LCD1602的E使能端。
引脚16:RC1/T1OSI/CCP2,设为输出口,接微型直流电机。
引脚17:RC2/P1A/CCP1,设为输出口,接蜂鸣器。
点阵型LCD YB1602A
采用4位数据线接线方式,是为节省单片机的I/O口
用到的引脚有:
引脚1:GND,接地
引脚2;VCCB,电源正极
引脚3:VO,液晶显示偏压信号口
引脚4:RS,命令/数据选择,接单片机RD4口
引脚5:R/W,读/写选择,接单片机RD5口
引脚6:E,数据使能,接单片机RD6口
引脚11~14:DB4~DB7,数据输入口,接单片机RD0~RD3口
3、 4x4按键
4行(RB0~RB3)作为输入状态,低4位有弱上拉使能并允许电平变化中断
4列(RB4~RB7)作为输入状态,输出低电平
4、 微型直流电机(5V供电)
5、 蜂鸣器
四、硬件电路图
五、程序设计
1.模块介绍
该电子密码锁系统的软件设计分为以下几个模块:
(1)主程序模块
主程序主要完成初始化、设置中断向量、检查有无按键按下、以及调用显示等等。主程序的流程图如下所示。
(2)键盘扫描及识别子程序
键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。
(3)显示子程序
由于是分屏显示数据,所以就要用到4个显示子程序,分别是:
LCD初始化设定 void lcdcsh(void);
写入指令数据到LCD void xie_ml(unsigned char ml);
写入字符显示数据到LC
文档评论(0)