按键,然后用数码管显示数字,并且还可以通过另外的按键实现加1和减1,怎么弄啊?

作者&投稿:罗皇 (若有异议请与网页底部的电邮联系)
单片机如何实现用一个按键一直按下控制数码管数字连续加1?~

判断按键按着没放,就使数码管显示的数字连续加1就可以了,不过,加1次需适当延时几十毫秒

什么型号单片机啊,数码管和LED型号是什么啊,你是要程序还是硬件啊,都没问清楚,别人怎么回答

1,显示子函数写好,并可以正常显示(静态显示正常)
2,定义一个全局变量作为你要显示的数
3,写一个按键子函数,来改变你定义的数
4,按键处理好后 加上显示函数(不然会有闪烁或显示不清晰)
程序模版如下:
display(unsingned char x);//显示函数代参数
unsingnde char NUM; //定义全局变量
key_scan()//按键处理函数

if(key1==0) delay(10) if(key1==0)//消抖
{NUM++;while(key1==0) display(NUM);}//加入显示函数
这是加键程序
减程序类似


将这个key_scan()函数程序放入主程序里循环


用一个按钮控制一个数码管,实现按一下键数码管加一,从0到9依次循环
设计电路和代码,用数码管显示按键按下次数。要求用一个按键和一个数码管。数码管显示从0到F。再循环。

如何让单片机按下键时数码管显示的值和点阵屏显示一致的数字_百度知 ...
1、定义数码管和点阵屏的接口。2、定义按键和数码管、点阵屏驱动的接口。3、编写按键按下的处理函数。4、编写数码管和点阵屏驱动的函数。5、在主程序中调用按键按下的处理函数和数码管、点阵屏驱动的函数。

单片机4*4矩阵键盘两位数码管显示0—16
步骤如下:1、将4x4矩阵键盘连接到单片机上,并将数码管连接到单片机上。2、编写程序以实现键盘扫描和数码管显示。3、使用行扫描法识别键盘输入。将行线设置为高电平,然后逐行扫描列线。4、使用两位数码管显示0-16的数值。将数码管的段选线连接到单片机的GPIO引脚上,并将位选线连接到另一个GPIO引脚...

51单片机怎样用键盘控制数码管显示
1.首先,编写代码并点亮数码管。2.在编写源代码之后,确保原始代码是正确的。3.确认代码正确后,进入下一步,就是在这一行代码(箭头所指)中,删除这四个单词。4.然后如图所示,四个单词已被删除,只要修改相应的代码编号即可。5.表示数字0的代码在这里进行了更改,如图所示。6、最后写代码,将生成的...

一个按键怎么控制数码管显示不同的字符
这个要加程序的,按一下按键,程序中变量自加1,然后根据程序变量的值,显示相应的字符。例如:1 MP3 2 CD 3 DVD,如果当前变量值为3,下一次按键有效时,应直接赋值为1,这样就形成了循环

单片机按键控制数码管显示
1、按键子程序:实现按第一个键使键值keyvalue=1,第二个键使键值keyvalue=2,第三个键使键值keyvalue=3 2、显示子程序 定义3个字节的显示缓存,如dispbuf1,dispbuf2,dispbuf3 使dispbuf1的数字显示在第一个数码管上,dispbuf2的数字显示在第2个数码管上,dispbuf3的数字显示在第3个数码管上 3...

51单片机怎么用按键控制一个数码管,按一下显示一
\/*---名称:单个共阳数码管动态显示变化数字内容:通过循环检测P1口按键输入值,然后用数码管输出,没有按键按下时原值不变---*\/#include\/\/包

...按键有三个,用数码管显示温度,怎么写啊,我好想知道啊,请大家帮帮...
我就当你有4个数码管了。3个按键,作用分别是:1:确认,2:向上\/修改上限,3:向下\/修改下限 开始的时候:按键1没用,按2就修改上限,按3就修改下限。你可以规定,比如都没设定时显示:FFFF 比如设定过上限了,是30度,就显示30FF 按了2之后:进入修改界面,按2就加温度,按3减温度,按1保存...

...单片机输入显示系统,要求每按一下按键数码管显示数据加1(数码管初 ...
\/\/数码管显示 \/\/ 显示方式为动态扫描,视觉暂留原理 void Display( uchar Num )\/\/ *p指向Main函数中的数组ShowNum的首地址 { P0 = DataChar[ Num ];\/\/ 向P0赋段码值 DelayNms(2);\/\/ 短暂的延时 P0 = 0x00;\/\/ 让数码管熄灭,否则会造成数字重叠 ...

写一程序,要求按什么键就在数码管上显示其键值
;实验任务:用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3作列输入线,以P1.4-P1.7作行输出线.; 在数码管上显示每个按键的"0-F"序号,使用使共阳码管显示对应的键值.;;;程序初始化 ;LEDOUT EQU P2 KEYMATRIX EQU P1 SCANCODE EQU R2 KEYCODE EQU R3 COUNT...

湘潭县18942817832: 51单片机中如何按下按键时数码管正常显示而不闪烁,并且实现长按连续 -
秘俩莱帕: 你好,我也遇到这样的问题,经过一周的研究,问之前的前辈得出结果,希望对你有帮助 char scan_k(char k) { int i=0;//定义一个变量用来累计长按的时间 if((KEY1&&KEY2&&KEY3&&KEY4&&KEY5&&KEY6)==0)//如果有按键按下 { while(!KEY...

湘潭县18942817832: 51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示 -
秘俩莱帕: /*-----------------------------------------------名称:单个共阳数码管动态显示变化数字内容:通过循环检测P1口按键输入值,然后用数码管输出,没有按键按下时原值不变 ------------------------------------------------*/ #include<reg52.h> //包含头文件,一般情况...

湘潭县18942817832: 按键后经单片机后用两位数码管显示出来如何编程 -
秘俩莱帕: 很简单 比如你定义的数是AA,汇编的是这样写的:MAIN;JB P3.0 ,S1 MOV A, AA INC A MOV AA,A S1:JB P3.1 ,MAIN MOV A, AA DEC A MOV AA,A JMP MAIN C语言的 if(P3^0==0){ delay(50); if(P3^0==1){ aa++; if(aa>=10)aa=0; }} if(P3^1==0){ delay(50); if(P3^1==0){ aa++; if(aa}}

湘潭县18942817832: 用按键分别按下举行键盘上面的四个键,并在数码管上显示 -
秘俩莱帕: if(P3==0x11||0x21||0x41||0x81)--错误!应写成:if((P3==0x11)||(P3==0x21)||(P3==0x41)||(P3==0x81)) 下面几句,还有错.

湘潭县18942817832: 如何 用c语言 使按键控制数码管显示数值??? -
秘俩莱帕: //注意;P0口要加上拉电阻 . #include<reg52.h> #include<intrins.h> #define uint unsigned int #define uchar unsigned char sbit KEY=P1^0;uchar aa,num,num1,flag; uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x...

湘潭县18942817832: 单片机 键盘控制数字的加减 在数码管上显示出数据 -
秘俩莱帕: 是主函数出了问题,你的键盘扫描程序是有返回值的函数,返回的值是指函数的运算结果,不是对于keycounts这个变量的,所以你需要把主函数改成 while (1){uchar m;m=keyscan();bai=m/100;shi=m/10%10;ge=m%10;display(bai,shi,ge)...

湘潭县18942817832: 用单片机89C51实现数码管的显示,要求0 - F任意按下一个键,用4个数码管显示它的二进制值,并滚动显示 -
秘俩莱帕: 这个很容易,我不给你程序,给你 个建议吧,设置是十六个键,设一个变量'i'每个键按下要存储'i'值,分别为0000,0001......1111.按下k1之后判断前面所存储的值是多少然后给显示出来 显示数码应该会的吧,用动态扫描数码管,四个就可以了,k2更好办,按k2之后执行将i值清零.这个是入门,入门之后你就会喜欢编程了

湘潭县18942817832: 51单片机 数码管 想让数码管显示数字,然后我按键可以增加数字,但是我编的每按键时,就会全灭,直到 -
秘俩莱帕: 你肯定是用了按键等待的语句: while(!key); 需要把它改成 while(!key) {display(); } 就可以了!!!! 正确请采纳…………

湘潭县18942817832: 用51单片机,怎么让数码管显示一串矩阵键盘按下的键代表的数(0~f)? -
秘俩莱帕: 这种显示方式就和手机拨号时,按下号码的显示是一样,第一个数码先在右边显示,再按键,依此向左移动显示.要是6位数码管,就保留6位显示了,按键超过6位时,先按的自然丢掉了.

湘潭县18942817832: 请问单片机中要怎么用按键控制数码管显示的模式..用C语言编程.. -
秘俩莱帕: 可以用按键中断,也可以用按键查询. 用按键中断:如果按键按下就进入中断子程序里,然后在中断子程序里改变显示模式即可 按键查询:用while 语句查询某个按键是否按下,如果未按下则继续执行子程序,如果按键按下则跳入到事先写好的子程序,在子程序里改变显示模式希望能帮到你!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网