资源简介
基于51单片机指纹解锁设计程序,程序仅供参考主要还是靠自己调试
代码片段和文件信息
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define jzaj P1
uchar xAdministratorsout=0k=0hbreset1=0;
uchar password[6]={123456};
uchar password1[6];
uchar password2[6]={123456};
uchar adminpassword[6]={666666};
uchar adminpassword1[6];
uchar adminpassword2[6]={666666};
sbit kai=P0^5;
sbit kai1=P0^6;
sbit kai2=P0^7;
uchar code DIS1[] = {“ 欢迎使用 “}; //一个汉字占用两个字符空间,故汉字只能占用偶数地址
uchar code DIS2[] = {“ 云部落指纹锁 “};
uchar code DIS3[] = {“ 密码吻合 “};
uchar code DIS14[] = {“ 密码错误 “};
uchar code DIS4[] = {“已识别 ID: “};
uchar code DIS5[] = {“ 没有找到 “};
uchar code DIS6[] = {“请输入管理员密码“};
uchar code DIS7[] = {“1.添加指纹 “};
uchar code DIS8[] = {“2.清空指纹 “};
uchar code DIS9[] = {“3.开锁密码 “};
uchar code DIS10[] = {“4.管理密码 “};
uchar code DIS11[] = {“ 请输入指纹 “};
uchar code DIS12[] = {“ 请再次输入指纹“};
uchar code DIS13[] = {“添加成功ID: “};
uchar code DIS15[] = {“ 清空成功 “};
uchar code DIS16[] = {“ 清空失败 “};
uchar code DIS17[] = {“ 确认清空? “};
uchar code DIS18[] = {“ 请输入新密码 “};
uchar code DIS19[] = {“ 确认修改? “};
uchar code DIS20[] = {“ 修改成功 “};
uchar code DIS21[] = {“ 复位成功 “};
/************* 12864LCD引脚定义 *************/
#define LCD_data P2 //数据口
sbit LCD_RS = P0^0; //寄存器选择输入
sbit LCD_RW = P0^1; //液晶读/写控制
sbit LCD_EN = P0^2; //液晶使能控制
sbit LCD_PSB = P0^3; //串/并方式控制
sbit LCD_RST = P0^4; //液晶复位端口
#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();};
void delay(int ms)
{
while(ms--)
{
uchar i;
for(i=0;i<150;i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
/*******************************************************************/
/* */
/*检查LCD忙状态 */
/*lcd_busy为1时,忙,等待。lcd-busy为0时闲,可写指令与数据。 */
/* */
/*******************************************************************/
bit lcd_busy()
{
bit result;
LCD_RS = 0;
LCD_RW = 1;
LCD_EN = 1;
delayNOP();
result = (bit)(LCD_data&0x80);
LCD_EN = 0;
return(result);
}
/*******************************************************************/
/* */
/*写指令数据到LCD */
/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 */
/* */
/*******************************************************************/
void lcd_wcmd(uchar cmd)
{
while(lcd_busy());
LCD_RS = 0;
LCD_RW = 0;
LCD_EN = 0;
_nop_();
_nop_();
LCD_data = cmd;
delayNOP();
LCD_EN = 1;
- 上一篇:在线同学录系统
- 下一篇:51单片机8位抢答器源程序
相关资源
- 51单片机例程1602显示秒表
- 网络编程期末试卷华南农业大学2011含
- DE2-115上以RGMII模式发送ARP测试包Veri
- 带报警的MPX4115气压计设计
- Nvivo11 Plus包+破解
- GB35114分析文档
- ADS1118的MSP430F5529驱动程序
- G711编码原理ppt
- linux0.11内核源码
- 温湿度传感器DHT11 +烟雾报警 8位数码
- Solaris8-11 iso镜像
- HR911105A RJ45接口资料
- 序列检测器\\电平信号_000_001_011_111_序
- ADS1115驱动程序
- zw_qq_37591909-11100331-AR开发实战项目之人
- IM1253+IM6201+QS1211+上位机.rar
- 富士5000P11变频器图纸
- ATC电容ADS文件
- teamcenter11.txt
- 基于Arduino的温湿度传感器DHT11库
- 数据结构实验报告11-内部排序-三种平
- AUSU AFUDOS版本211 不需要验证强刷BIOS
- excel转KML模板
- x11proto-input-dev_2020.1-1_all.deb
- 118节点word图
- 2018年11月最新halcon各版本license
- bartender 11.0.1.3045 x64 破解文件
- 433M无线通信实验主从机程序
- win7安装vs2015时需要的两个win10证书:
- HCNA 最新云服务题库Word版本H13-811
评论
共有 条评论