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

矩阵键盘独立接口设计(Keil+Proteus)

前言

实验:通过4*4的矩阵键盘,按下某个按钮之后会在数码管上面显示对应的键号。(0~F)

基础操作参考这篇博客:

LED数码管的静态显示与动态显示(Keil+Proteus)-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_64066303/article/details/134101256

Keil

实验采用的是共阳极的接法。所以这个二进制的数据里面的元素都是共阳极的。

通过逐行的扫描,假设当前扫描第一行,对应的P1^0~P1^3中有0则说明是该行有键被按下,结合if判断可以确定是哪一列。

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned intsbit L1=P1^0;//定义列
sbit L2=P1^1;
sbit L3=P1^2;
sbit L4=P1^3;
//共阳极字符0~F的段码
uchar dis[16]={0xC0,0XF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};
uint time;
//延时,放键盘抖动
void delay(uint time);void main(void){uchar temp;uchar i;while(1){P1=0xEF;//行扫描初值1110 1111(扫描P1^4)for(i=0;i<4;i++){//逐行为低,按行扫描,一共4行if(L1==0)P0=dis[i*4+0];//判断第一列有无键被按下if(L2==0)P0=dis[i*4+1];//判断第二列有无键被按下if(L3==0)P0=dis[i*4+2];//判断第三列有无键被按下if(L4==0)P0=dis[i*4+3];//判断第四列有无键被按下delay(500);//延时temp=P1;//读入P1口的状态temp=temp|0x0F;//将P1^3~P1^0为1temp=temp<<1;//左移,准备扫描下一行temp=temp|0x0F;P1=temp;//为扫描下一行做准备}}
}				
//软件消除抖动,延时
void delay(uint time){uint i;for(i=0;i<time;i++);
}

Proteus

相信大家已经轻车熟路了,就直接放原理图了。

所需要的器件

元件名称Proteus关键字
51单片机AT89C51
复位按钮BUTTON
电阻RES
共阳极八位数码管7SEG-MPX1-CA
电源POWER

 

矩阵键盘

总结

继续加油!!!

相关文章:

矩阵键盘独立接口设计(Keil+Proteus)

前言 实验&#xff1a;通过4*4的矩阵键盘&#xff0c;按下某个按钮之后会在数码管上面显示对应的键号。&#xff08;0~F&#xff09; 基础操作参考这篇博客&#xff1a; LED数码管的静态显示与动态显示&#xff08;KeilProteus&#xff09;-CSDN博客https://blog.csdn.net/w…...

国产猫罐头可以作为长期主食吗?口碑好的顶级猫罐头推荐

我一直在分析和尝试国产猫罐头&#xff0c;我家猫已经吃了几十款了。今天&#xff0c;我想和大家分享一些关于国产猫罐头的经验和心得。 近年来&#xff0c;国产宠粮市场呈现出爆发趋势&#xff0c;各个猫粮商在配方、营养数据和包装上展开了激烈的角逐&#xff0c;无一不让我…...

大数据毕业设计选题推荐-营业厅营业效能监控平台-Hadoop-Spark-Hive

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...

CSS的Grid布局与Flex布局

Grid布局 Grid布局是一种CSS布局模式&#xff0c;它使用一个二维的网格系统来定位元素。它允许您将容器分为行和列&#xff0c;然后将元素放置在特定的行和列中。Grid布局非常适合创建复杂的网页布局和对齐元素。 以下是grid布局的基本语法&#xff1a; .container { displ…...

常见React Hooks 钩子函数用法

一、useState useState()用于为函数组件引入状态&#xff08;state&#xff09;。纯函数不能有状态&#xff0c;所以把状态放在钩子里面。 import React, { useState } from react import ./Button.cssexport function UseStateWithoutFunc() {const [name, setName] useStat…...

AlGaN/GaN HEMT 中缓冲区相关电流崩溃的缓冲区电位模拟表征

标题&#xff1a;Characterization of Buffer-Related Current Collapse by Buffer Potential Simulation in AlGaN/GaN HEMTs 来源&#xff1a;IEEE TRANSACTIONS ON ELECTRON DEVICES (18年) 摘要 - 在本文中&#xff0c;通过使用脉冲 I-V 测量和二维漂移扩散模拟研究了 Al…...

深入理解ClickHouse跳数索引

一、跳数索引​ 影响ClickHouse查询性能的因素很多。在大多数场景中&#xff0c;关键因素是ClickHouse在计算查询WHERE子句条件时是否可以使用主键。因此&#xff0c;选择适用于最常见查询模式的主键对于表的设计至关重要。 然而&#xff0c;无论如何仔细地调优主键&#xff…...

ElasticSearch中实际操作细节点

ElasticSearch中的细节点 文章目录 ElasticSearch中的细节点1、提示&#xff1a;1.1 ElasticSearch相关文档&#xff1a;1.2 Kibana的常用快捷键1.3 kibana的注释方式 2、term与terms的用法以及区别3、ElasticSearch中"index":"false","doc_values&qu…...

VCG 获取指定面片与顶点的索引

文章目录 一、介绍二、实现代码三、实现效果参考资料一、介绍 VCG Lib存在许多中方式对Mesh数据进行编码,其中最为常用的为顶点+三角形(比如三角形网格以及四面体网格)。VCG关于Mesh的定义如下所示: vcg::tri::TriMesh 包含顶点的容器类型(通常是std::vector),具体的顶点…...

开发知识点-Django

Django 1 了解简介2 Django项目结构3 url 地址 和视图函数4 路由配置5 请求及响应6 GET请求和POST请求查询字符串 7 Django设计模式及模板层8 模板层-变量和标签9 模板层-过滤器和继承继承 重写 10 url反向解析11 静态文件12 Django 应用及分布式路由创建之后 注册 一下 13 模型…...

Linux系统笔记参考

Linux系统笔记 一、基本命令 1、简单的几个命令 ls&#xff1a;显示指定目录下的文件目录清单&#xff08;list&#xff09; cd&#xff1a;切换目录&#xff0c;改变当前的工作目录&#xff08;change directory&#xff09; cd ~ 或 cd 切换到用户主目录&#xff08;用户家…...

AI:62-基于深度学习的人体CT影像肺癌的识别与分类

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…...

数字孪生智慧工厂3D无代码编辑工具提供强大、简单功能

相比传统的2D/2.5D&#xff0c;3d可视化场景脱颖而出&#xff0c;成为更多行业的首选&#xff0c;然而传统的3D可视化场景制作需要花费大量的人力财力及周期来创建复杂的3D模型和场景&#xff0c;对很多企业及个人来说是个挑战&#xff0c;3D可视化场景编辑器通过简单的拖拉拽&…...

python 为什么这么受欢迎?python的优势到底在哪里?

常言道:“流水的语言&#xff0c;铁打的Python”&#xff0c;目前它可以说是已经"睥睨天下&#xff0c;傲视群雄"了。它天生丽质&#xff0c;易于读写&#xff0c;非常实用&#xff0c;从而赢得了广泛的群众基础&#xff0c;被誉为"宇宙最好的编程语言"&am…...

Flutter转换png图片为jpg图片

1.需求 在xxx产品需求中&#xff0c;需要将png图片转为jpg图片。 2.引用库 image: ^4.1.3 Dart图像库提供了以各种图像文件格式加载、保存和操作图像的功能。 该库可以与dart:io和dart:html一起用于命令行、Flutter和web应用程序。 注&#xff1a;4.0是该库先前版本的主要修订…...

c++ grpc 第一个用例

一、linux 包管理工具安装 sudo apt-get update sudo apt-get install -y build-essential autoconf libtool pkg-config cmake sudo apt-get install -y libgflags-dev libgtest-dev sudo apt-get install -y clang libc-dev# 安装 gRPC C 相关依赖 sudo apt-get install -y …...

pandas笔记:读写excel

1 读excel read_excel函数能够读取的格式包含&#xff1a;xls, xlsx, xlsm, xlsb, odf, ods 和 odt 文件扩展名。 支持读取单一sheet或几个sheet。 1.0 使用的数据 1.1 主要使用方法 pandas.read_excel(io, sheet_name0, header0, namesNone, index_colNone, usecolsNon…...

【ES分词】

分词 #测试分词器 POST /_analyze {"text": "小米手机和华为手机都是国产mobilephone", "analyzer": "english" }不管analyzer是改成&#xff1a;standard还是chinese都无法实现中文分词。 处理中文分词一般采用IK分词器 安装链接&…...

Git设置显示中文

git config --global i18n.comitencoding utf-8 git config --global i18n.logoutputencoding utf-8 export LESSCHARSETutf-8...

数实结合的复杂电磁环境构建解决方案

数实结合的复杂电磁环境构建解决方案 数实结合的复杂电磁环境构建 目前无线收发设备面临的电磁环境愈发恶劣。为了检验设备在复杂电磁环境下的实际工作性能&#xff0c;需进行各种应用条件下的测试和试验。外场测试难以提供各种应用环境&#xff0c;存在测试周期长、成本高、难…...

Nature Reviews Cancer(IF=66.8)澳门科技大学张康教授等团队:人工智能推动多组学与临床数据整合在基础和转化癌症研究中的进展

01文献学习今天分享的文献是由澳门科技大学、中国医学科学院肿瘤医院张康教授等团队于2026年4月21日在肿瘤学领域顶尖综述期刊《Nature Reviews Cancer》&#xff08;中科院1区top&#xff0c;IF66.8&#xff09;上发表的研究“Advancing AI for multi-omics and clinical data…...

8400万骑手的好消息:中央出手,平台不能再随意压薪、卡算法了

大家好&#xff0c;我是LeafStay。职场 今天&#xff08;4月27日&#xff09;的头条&#xff0c;不是大模型&#xff0c;是这个&#xff1a;中共中央办公厅、国务院办公厅正式发布《关于加强新就业群体服务管理的意见》&#xff0c;人民日报今日头版刊发。这份文件&#xff0c;…...

终极麻将AI助手:Akagi实战部署与深度定制完整指南

终极麻将AI助手&#xff1a;Akagi实战部署与深度定制完整指南 【免费下载链接】Akagi 支持雀魂、天鳳、麻雀一番街、天月麻將&#xff0c;能夠使用自定義的AI模型實時分析對局並給出建議&#xff0c;內建Mortal AI作為示例。 Supports Majsoul, Tenhou, Riichi City, Amatsuki,…...

单调栈入门到精通:每日温度 柱状图中最大的矩形

目录 一、入门题&#xff1a;739. 每日温度&#xff08;中等&#xff09; 题目描述 核心思路&#xff1a;单调栈的本质 代码实现&#xff08;Java&#xff09; 复杂度分析 二、进阶题&#xff1a;84. 柱状图中最大的矩形&#xff08;困难&#xff09; 题目描述 核心思路…...

【收藏备用|2026年版】小白程序员必看!企业AI转型避坑+大模型从入门到实战全套指南

本文整理了华夏基石人工智能咨询专家潘晓蕾的企业AI转型实战干货&#xff0c;结合2026年大模型行业最新趋势&#xff0c;针对当前企业AI转型中最易踩的五大误区&#xff0c;搭配六大可直接落地的破解方案&#xff0c;融合真实万亿级企业转型案例&#xff0c;帮小白快速读懂企业…...

Google账号登录无标题-配置文件1

重启电脑之后发现需要谷歌登录的poner和chatGPT都是Google一直转圈圈&#xff0c;科学上网是没问题的&#xff0c;不然都不会到这一步 有搜到可能是DNS修改出现的问题&#xff0c;也贴上帖主解决问题的过程&#xff0c;不过我的问题不在这里(99 封私信 / 8 条消息) 谷歌账号登…...

别再手动“投喂”AI了:OpenClaw让大模型长出“手”和“眼”,而永动虾让它1分钟开跑

你有没有遇到过这种情况&#xff1a;明明让AI写一份周报&#xff0c;它却需要你一次次复制粘贴数据&#xff1b;想让AI自动处理几十份合同&#xff0c;但每次都要手动上传文件&#xff1b;甚至希望AI像人一样操作电脑、识别界面……但卡在“第一步”就寸步难行&#xff1f;本质…...

【FME应用3】FME在土地延包数据生产中的5大实战应用

FME在土地延包数据生产中的5大实战应用&#xff08;干货落地&#xff09; 摘要&#xff1a;农村土地承包到期延包工作核心难点在于存量确权数据杂乱、拓扑错误多、图属不一致、批量更新繁琐、成果标准化难。传统人工处理方式效率低、错漏多、标准不统一。本文结合一线土地延包数…...

AI辅助写作普及背景下高校为什么要查AI率:政策背景深度解读

AI辅助写作普及背景下高校为什么要查AI率&#xff1a;政策背景深度解读 关于高校查AI率政策&#xff0c;我系统研究过一段时间&#xff0c;也实际验证过各种说法。 这篇文章把关键的逻辑理清楚——知道了原理&#xff0c;遇到问题就知道该怎么处理了。实战方案也一起给出来。…...

VS Code Copilot Next 安全配置黄金清单:从本地缓存加密到企业代理审计日志,12项NIST SP 800-218合规实践

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;VS Code Copilot Next 自动化工作流配置安全性最佳方案 VS Code Copilot Next 在提升开发效率的同时&#xff0c;其自动化补全、代码生成与工作流集成能力也引入了新的安全边界挑战。为确保敏感上下文不…...