vs连接数据库做网站,建立网站,医疗网站平台建设方案,17173论坛基于51单片机的简易密码锁设计 1.主要功能#xff1a;资料下载链接#xff1a; 实物图#xff1a;2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单 【普中】基于51单片机的简易密码锁设计 ( proteus仿真程序设计报告讲解视频#xff09;
仿真图proteus8.16(有低版本)
程… 基于51单片机的简易密码锁设计 1.主要功能资料下载链接 实物图2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单 【普中】基于51单片机的简易密码锁设计 ( proteus仿真程序设计报告讲解视频
仿真图proteus8.16(有低版本)
程序编译器keil 4/keil 5
编程语言C语言
设计编号P10
1.主要功能
基于51单片机AT89C51/52与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用
基于51单片机的简易密码锁设计数码管显示
以单片机为核心设计一个六位电子密码锁。利用矩阵键盘输入密码8位数码管显示输入的内容,要求如下
1、初始状态数码管为熄灭状态不显示内容系统等待按键按下。
2、矩阵键盘按下数码管按顺序显示被按下的按键数字共六位。
3、每按下六次按键系统判断一次密码。密码正确数码管显示open然后回到初始状态密码错误数码显示------持续2秒然后回到初始状态。
4、密码错误3次以上禁止输入如需再输入需按下复位按键。
4、密码为六位初始密码为000 000。
5、使用keil编程proteus仿真调试普中开发板完成实物演示。
(目前仅完全适配普中开发板A234其他普中开发板型号可能需要做代码修改或接线)
需注意仿真中51单片机芯片是兼容的AT89C51,AT89C52是51单片机的具体型号内核是一样的。相同的原理图里无论stc还是at都一样引脚功能都是一样的程序是兼容的芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。
资料下载链接
P系列单片机设计下载链接(复制到浏览器打开)
https://docs.qq.com/doc/DS2pPenNRaHB6SlR1以下为本设计资料展示图
实物图 2.仿真
开始仿真
打开仿真工程双击proteus中的单片机选择hex文件路径然后开始仿真。 3. 程序代码
使用keil4或者keil5编译代码有注释可以结合报告理解代码含义。 #includereg52.h
完整代码在文章开头下载链接
#define uchar unsigned char
#define uint unsigned intuchar old1,old2,old3,old4,old5,old6; //原始密码000000
uchar new1,new2,new3,new4,new51,new61; //每次MCU采集到的密码输入
uchar a16,b16,c16,d16,e16,f16; //送入数码管显示的变量
uchar wei,key,temp,num1;
uint tt100;
uchar allow,wanbi,cwflag; //各个状态位sbit beepP1^7;
sbit jdqP1^0;uchar code led[]{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f, //数码管段码
0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00,0x40,
0x3f,0x73,0x79,0x37 //open
}; //
uchar code table[]{0x00,0x04,0x08,0x0c,0x10,0x14,0x18,0x1c}; //数码管位选
void delay(unsigned int i) //延时
{uint j,k;for(ji;j0;j--)for(k125;k0;k--);
}void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f) //数码管显示
{P00x00; //数码管关闭P0led[a]; //段选P2table[7]; //位选delay(5); //延时P00x00;P0led[b];P2table[6];delay(5);P00x00;P0led[c];P2table[5];delay(5);P00x00;P0led[d];P2table[4];delay(5);P00x00;P0led[e];P2table[3];delay(5);P00x00;P0led[f];P2table[2];delay(5);}void delay_uint(uint i)//延时
{while(i--);
}
uchar scan_key0;
uchar Matrix_buttons_scan(){uchar i,j;i0;j0;P10x0f;if(P1!0x0f) //检测有无按下{delay_uint(10000);if(P1!0x0f) //检测有无按下{switch(P1)//检测行{case 0x0e:i3;break;case 0x0d:i2;break;case 0x0b:i1;break;case 0x07:i0;}P10xf0;switch(P1)//检测列{case 0xe0:j13;break;case 0xd0:j9;break;case 0xb0:j5;break;case 0x70:j1;}}}if(scan_key!ij){scan_keyij;return scan_key;}else{return 0;}}
//按键扫描子函数
void keyscan()
{uchar i0;iMatrix_buttons_scan();//按键检测if(i1) {key0; //按键0定义wei; //输入位数1 }else if(i2) {key1; //按键1定义wei; //输入位数1 }else if(i3) {key2; //按键2定义wei; //输入位数1 }else if(i4) {key3; //按键3定义wei; //输入位数1 }else if(i5) {key4; //按键4定义wei; //输入位数1 }else if(i6) {key5; //按键5定义wei; //输入位数1 }else if(i7) {key6; //按键6定义wei; //输入位数1 }else if(i8) {key7; //按键7定义wei; //输入位数1 }else if(i9) {key8; //按键8定义wei; //输入位数1 }else if(i10) {key9; //按键9定义wei; //输入位数1 }
}
4. 设计报告
6198字设计报告内容包括目录硬件设计、软件设计、软硬件框图、调试、结论等 5. 设计资料内容清单
资料设计资料包括仿真程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。
0、常见使用问题及解决方法–必读
1、仿真图
2、程序源码注释
3、功能要求
4、开题报告
5、设计报告
6、软硬件流程框图
7、烧录工具
8、讲解视频
Altium Designer 安装破解
KEILproteus 单片机仿真设计教程
KEIL安装破解
Proteus元器件查找
Proteus安装
Proteus简易使用教程
单片机学习资料
普中-2普中-3普中-4开发板原理图.pdf
相关数据手册
答辩技巧
设计报告常用描述
鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url