资源简介
里面含完整参考论文,电路设计图等多个文件。本设计具有设置、修改六位用户密码、超次报警、超次锁定、密码错误报警等功能(本设计由P0口控制LCD显示,密码正确显示password ok! 密码错误显示password error!超过三次输入错误自动锁定。
代码片段和文件信息
//包含头文件
#include
#include
//宏定义
#define LCM_Data P0 //将P0口定义为LCM_Data
#define uchar unsigned char
#define uint unsigned int
#define w 6 //定义密码位数
//1602的控制脚
sbit lcd1602_rs=P2^7;
sbit lcd1602_rw=P2^6;
sbit lcd1602_en=P2^5;
sbit Scl=P3^4; //24C02串行时钟
sbit Sda=P3^5; //24C02串行数据
sbit ALAM = P2^1; //报警
sbit KEY = P3^6; //开锁
sbit open_led=P2^2; //开锁指示灯(选配)
bit operation=0; //操作标志位
bit pass=0; //密码正确标志
bit ReInputEn=0; //重置输入允许标志
bit s3_keydown=0; //3秒按键标志位
bit key_disable=0; //锁定键盘标志
unsigned char countt0second; //t0中断计数器秒计数器
void Delay5Ms(void); //声明延时函数
unsigned char code a[]={0xFE0xFD0xFB0xF7}; //控盘扫描控制表
//液晶显示数据数组
unsigned char code start_line[] = {“password: “};
unsigned char code name[] = { “===Coded Lock===“}; //显示名称
unsigned char code Correct[] = {“ correct “}; //输入正确
unsigned char code Error[] = {“ error “}; //输入错误
unsigned char code codepass[] = {“ pass “};
unsigned char code LockOpen[] = {“ open “}; //OPEN
unsigned char code SetNew[] = {“SetNewWordEnable“};
unsigned char code Input[] = {“input: “}; //INPUT
unsigned char code ResetOK[] = {“ResetPasswordOK “};
unsigned char code initword[] = {“Init password...“};
unsigned char code Er_try[] = {“errortry again!“};
unsigned char code again[] = {“input again “};
unsigned char InputData[6]; //输入密码暂存区
unsigned char CurrentPassword[6]={131420}; //管理员密码(只可在程序中修改)
unsigned char TempPassword[6];
unsigned char N=0; //密码输入位数记数
unsigned char ErrorCont; //错误次数计数
unsigned char CorrectCont; //正确输入计数
unsigned char ReInputCont; //重新输入计数
unsigned char code initpassword[6]={000000}; //输入管理员密码后将密码初始为000000
//=====================5ms延时==============================
void Delay5Ms(void)
{
unsigned int TempCyc = 5552;
while(TempCyc--);
}
//===================400ms延时==============================
void Delay400Ms(void)
{
unsigned char TempCycA = 5;
unsigned int TempCycB;
while(TempCycA--)
{
TempCycB=7269;
while(TempCycB--);
}
}
//=============================================================================================
//================================24C02========================================================
//=============================================================================================
void mDelay(uint t) //延时
{
uchar i;
while(t--)
{
for(i=0;i<125;i++)
{;}
}
}
void Nop(void) //空操作
{
_nop_(); //仅作延时用一条语句大约1us
_nop_();
_nop_();
_nop_();
}
/*****24c02程序参照24c02时序图*****/
/*起始条件*/
void Start(void)
{
Sda=1;
Scl=1;
Nop();
Sda=0;
Nop();
}
/*停止条件*/
void Stop(void)
{
Sda=0;
Scl=1;
Nop();
Sda=1;
Nop();
}
/*应答位*/
void Ack(void)
{
Sda=0;
Nop();
Scl=1;
Nop();
Scl=0;
}
/*反向应答位*/
void NoAck(void)
{
Sda=1;
Nop();
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-09-13 16:15 1-密码锁程序+注释\
文件 9360 2014-06-10 22:53 1-密码锁程序+注释\mimasuo
文件 50538 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.LST
文件 41560 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.M51
文件 15035 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.OBJ
文件 2096 2014-04-09 23:59 1-密码锁程序+注释\mimasuo.Uv2.bak
文件 17036 2014-04-09 23:59 1-密码锁程序+注释\mimasuo.bak
文件 19540 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.c
文件 6781 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.hex
文件 46 2014-06-10 22:53 1-密码锁程序+注释\mimasuo.lnp
文件 1012 2014-05-29 12:26 1-密码锁程序+注释\mimasuo.opt.bak
文件 179 2014-09-13 16:04 1-密码锁程序+注释\mimasuo.plg
文件 55832 2014-09-13 16:15 1-密码锁程序+注释\mimasuo.uvopt
文件 13190 2014-05-29 12:26 1-密码锁程序+注释\mimasuo.uvproj
文件 1010 2014-05-28 23:25 1-密码锁程序+注释\mimasuo_Opt.Bak
文件 1658 2014-04-09 23:59 1-密码锁程序+注释\mimasuo_Uv2.Bak
文件 55832 2014-07-07 17:00 1-密码锁程序+注释\mimasuo_uvopt.bak
文件 94208 2014-04-09 23:59 1-密码锁程序+注释\程序.doc
目录 0 2014-11-13 12:43 10-开发资料\
目录 0 2014-06-02 15:37 10-开发资料\1602资料\
文件 262017 2014-04-09 23:59 10-开发资料\1602资料\1602液晶说明.pdf
文件 268206 2014-04-09 23:59 10-开发资料\1602资料\1602液晶资料[1].pdf
文件 1205196 2014-04-10 00:00 10-开发资料\1602资料\EN_TC1602.pdf
文件 1347951 2014-04-10 00:00 10-开发资料\1602资料\字符手册.pdf
文件 577648 2014-05-26 22:22 10-开发资料\24c02.pdf
文件 588052 2014-04-09 23:59 10-开发资料\AT24C0124C256中文资料.pdf
文件 5226818 2014-05-26 21:28 10-开发资料\AT89C51.pdf
文件 1581040 2014-05-26 21:29 10-开发资料\AT89S51.doc
文件 52224 2014-05-26 23:08 10-开发资料\AT89S52的中文资料.doc
文件 2655200 2014-04-10 00:00 10-开发资料\STC89C51.pdf
文件 1598470 2014-04-10 00:00 10-开发资料\STC89C51应用介绍.pdf
............此处省略186个文件信息
相关资源
- C malloc函数用法
- 嵌入式局域网聊天系统客户端
- 算法竞赛入门经典 第2版刘汝佳+高清
- 基于单片机的GPS定位及显示系统设计
- 链表实现通讯录管理系统
- PowerShell-6.2.1-win-x86.zip
- pl/0编译器 语法分析
- 源程序阅读与调试课程设计报告--学生
- 谁说程序员不浪漫?!基于easyX图形库
- 编译原理课设c编译器
- 基于51单片机射频密码锁设计门禁刷卡
- 关于电子密码锁的毕业设计
- MCP3421 STM32 Driver
- ADS1100 STM32 Driver
- 单片机89c52与MLX90614红外的测温程序
- stm32f103AES加密 cbc模式
- 单片机 点阵 字模提取软件
- EDA电子密码锁的设计与实现
- C高级编程讲义-传智播客
- NOIP必学内容之前缀和与差分颜鸿宇
- Skyline高效检索算法实现.zip
- 密码+指纹锁资料包.rar
- STM8S103系列IO模拟串口通信实现真正串
- stm32f103c8t6移植uC/OS-III基于HAL库的工程
- 温度、一氧化碳、二氧化碳、PM2.5以及
- 王道论坛计算机考研机试指南
- 有限元中网格剖分算法
- PLC开源资料
- 数字密码锁(完整报告)-课程设计
- STM8L051.串口接收IDLE中断.zip
评论
共有 条评论