基于单片机的简易密码锁.doc

基于单片机的简易密码锁.doc

ID:55690848

大小:204.00 KB

页数:20页

时间:2020-05-25

基于单片机的简易密码锁.doc_第1页
基于单片机的简易密码锁.doc_第2页
基于单片机的简易密码锁.doc_第3页
基于单片机的简易密码锁.doc_第4页
基于单片机的简易密码锁.doc_第5页
资源描述:

《基于单片机的简易密码锁.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、基于单片机的简易密码锁一、实验目的1、熟悉程序的编译、下载方法和过程;2、熟悉利用max7219驱动数码管显示;3、熟悉AT89S51单片机的相关操作;4、熟悉案件的基本功能;二、实验内容1、使用液晶显示模块LCD1602;2、使用max7219驱动数码管显示;3、使用简易密码锁及按键模块;三、实验步骤1、设计硬件电路,焊制电路板,连接相关电路;2、观察给定程序所实现的功能;3、按照设定的功能修改程序编译程序,下载并调试程序;四、实验程序#include#include#defineucharuns

2、ignedchar#defineuintunsignedintsbitBEEP=P3^4;//蜂鸣器sbitACT=P3^0;//开锁器sbitSET=P3^3;//设置密码指示灯sbitINPUT=P3^1;//输入密码指示灯sbitFLAG=P3^2;//密码错误指示灯sbitwei1=P3^5;sbitwei2=P3^6;bitok_flag;ucharpasswdnum;//密码位数ucharpasswd[10];//密码//constuchartab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0

3、xf8,0x80};//数码管显示0~8//constuchartab[]={0x20,0x76,0x11,0x14,0x46,0x84,0x80,0x36,0x00,0x04,~0x02,~0xc0,0xa1,~0x50,0x79,0x71};//段码控制//constuchardispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};//位选控制查表的方法控制constuchartab[]={0xd7,0x84,0xe3,0xe6,0xb4,0x76,0x77,0xc4,0xf7,0xf

4、6,0xf5,0x37,0x53,0xa7};//0~D段码控制ucharinput;//密码输入次数ucharchaopasswd[]={0,10,11,12,13,10,11,12,13,0,0};//超级密码uintchaonum,time;uintnum,su_flag;voidbeep();voidpasswd_set();voidpasswd_in();voidDELAY(uintnum);/*********************************************************/main(){P2=

5、0xff;//送数码管显示P0=0xff;P1=0xff;//读取按键input=1;ok_flag=1;passwdnum=1;chaonum=1;time=0;ACT=1;SET=0;su_flag=0;FLAG=1;BEEP=0;wei1=0;wei2=1;while(passwdnum<=8){passwd_set();//等待设置密码DELAY(500);passwdnum++;P0=0xff;P1=0xff;}P0=0xff;P1=0xff;TMOD=0x01;TH0=(65536-45872)/256;TL0=(65536-

6、45872)%256;EA=1;ET0=1;TR0=1;while(time!=2)//2秒响铃{P2=tab[time+1];beep();}time=0;ET0=0;TR0=0;BEEP=0;SET=1;passwdnum=1;while(1){while(input<=3){INPUT=0;//输入指示灯亮FLAG=1;while(passwdnum<=8){passwd_in();//等待输入密码DELAY(500);P0=0xff;P1=0xff;passwdnum++;}if(chaonum==9){chaonum=1;FLA

7、G=1;INPUT=1;//输入指示灯灭//密码正确响铃1秒TMOD=0x01;TH0=(65536-45872)/256;TL0=(65536-45872)%256;EA=1;ET0=1;TR0=1;while(time!=1){P2=tab[time+1];beep();}time=0;ET0=0;TR0=0;BEEP=0;DELAY(500);ACT=0;//5秒TMOD=0x01;TH0=(65536-45872)/256;TL0=(65536-45872)%256;EA=1;ET0=1;TR0=1;while(time!=5){

8、P2=tab[time+1];}time=0;ET0=0;TR0=0;BEEP=0;ACT=1;input=1;passwdnum=1;P0=0xff;P1=0xff;while(passwd

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。