密码(完整版)单片机电子密码锁(可以修改设置密码)——基于51单片机毕业论文

修改密码  时间:2021-02-22  阅读:()

单片机电子密码锁 (可以修改设置密码)――基于51单片机与AT24C02与LCD1602显示

其电路图连接如下本人已经用硬件实验程序可用。正确 ~~本程序特点装载后读者可以自改密码然后需要再次载入程序时可以把主程序aa=Sendstring(0xa0,1,table2,6)这一句去掉。然后程序的电子锁密码就是你个人设置的密码。

LCD1

程序代码为:

#include<reg51.=P0

XrMJ

Rir

F7 !|

uchar code table[]="Your Password...";void delayms(uint z)

{uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);

}void delay()短延时两个机器周期 ,做总线的延时{;;}void write_com(uchar com)

{rs=0;rd=0;lcden=0;

P2=com;delayms(3);lcden=1;delayms(3);lcden=0;

}void write_date(uchar date)

{rs=1;rd=0;lcden=0;

P2=date;delayms(3);lcden=1;delayms(3);lcden=0;

}void Display_String(uchar*p,uchar com)

{uchar i;write_co m(c o m);for(i=0;i<16;i++)

{write_date(p[i]);

}

}void init_lc d()

{lcden=0;write_co m(0 x38);write_co m(0 x0 c);write_co m(0 x06);write_co m(0 x01);write_co m(0 x80);

Display_String(table,0x80);

Display_String("Lock OK! ",0xc0);}

void start() {sda=1;scl=1;delay4us();sda=0;delay4us();scl=0;

}void stop()

{sda=0;scl=1;delay4us();sda=1;delay4us();scl=0;

}vo id init()初始化{sda=1;delay();scl=1;delay();

}

void ack()

{sda=0;scl=1;delay4us();scl=0;sda=1;

}void noack()

{sda=1;scl=1;delay4us();scl=0;sda=0;

}uchar recbyte()

{uchar i,rd;rd=0x00;sda=1;for(i=0;i<8;i++) {rd<<=1;scl=1;

rd|=sda;delay4us();scl=0;delay4us();

}scl=0;delay4us();return rd;

}uchar sendbyte(uchar wd)

{uchar i;bit ack0;for(i=0;i<8;i++)

{s da=(bit)(wd&0x80);

_nop_();

_nop_();scl=1;delay4us();scl=0;wd<<=1;

}delay4us();sda=1;

scl=1;delay4us();ack0=!sda;scl=0;delay4us();return ack0;

}uchar Recstring(uchar slaveuchar i;start();if(!sendbyte(slave))return 0;if(!sendbyte(subaddr))return 0;start();if(!sendbyte(slave+1))return 0;for(i=0;i<n-1;i++)

{buffer[i]=recbyte();ack();

}buffe r[n-1]=re cbyte();noack();stop();return 1;

uchar Sendstring(uchar slaveuchar i;start();if(!sendbyte(slave))return 0;if(!sendbyte(subaddr))return 0;for(i=0;i<n;i++)

{if(!sendbyte(buffer[i]))return 0;

}stop();return 1;

}void clear_password()

{ uchar i;for(i=0;i<6;i++)

{

Us e rpas swo rd[i]='';

}for(i=0;i<16;i++)

{

D SY_BUFFER[i]='';

}

()uchar temp,keynum;

P1=0x0F;delayms(5);te mp=P 1 A0 x0F;switch(temp)

{case 1:keynum=0;break;case 2:keynum=1;break;case 4:keynum=2;break;case 8:keynum=3;break;break;}

P1=0xF0;delayms(5);te mp=P 1>>4A0 x0F;switch(temp)

{case 1:keynum+=0;break;case 2:keynum+=4;break;case 4:keynum+=8;break;case 8:keynum+=12;break;break;}delayms(600);return keynum;void main()

{uchar temp,i=0,j=0,k=0,n;uchar IS_valid_user;beep=1;init();init_lc d();delayms(5);

妮妮云香港CTG云服务器1核 1G 3M19元/月

香港ctg云服务器香港ctg云服务器官网链接 点击进入妮妮云官网优惠活动 香港CTG云服务器地区CPU内存硬盘带宽IP价格购买地址香港1核1G20G3M5个19元/月点击购买香港2核2G30G5M10个40元/月点击购买香港2核2G40G5M20个450元/月点击购买香港4核4G50G6M30个80元/月点击购买香...

美国G口/香港CTG/美国T级超防云/物理机/CDN大促销 1核 1G 24元/月

[六一云迎国庆]转盘活动实物礼品美国G口/香港CTG/美国T级超防云/物理机/CDN大促销六一云 成立于2018年,归属于西安六一网络科技有限公司,是一家国内正规持有IDC ISP CDN IRCS电信经营许可证书的老牌商家。大陆持证公司受大陆各部门监管不好用支持退款退现,再也不怕被割韭菜了!主要业务有:国内高防云,美国高防云,美国cera大带宽,香港CTG,香港沙田CN2,海外站群服务,物理机,...

spinservers($89/月),圣何塞10Gbps带宽服务器,达拉斯10Gbps服务器

spinservers是Majestic Hosting Solutions LLC旗下站点,主要提供国外服务器租用和Hybrid Dedicated等产品的商家,数据中心包括美国达拉斯和圣何塞机房,机器一般10Gbps端口带宽,高配置硬件,支持使用PayPal、信用卡、支付宝或者微信等付款方式。目前,商家针对部分服务器提供优惠码,优惠后达拉斯机房服务器最低每月89美元起,圣何塞机房服务器最低每月...

修改密码为你推荐
赵雨润星辰变玩家可以成为星辰变演员?这是真的吗?yy频道中心yy频道怎么进频道中心,求图~!暴风影音怎么截图暴风影音怎么截屏啊?人人时光机求 《小叮当》的日语歌词。最好有片假名的正则表达式javajava正则表达式中小企业信息化什么是企业信息化,应该这样实施天天酷跑刷金币天天酷跑如何刷分刷金币?电子商务网站模板我想开发一个电子商务网站,但是想加入自己设计的模板,可以吗?小米手柄小米手柄能连几个手机网站优化方案网站优化方案如何写?
网站空间申请 深圳虚拟主机 花生壳免费域名 webhostingpad 163网 php探针 qq数据库 促正网秒杀 全站静态化 qingyun gspeed admit的用法 nerds 免费高速空间 hktv 如何注册阿里云邮箱 lick 阿里云免费邮箱 东莞主机托管 浙江服务器 更多