急求C语言电子密码锁程序
#include
#include /*conio库,调用无回显getch()就是输入后不显示*/
void main ()
{
int i=1;
int j;
char code[10];
for(;i<=3;i++)
{
printf("你还有%d次机会,请输入密码:
",4-i);
for(j=0;j<10;j++)
{
code[j]=getch();
if(code[j]=='\b') /* 遇到退格键可以删除前一个输入*/
{
printf("\b \b");
code[--j]=0;
}
else
printf("*"); /*输入的信息将以*号输出*/
if(code[j]=='')/*遇到回车程序跳出*/
break;
}
if(code[0]=='1'&&code[1]=='2'&&code[2]=='3')/*密码是123*/
{
printf("
right
");
break;
}
else
printf("
wrong
");
if(i==4)
{
printf("你的机会已用尽");
break;
}
}
}
楼主,我已经修改了,如果还有什么问题,可以继续HI我
#include
#include /*conio库,调用无回显getch()就是输入后不显示*/
#include
using namespace std;
int main ()
{
int j=0;
int i;
char code[10];
char s;
for (i=3;i!=0;--i)
{
j=0;
printf("你还有%d次机会,请输入密码:
",i);
cout<<"888888";
cout<<"\b\b\b\b\b\b";
while ((s=getch())!='')
{
code[j]=s;
if( s == '\b' ) //遇到退格键可以删除前一个输入
{
printf("\b8\b");
code[--j]=code[--j];
}
else
{
//putchar('*'); /*输入的信息将以*号输出*/
cout<<"F";
}
code[++j]='\0';
}
if (code[0]=='1'&&code[1]=='2'&&code[2]=='3'&&code[3]=='4'&&code[4]=='5'&&code[5]=='6'&&code[6]=='\0')
{
printf("
密码正确
");
break;
}
//system("cls");
}
return 0;
}
不好意思,楼主,最近没怎么上百度,这个程序应该符合你的条件的,有什么不懂的可以找我呢,单片机我不知道呢,不过这个程序是符合你的条件的,HI我吧
要 求:
①设计并制作一个电子密码锁,要求具有六位数码管显示、4*4键盘、电子锁(可用继电器驱动)、声光报警电路等。
②4*4键盘的16个按键功能分别为“0”—“9”、开始、确定、取消、修改密码、手动报警、自定义功能,要求每个按键被按下时都会发出按键提示声音。
③用户使用密码锁要先按下“开始”键,数码管显示“------”,然后再输入六位密码,输入的密码用“*”表示,最后按下“确定”输入密码(密码正确时数码管显示“open”,绿灯闪烁三次;密码错误时数码管显示“Error”, 红灯闪烁三次)或按下“取消”取消操作(数码管显示“------” )。
④开锁密码输入连续3次出现错误,则电子锁进入报警状态,并发出连续的声光报警,直至系统复位为止。
⑤密码锁的初始密码为“000000”,管理员可以对密码锁的密码进行设定或修改,但修改旧密码前必须正确输入新密码,然后再连续两次输入新密码,如果两次输入的新密码不一致则修改失败,红灯闪烁三次。如果修改成功,则绿灯闪烁三次。
⑥电路可以使用各种驱动方法控制电子锁的开和关。
注意:(1)必须使用真实的电子锁,电子锁尺寸规格不限,自行购买;
(2)显示器件也可以使用1602液晶显示器。
你要什么要求的程序呢?我这里有个程序
#include <reg51.H>
#include<intrins.h>
#include<math.h>
unsigned char code ps[] ={1,2,3,4,5};
unsigned char code dispcode[] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};
unsigned char pslen=9;
unsigned char templen;
unsigned char digit;
unsigned char funcount;
unsigned char digitcount;
unsigned char psbuf[9];
bit cmpflag;
bit hibitflag;
bit errorflag;
bit rightflag;
unsigned int second3;
unsigned int aa;
unsigned int bb;
bit alarmflag;
bit exchangeflag;
unsigned int cc;
unsigned int dd;
bit okflag;
unsigned char oka;
unsigned char okb;
sbit P0_0=P0^0;
sbit P0_1=P0^1;
sbit P3_6=P3^6;
sbit P3_7=P3^7;
void main(void)
{
unsigned char i,j;
P1=dispcode[digitcount];
TMOD=0x01;
TH0=(65536-500)/256;
TL0=(65536-500)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{
if(cmpflag==0)
{
if(P3_6==0) //function key
{
for(i=10;i>0;i--)
for(j=248;j>0;j--);
if(P3_6==0)
{
if(hibitflag==0)
{
funcount++;
if(funcount==pslen+2)
{
funcount=0;
cmpflag=1;
}
P1=dispcode[funcount];
}
else
{
second3=0;
}
while(P3_6==0);
}
}
if(P3_7==0) //digit key
{
for(i=10;i>0;i--)
for(j=248;j>0;j--);
if(P3_7==0)
{
if(hibitflag==0)
{
digitcount++;
if(digitcount==10)
{
digitcount=0;
}
P2=dispcode[digitcount];
if(funcount==1)
{
pslen=digitcount;
templen=pslen;
}
else if(funcount>1)
{
psbuf[funcount-2]=digitcount;
}
}
else
{
second3=0;
}
while(P3_7==0);
}
}
}
else
{
cmpflag=0;
for(i=0;i<pslen;i++)
{
; if(ps!=psbuf)
{
hibitflag=1;
i=pslen;
errorflag=1;
rightflag=0;
cmpflag=0;
second3=0;
goto a;
}
}
cc=0;
errorflag=0;
rightflag=1;
hibitflag=0;
a:
cmpflag=0;
}
}
}
void t0(void) interrupt 1 using 0
{
TH0=(65536-500)/256;
TL0=(65536-500)%256;
if((errorflag==1) && (rightflag==0))
{
bb++;
if(bb==800)
{
bb=0;
alarmflag=~alarmflag;
}
if(alarmflag==1)
{
P0_0=~P0_0;
}
aa++;
if(aa==800)
{
aa=0;
P0_1=~P0_1;
}
second3++;
if(second3==6400)
{
second3=0;
hibitflag=0;
errorflag=0;
rightflag=0;
cmpflag=0;
P0_1=1;
alarmflag=0;
bb=0;
aa=0;
}
}
if((errorflag==0) && (rightflag==1))
{
P0_1=0;
cc++;
if(cc<1000)
{
okflag=1;
}
else if(cc<2000)
{
okflag=0;
}
else
{
errorflag=0;
rightflag=0;
hibitflag=0;
cmpflag=0;
P0_1=1;
cc=0;
oka=0;
okb=0;
okflag=0;
P0_0=1;
}
if(okflag==1)
{
oka++;
if(oka==2)
{
oka=0;
P0_0=~P0_0;
}
}
else
{
okb++;
if(okb==3)
{
okb=0;
P0_0=~P0_0;
}
}
}
}
c语言单片机密码锁控制程序,用4个按键输入状态分别代表4位二进制数...
用51单片机,假设p1·0至p1·3接4个开关,P2·0接开锁按键S1 While(s1!=0);\/\/等待按开锁按钮 delayms(10);\/\/延时 While(s1==0);\/\/等待按键抬起 mima=0x0F&P1;\/\/读取P1低4位 if(mima==12)lock=1;\/\/如果与设定密码相等开锁 else Fmq=1;\/\/否则,报警 ...
用51单片机和at24c02储存密码的密码锁,密码对比程序怎么写,C语言
0x20, 0x30, 0x1C , 0x10, 0x18, 0x40, 0x1C , 0x20, 0x20, 0x20, 0x26 , 0x40, 0x13, 0x60, 0x18 , 0x20, 0x15, 0x40, 0x13 , 0x40, 0x18, 0x80, 0x00 }; *\/uchar temp,flag=0,conflag;\/\/定义temp做为键盘检测 flag做密码标志 uchar k,xiugai; \/\/k为密码计数标志 ...
C语言 单片机 密码锁 求指教 24C04.bin是什么东西?“初始密码由24C04.b...
24C04是I2C总线的EEPROM芯片,掉电后数据不会丢失,所以将密码保存在这里面。
基于单片机电子密码锁设计~
以前我在网上找到过密码锁的源代码,你可以找找。给你一个思路吧,先用7个端口做成3*4矩阵键盘,0~9 * #共12个键,另外用4个端口做红灯输出、绿灯输出、报警输出、开锁输出。*键为取消键,#键为确认键,密码可存入单片机的ROM中(不能改密码)或存入24CXX串行E2PROM(可改密码)。键盘处理方法...
急!!!单片机密码锁设计!!!
好像在论坛里见到这个的仿真来着,你去protues论坛里看看,搜一下,应该能搜到。
电子密码锁的设计研究开题报告
普通群众日常使用的还是机械锁,所以需要设计一款功能实用、价格低廉、操作简单的电子密码锁。利用单片机【1】作为控制元件的电子密码锁能够使用C语言[7]和汇编语言简单的对其进行各种人性化的编程[6],来控制单片机各引脚的高低电位[14]从而实现各元件的接通与关闭,通过整体的配合实现随意更改密码、防盗报警[9]、防暴力...
求高手,求帮助,c51单片机课程设计(单片机密码锁)我的邮箱530490031@qq.c...
电子密码锁通常使用ARM和单片机控制,单片机相对ARM实现较为简单,功能较为完善,因此使用单片机控制较多。用单片机控制的窖码锁常使用汇编语言编写程序,显示器多数用。而本文所介绍的电子密犸锁使用移植性及可读性强的高级语言C语言编写,便于修改和增减功能蚤同时采用显示清楚数码管,功率消耗小而且寿命长的...
电子密码锁设计基于51单片机
[1]单片机多功能密码锁系统\/防火防盗系统设计 实现功能:1、 密码锁功能\/可以修改密码, 下次开机后新密码仍然有效 2、 支持一键恢复初始密码 3、 可添加防火防盗报警功能 4、 可进行功能定制 ☆已作出的实物优酷视频演示地址:http:\/\/v.youku.com\/v_show\/id_XMTUwMjg3MjQyOA==.html 单片机蓝牙...
6位密码锁
编程吗?用C语言整个代码不会超过三十句,晕
51单片机关于密码锁的毕业设计,论文
进入密码的判断比较处理状态并给出相应的处理过程。(3).按键禁止功能:初始化时,是允许按键输入密码,当有按键按下并开始进入按键识别状态时,按键禁止功能被激活,但启动的状态在3次密码输入不正确的情况下发生的。C语言源程序 include unsigned char code ps[]={1,2,3,4,5};unsigned char code...
聊霞果导: #include <stdio.h> #include <conio.h> /*conio库,调用无回显getch()就是输入后不显示*/ void main () {int i=1;int j; char code[10]; for(;i<=3;i++) {printf("你还有%d次机会,请输入密码:\n",4-i);for(j=0;j<10;j++){code[j]=getch(); if(code[j]...
荔城区15878613526: 急求C语言电子密码锁程序 - ?
聊霞果导: 你要什么要求的程序呢?我这里有个程序 #include #include #include unsigned char code ps[] ={1,2,3,4,5}; unsigned char code dispcode[] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40}; unsigned char pslen=9; unsigned char ...
荔城区15878613526: 用C语言写个简单的6位密码程序 ,要求三次错误锁定三分钟.急急急!!!谢谢 - ?
聊霞果导: #include #include #include void main() { int i=0,j; char str1...
荔城区15878613526: 用C语言写个简单的6位密码程序 ,要求三次错误锁定三分钟.急急急!!!谢谢 - ?
聊霞果导: #include #include #include void main() { int i=0,j; char str1[10],str2[10]="123456";; while(1) { printf("\n请输入6位密码,按Enter键结束: "); j=0; while ((str1[j]=getch())) { printf("%c", '*'); j++; if(j==6) break; } str1[j]=0; if(j>0 && strcmp(str1,str2)...
荔城区15878613526: 请问哪位高人有电子密码锁的C语言程序,最好是有注释的谢谢?
聊霞果导: 让我来告诉你答案!单片机,数码管显示.4*4矩阵键盘#include#defineucharunsignedchar#defineuintunsignedint#definekeyP1sbitlock=P3^1;sbitworn=P3^2;charpass_right=0;charpass_bit=0;ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7...
荔城区15878613526: 求一个c语言程序 数字密码锁. - ?
聊霞果导: //vc6调试成功!!! /*要求:能够用键盘设置密码,输入密码.如果输入密码与 设置的密码不匹配给出提示,连续三次输入错误就禁止输入.*/ #include <stdio.h> #include <stdlib.h> #include <string.h> #define PR printf void main() { char psw[30]...
荔城区15878613526: 如何用C语言编写密码程序 - ?
聊霞果导: 1、用一个字符数组来存密码 再用一个字符数组接收你的输入,然后用strcmp 来比较,如果返回0则密码是正确的 2、例程: 1 2 3 4 5 6 7 8 9 10 11 12 13 14#include "stdio.h" #include "string.h" intmain() {charmima[100]="YuanShi888";charinput[100]={0};printf("请输入密码:");gets(input);if(strcmp(mima,input)==0)printf("恭喜你,密码正确!\n");elseprintf("对不起,密码输入错误!\n");}
荔城区15878613526: 求用c语言来做一个密码验证程序 - ?
聊霞果导: 如果简单点的话,只要初始化一个正确密码,再输入判断; 复杂一点就是将原密码加密! 我贴个简单的: #include <stdio.h> #include <string.h> int main() { int num=0,pd=0; char password[]={"nihao"},str[100];//password为真确密码,str为读入...
荔城区15878613526: 用C语言写一个设置密码的程序 - ?
聊霞果导: 验证密码是否正确... #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <string.h> char mima[]="123456";/*密码,全局变量*/ void main() { int i,j; i=j=0; char ch; char a[20]; while(j<3) { while('\r'!=(ch=getch())) { temp[i++]=ch; ...
荔城区15878613526: 球C51电子密码锁C语言程序 - ?
聊霞果导: /*看看我写的这个合你的要求不?你的题目没给明确我只写了这个简单的,你如果要限制密码只能是4位把password加个判断就好了 if(password>999&&password<10000) else*/#include<stdio.h>#include<windows.h> void main() { int password=0; ...