网站大量收购独家精品文档,联系QQ:2885784924

PIC单片机原理及应用课程设计报告-电子密码锁.doc

PIC单片机原理及应用课程设计报告-电子密码锁.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PIC单片机原理及应用课程设计报告-电子密码锁

PIC单片机原理及应用课程设计报告 ———电子密码锁 专业:电子信息工程 姓名:哈哈哈 班级: (1) 学号: 2010.12.29 【摘要】:随着生活水平的提高,人们也越来越重视个人的隐私及财产安全,要设计主要基于PIC单片机系统、键盘、LCD。本系统可完成开锁、修改密码、掉电后密码受保护以及三次输入密码错误报警功能。 【关键词】:电子密码锁、键盘、LCD。 【目录】: 第一章:主要元器件介绍 第一节:PIC介绍 ·································1 第二节:LCD1602介绍·····························2 第二节:矩阵键盘介绍······························7 第二章:电子密码锁的设计 第一节:密码锁原理图及工作原理····················8 第二节:密码锁程序································9 第三章:设计心得及参考文献··························17 主要元器件介绍 PIC单片机 单片机是一块芯片上集成了中央处理器单元、数据存储器、程序存储器、输入/输出和定时器/计数器等部件的一台小型计算机。随着芯片集成度的提高,单片机的功能得以迅速的扩充,特别是PIC单片机,增加了许多强大的外围模块,从而给用户带来了极大的便利。 PIC单片机有如下特点:1、哈佛总线结构;2、RISC技术;3、指令特色;4、功耗低;5、驱动能力强;6、同步串行数据传送方式;7、应用界面友好、开发方便;8、程序存储器版本齐全。 1-1 PIC16F877A框图 1-2引脚示意图: 1-3 特殊功能寄存器 第二节、LCD1602 矩阵键盘 1.矩阵式键盘的结构与工作原理   在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。 矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,上图中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了 第二章、电子密码锁的设计 第一节、原理图及工作原理 一、原理图 二、原理框图 三、设计原理 用户根据屏幕提示操作,单片机通过键盘扫描,检测输入密码是否正确,如果正确则进入系统,进行下一步操作。进入系统后,刚继续检测用户输入的功能号,根据功能号判断下一步要执行的程序,否则一直在功能界面等待用户指令。其中在功能界面中,按下A则为退出功能界面,下次要再进入则须再输入正确密码,按下B则可重设密码,在这里须两次输入相同新密码后才可设定成功,设定成功后退至功能界面,继续等待用戶指令。 电子密码所程序 程序流程图 是 程序 #includepic.h #includestdio.h #includestring.h __CONFIG(0X3B31); #define uint unsigned int #define uchar unsigned char char inword[6]; char passwd[6]; char newword[6]; void delay(uint t); void init(); void sound200ms(unsigned char fre_repeat,unsigned char s_max,unsigned char s_min); void sounddelay(unsigned char delay_count); /*********************************

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档