单片机课程设计:四位密码锁代码

  1. 定义包
#include<reg52.h>

/*****************************************************************************/
 
//变量定义

/*****************************************************************************/
sbit wei1=P3^1;
sbit wei2=P3^4;
sbit wei3=P3^5;
sbit wei4=P3^6;
//定义位选

sbit led=P3^0;
//定义led灯
//模拟开锁功能

sbit buzzer=P3^7;
//定义蜂鸣器 
//模拟提示\报警功能

unsigned char pwnum=0;			   
//密码位选
//用来记录此时的键值已经在哪个密码位 

bit err=0;
//密码错误标志位
//err=0时
//密码没有错误
//err=1
//进入密码有误状态,接下执行密码错误函数

unsigned char count=0;
//错误次数
//记录输入键值的错误次数

unsigned char key=12;
//键值
//默认12,一直进入数码显示中断

bit restart=0;
//密码重置标志
//restart=0
//普通输入状态
//restart=1
//密码重置状态

unsigned char rsright=0;
//密码修改标志
//rsright=0
//退出密码修改状态
//rsright=1
/*****************************************************************************/
 
//定义数组

/*****************************************************************************/
unsigned char password[]={
   0,0,0,0};	  
//密码数组
//记录密码

unsigned char keynum[]={
   14,14,14,14} ;
//键值数组
//记录按下的键值,组成一个四位数组

unsigned char key_mod[]={
   0xd7,0xee,0xde,0xbe,0xed,
						 0xdd,0xbd,0xeb,0xdb,0xbb,  
					   	 0xe7,0xb7}  ; 
//键模	
//0~9   
//重启键 退出重启键

unsigned char mod1[]={
   0x3f,0x06,0x1b,0x0f,0x26,
					  0x2d,0x3d,0x07,0x3f,0x2f,
					  0x39,0x76,0x3f,0x33,0xc0};
//低八位字模			
//0~9
//10:E	11: N   12:O   13:R   14:*	  

unsigned char mod2[]={
   0x00,0x00,0x22,0x22,0x22,
					  0x22,0x22,0x00,0x22,0x22,     
					  0x22,0x04,0x00,0x26,0x3f};		
//高八位字模	
//0~9
//10:E	11: N   12:O   13:R   14:*	  


  1. 函数包
#include<reg52.h >
#include<defination.h>
/*---------------------------------------------------------------------------*/
 
//ms级delay函数

/*---------------------------------------------------------------------------*/
void delay(int i){
   		
	unsigned char k;
	while (i
  • 7
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值