13:使用1个按键使静态数码管数值加1

使用1个按键使静态数码管数值加1

  • 1、按键检测
  • 2、完整的按键检测

1、按键检测

当第一次按下K1时,静态数码管显示数值为1,当第二次按下时,数码管数值变为2,以此类推…

#include <REGX51.H>sbit K1 = P1^0;/*******定义一个延迟函数******/
void delay (void)
{unsigned char k = 200;unsigned char j = 200;while(k--)while(j--);
}
/******定义一个10ms的延时函数*****/
void delay10ms(void)  
{unsigned char a,b,c;for(c=5;c>0;c--)for(b=4;b>0;b--)for(a=248;a>0;a--);
}unsigned char val[10]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0~9的数码表void main (void)
{unsigned char i = 0; //按下次数while(1){if(K1 == 0)   //当第一次按下K1{  delay10ms();   //消抖if(K1 == 0)   //第二次判断是否K1真的按下{i = i + 1;   //按下的次数为1if(i > 10) //若按下的次数超过10次{i = 0;   }P0 = val[i]; delay();		 }}}
}

此代码有个缺陷,当一直按着K1时,数码管数值会一直加1。

2、完整的按键检测

(1)按键事件就是按键操作过程中的不同状态切换
(2)一个完整的按键事件包括:按下事件(由高变低)、弹起事件(由低到高)
(3)一般都认为发生了一次完整的按键事件才算是用户操作了一次按键,程序才会去处理按键,所以在一次完整的按键事件中程序只会去处理一次按键。

#include <REGX51.H>sbit K1 = P1^0;unsigned char val[10]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0~9的数码表
unsigned char i = 0;//定义一个全局变量i/*******定义一个延迟函数******/
void delay (void)
{unsigned char k = 100;unsigned char j = 100;while(k--)while(j--);
}
/******定义一个10ms的延时函数*****/
void delay10ms(void)   
{unsigned char a,b,c;for(c=5;c>0;c--)for(b=4;b>0;b--)for(a=248;a>0;a--);
}void xianshi (void)
{i = i + 1;if(i>10){i = 0;}P0 = val[i];
}void main(void)
{unsigned char flag = 0;while(1){if(K1 == 0){delay10ms();if(K1 == 0){  if(flag == 0){xianshi();flag = 1;//k1按下flag变为1}}}else //K1弹起或者没有按下,flag变为0,为下次按下进入xianshi()函数满足条件{delay10ms();if(K1 == 1){flag = 0;}}//delay();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/664982.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年适合进入股市吗?北京想开股票账户找哪家证券公司交易佣金费用最低?

股市规则是指股票市场中的一系列规则和制度&#xff0c;用于监管和管理股票交易。以下是一些常见的股市规则&#xff1a; 证券法律法规&#xff1a;股市规则的基础是国家的证券法律法规&#xff0c;包括证券法、公司法等&#xff0c;用于规范股票发行、交易和上市等方面的法律规…

重生奇迹MU套装怎么配

汉斯的皮套装&#xff1a;冰之指环,皮护腿,皮盔,皮护手,皮靴,皮铠,流星槌 汉斯的青铜套装&#xff1a;青铜护腿,青铜靴,青铜铠 汉斯的翡翠套装&#xff1a;雷之项链,翡翠护腿,翡翠盔,翡翠铠,远古之盾 汉斯的黄金套装&#xff1a;火之项链,黄金护腿,黄金护手,黄金靴,黄金铠 …

暴雨信息:算法无处不在,但切忌“算法为王”

在这个信息时代&#xff0c;算法无处不在&#xff0c;几乎触及我们工作生活中的每个角落。我们似乎已经被算法包围&#xff0c;很多人担心社会的运转会“以算法为王”&#xff0c;人类会成为“云奴隶”。其实&#xff0c;尽管算法影响广泛&#xff0c;但它并不决定一切。算法本…

代码随想录算法训练营DAY11 | 栈与队列 (2)

一、LeetCode 20 有效的括号 题目链接&#xff1a;20.有效的括号https://leetcode.cn/problems/valid-parentheses/ 思路&#xff1a;遇到左括号直接进栈&#xff1b;遇到右括号判断站顶是否有匹配的括号&#xff0c;没有就返回flase&#xff0c;有就将栈顶元素出栈&#xff1…

FANUC机器人示教器的菜单变成了图标,如何改成列表的形式?

FANUC机器人示教器的菜单变成了图标&#xff0c;如何改成列表的形式&#xff1f; 如下图所示&#xff0c;开机后按下MENU菜单键时&#xff0c;发现原来的列表形式变成了菜单图标的形式&#xff0c;同时在按F1-F5键时&#xff0c;提示&#xff1a;HMI模式-键不可用&#xff0c; …

向日葵案例解析:无外网接入,医疗设备如何进行远程售后运维

随着医学科学以及生物工程技术的高速发展&#xff0c;医院对于高端医疗设备如MR、CT、B超等高科技成像设备和放射治疗设备的需求激增。医学影像检查作为一种重要的手段&#xff0c;在许多疾病确诊过程中发挥着至关重要的作用。检查结果正确与否&#xff0c;直接影响临床医生对疾…

JS 引导动画

前言 引导动画是程序在某一时刻播放的动画&#xff0c;通常用于向用户介绍程序的功能和特点。 实现效果 实现方式 引导动画的实现方式有很多种&#xff0c;这里我使用的是 CSS 的 clip-path 属性。 技术选型 这里我为什么要选择 clip-path 属性而不是 mask 属性呢&#xf…

阿狸与小兔子的奇幻之旅

在很久很久以前&#xff0c;有一个遥远的国度&#xff0c;这个国度里生活着各种各样的动物&#xff0c;它们和谐共处&#xff0c;幸福快乐。在这个国度里&#xff0c;有一只聪明伶俐的小狐狸&#xff0c;名叫阿狸。 一天&#xff0c;阿狸在森林里散步时&#xff0c;遇到了一只正…

面试经典150题(96-100)

leetcode 150道题 计划花两个月时候刷完&#xff0c;今天&#xff08;第五十五天&#xff09;完成了5道(96-100)150&#xff1a; 96.&#xff08;74. 搜索二维矩阵&#xff09;题目描述&#xff1a; 给你一个满足下述两条属性的 m x n 整数矩阵&#xff1a; 每行中的整数从左…

关于网络面试题汇总

什么是TCP/IP五层模型&#xff1f;它们的作用是啥&#xff1f;基于TCP/IP实现的应用&#xff08;层协议&#xff09;有哪些&#xff1f; TCP/IP五层模型&#xff0c;从上向下分别是&#xff1a; 应用层&#xff1a;应用程序本身&#xff0c;应用层的作用是负责应用程序之间的…

【Git系列】修改远程分支名

场景&#xff1a;修改一个别人都在使用的远程分支名称&#xff0c;该怎么处理呢&#xff1f; 思路&#xff1a;基于当前要改名的分支创建一个新的一摸一样分支&#xff0c;写好新建分支名作为修改名&#xff0c;然后推送到远程&#xff0c;接着删除远程要改名的旧的分支&#x…

vue3项目中如何实现模块的自动导入

vue2和vue3一个很重要的代码区别就是从vue2对象化完整引入到函数化按需引入。从而解决了需要什么就引入什么的按需引入操作功能。 然而这一代码操作模式却也引出了后续繁琐代码的书写结构。 虽然现在绝大数开发工具都对未引入的内容进行语法错误提示&#xff0c;并提供快速修复…

数据结构篇-05:哈希表解决字母异位词分组

本文对应力扣高频100 ——49、字母异位词分组 哈希表最大的特点就是它可以把搜索元素的时间复杂度降到O(1)。这一题就是要我们找到 “字母异位词” 并把它们放在一起。 “字母异位词”就是同一个单词中字母的不同组合形式。判断“字母异位词”有两个视角&#xff1a;1、所含字…

全排列 - 三种形式

全排列 - 三种形式 思路 - 回溯 「路径」&#xff0c;记录已经做过的选择「选择列表- 多叉树」&#xff0c;表示当前可以做出的选择&#xff0c;在前序和后序位置操作。 前序位置&#xff0c;做选择进入下一层决策树后序位置&#xff0c;撤销选择 「结束条件」 遍历到树的底层…

全面认识DOS系统

目录 一、DOS系统的功能 1.执行命令和程序&#xff08;处理器管理&#xff09; 2.内存管理 3.设备管理 4.文件管理 5.作业管理 二、文件与目录 三、文件类型与属性 1.系统属性&#xff08;S&#xff09; 2.隐含属性&#xff08;H&#xff09; 3.只读属性&#xff08…

初谈类和对象

文章目录 前言类的引入类的定义类的两种定义方式成员命名规则 类的访问限定符及封装访问限定符面试题封装 类的作用域类的实例化类对象模型计算类对象的大小 this指针this指针特性 前言 C语言是面向过程的&#xff0c;关注点是过程&#xff1b;而C面向的是对象&#xff0c;关注…

mysql-FIND_IN_SET查询优化

优化前 SELECTuser_id,user_name,real_name,PASSWORD,real_org_id,real_org_name,real_dept_id,real_dept_name, STATUS FROMsys_user WHEREis_del 0 AND find_in_set( lilong, login_user_account ) 优化后 SELECTuser_id,user_name,real_name,PASSWORD,real_org_id,real…

回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测(SE注意力机制)

回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&#xff09; 目录 回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&#xff0…

如何处理我们的文本数据成构建词表

我们拿到在拿到一堆语料数据&#xff0c;或者是在网络中爬取下来的文本数据如何处理成为模型能够训练的数据呢&#xff1f;这里有我们先经过停用词和按字分词的处理之后&#xff0c;得到的问答对文本数据&#xff0c;input_by_word.txt 和 target_by_word.txt 。其中&#xff0…

2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测

2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测 目录 2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测预测效果基本介绍程序设计参考资料 预测效…