当前位置: 首页 > news >正文

【51单片机6位数码管密码锁】2022-10-15

缘由六位密码器设计连接LED-嵌入式-CSDN问答
矩阵51单片机密码锁,回复:https://bbs.csdn.net/topics/392713242_智者知已应修善业的博客-CSDN博客

#include "REG52.h"
unsigned char code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0,64,15,56}; //共阴0~F消隐减号
unsigned char code ShaoMiaoZhi[]={1,2,4,8,16,32,64,128,254,253,251,247,239,223,191,127,238,237,235,231,222,221,219,215,190,189,187,183,126,125,123,119};//独立按键16阵
sbit ledL=P3^6;
sbit ledH=P3^7;
unsigned char JianPanShaoMiao(/*独立按键16扫描法*/)
{	unsigned char H=15,L=240,Ys=0,zhi=H+L;P1=zhi;if(P1!=zhi){while(++Ys);zhi=P1;while(zhi==P1);return zhi;}else P1=zhi+1;if(P1!=~zhi){while(++Ys);zhi=P1;while(zhi==P1);return zhi;}return (H+L);
}
void smxs(unsigned char mz, unsigned char w)
{unsigned char Xd=0;P0=~0;P0=~smgduan[mz];P2=w;while(++Xd);
}
void main()
{unsigned char sm=0,jz=0, mm[12]={0,0,0,0,0,0,1,2,3,4,5,6},w=0;while(1){smxs(mm[0],1);smxs(mm[1],2);smxs(mm[2],4);smxs(mm[3],8);smxs(mm[4],16);smxs(mm[5],32);sm=JianPanShaoMiao();jz=0;if(sm<255){while(sm!=ShaoMiaoZhi[jz])++jz;if(w<6){mm[w]=jz;++w;}else{if(jz>9)while(mm[w]==mm[w+6])--w;if(w==255){w=ledL=0;ledH=1;}else {ledL=1;w=ledH=0;}}}}
}

http://www.dtcms.com/a/311702.html

相关文章:

  • 入门MicroPython+ESP32:安装逗脑IDE及驱动
  • 深入 Go 底层原理(十一):Go 的反射(Reflection)机制
  • ESP32 外设控制基础:GPIO 应用详解与输入输出案例
  • Text2SQL:如何通过自然语言直接获取数据,打破技术壁垒?
  • ventoy 是一个非常棒的开源工具,可以制作多系统的usb启动盘
  • Allegro降版本工具
  • Python 全局解释器锁
  • 如何静态链接 YARA 库,实现免依赖的独立可执行文件部署
  • MySqL(加餐)
  • 代码随想录Day36:动态规划(最后一块石头的重量 II、目标和、一和零)
  • 在线问诊系统源码解析:图文+视频双模式架构开发全攻略
  • 【07】VisionMaster入门到精通——Blob分折
  • IDM下载失败排查
  • 北京-4年功能测试2年空窗-报培训班学测开-今天来聊聊我的痛苦
  • 浪漫温柔的表白
  • 在linux(ubuntu)服务器上安装NTQQ并使用
  • 链表【数据结构】
  • UDP受限广播地址255.255.255.255的通信机制详解
  • 信号产生机制全解析:从硬件异常到软件触发的深度探索
  • sc-atac的基础知识(0)
  • Balabolka软件调用微软离线自然语音合成进行文字转语音下载安装教程
  • 医疗AI中的马尔科夫链深度应用与Python实现
  • Gemini CLI
  • Linux进程间通信——system V信号量
  • linux 启动流程?
  • C++刷题 - 7.27
  • 深度学习-模型初始化与模型构造
  • 元宇宙重构未来交通新图景
  • 对过去一年毕业求职季的简单复盘
  • Gossip 协议