独立按键控制数码管

作者&投稿:戢尝 (若有异议请与网页底部的电邮联系)

怎么用按键控制数码管显示和关闭
你这程序应该是个倒计时吧,按键程序都没有啊。要关闭数码管,首先要知道你的显示方式,现在从你的位码看,应该是低电平有效吧,那就是在位选为高的时候就不显示了,这样就好办了啊,两个按键,那就直接独立按键,检测按键后,是关闭的那个按键按下,那就把位选全部置位,这样就不现实了,要显示的...

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

求单个按键控制数码管显示(动态)1234的程序,或者帮我改下下面这段数码...
程序如下 include<reg52.h> sbit k1=P3^2;bit dis;\/\/显示标志位 unsigned char code ledtab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};unsigned char ledbuf[]={1,2,3,4};void delay(unsigned char x){ unsigned int j;while(x--)for(j=400;j>0;j--);}...

51单片机中独立按键控制数码管时当每个键按下去之后松开又恢复原状态...
只要程序和硬件没有问题,那么每一个独立按键按下,都应该显示该独立按键所对应的东东,不应该恢复到之前的显示值。所以出现你所说的状态,一种情况是程序有问题,另一种情况是硬件有问题。具体如何要看你的代码才能确定。

单片机 怎样用两个独立按键控制一位数码管显示,就是按下其中一个按键...
很简单 比如你定义的数是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...

51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示_百度...
1、首先,要把代码写好,点亮数码管。2、代码写完后,要确认原先写好的代码是不是正确的。3、确认代码无误后,进入下一步,就是在这一行代码(箭头所指)的地方,将这四个字删去。4、然后如图所示,四个字已经删去,只要改成数字相应的代码即可。5、这里改成的是代表数字0的代码,如图所示。6、...

独立按键按一下只亮一个数码管怎么回事
1、独立按键电路故障,按键存在着接触不良或已经损坏,导致按键未能正常工作,未触发计数逻辑电路。2、数码管显示电路故障,数码管的驱动电路可能存在着故障,导致只有一个数码管能够正常显示。3、控制器逻辑电路故障,控制器中的计数逻辑电路可能存在故障,导致只能够显示一个数码管。

用51单片机用4个独立按键控制8个数码管的加减和
用4个独立按键控制8个数码管的加减和,你这是实物开发板吧,数码管电路中8个数码管的位控制端LED1~LED8接哪啦,还应该有位控电路的,估计是用一片74HC138(或74LS138)控制的,这位控未知,不能写程序。要求第三位数码管显示 + 号,这实现不了,数码管是无法显示 + 号的。

单片机按键控制数码管,在无按键10秒后,熄灭数码管,给个思路
定时中断中比如50MS 里面 { COUNT++ ;IF(COUNT》+200)灭数管 } ;;在每个按键有效中 COUNT=0; 。。。原理就是你有按键按下,计数COUNT都会被清0。如果10S没有按过,定时中断中的COUNT肯定会到200,这样。。。

按键控制数码管显示数字
P0.按键P3.3,P3.4,P3.5.请

王放13983443410问: c语言 怎样用两个独立按键控制一位数码管显示 就是按下其中一个按键就加1 按下另一个按键就减1 0~9显示 -
山城区血旨回答: 这个实现是很容易的,定义两个键,一个为加,一个为减,数码管因为只有一个,所以可以用静态显示.程序和仿真图如下: #include<reg51.h> #define uchar unsigned char uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f}; sbit ...

王放13983443410问: 单片机上用两个按键独立控制两个数码管,怎样使在按下一个按键使对应的数码管改变后,另一个数码管亮着 -
山城区血旨回答: 给你个思路,在while循环里要实时刷新数码管显示,按键的判断放在定时器里,设一个变量,当按键按下时累加定时器中断次数,然后在主函数里判断变量值,超过一定数量则判断为按下,这时数码管计数变量++,当然你还要设按键抬起标志,仔细思考一下,肯定能写出来

王放13983443410问: 单片机可以实现一个独立按键控制数码管多个数字吗? -
山城区血旨回答: 一个按键控制4个数码管显示4个数,最简单的方法是按一次键计一个数,最大数是9999,即可显示四位数.再简单点,按一次键开始自动计数,最大数还是9999,再按一次键停止计数.这样控制程序好写.长按和短按对于初学者有点难,当然了,要能写出程序来是最好啦.

王放13983443410问: 51单片机控制数码管显示时钟,独立按键怎么弄 -
山城区血旨回答: 独立按键处理起来是非常简单的,一般都是IO口单独控制,所以只需要消抖和判断按键按下抬起状态就好.比如: sbit key=P1^0; if(key==0) {delay(10);if(key==0){keyval=1;while(key==0);} }

王放13983443410问: 一个独立按键控制数码管动态显示程序亮灭c语言 -
山城区血旨回答: 有点类似,你看看吧: #include<reg52.h> #include<intrins.h> //反转法控制按键 #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; sbit wela=P2^7; uchar a,b,c,d,keya,keyb; uint e; uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x...

王放13983443410问: 使用89C51单片机单个按键控制一个数码管,当按键按下时数码管显示1,再次按下时显示0. -
山城区血旨回答: SBUF=dispcode[num0];//第回1位答 while(!TI); TI=0; led0=0; delay(2); led0=1; SBUF=dispcode[num1];//第2位 while(!TI); TI=0; led1=0; delay(2); led1=1; SBUF=dispcode[num2];//第3位 while(!TI); TI=0; led2=0; delay(2); led2=1;

王放13983443410问: 求单片机按键控制数码管程序 -
山城区血旨回答: 实现方法有挺多种的,下面介绍一种: 1、按键子程序:实现按第一个键使键值keyvalue=1,第二个键使键值keyvalue=2,第三个键使键值keyvalue=3 2、显示子程序定义3个字节的显示缓存,如dispbuf1,dispbuf2,dispbuf3使dispbuf1的数字显...

王放13983443410问: 51单片机按键对数码管的控制 -
山城区血旨回答: /*----------------------------------------------- 名称:单个共阳数码管动态显示变化数字 内容:通过循环检测P1口按键输入值,然后用数码管输出, 没有按键按下时原值不变 ------------------------------------------------*/#include<reg52.h> //包含头文件,一般情况不...

王放13983443410问: 51单片机中用数码管做秒表时怎么用一个独立按键控制开始和暂停,即第一次按下计时,在按下时暂停? -
山城区血旨回答: 其实,控制秒表的启动和停止,很简单.要做秒表,一定要用定时器吧,假如用T0,那开始初始化时,不写TR0=1,先不启动.当按一下键,再启动,TR0=1,就开始计时了.再 按一下键,就停止,TR0=0,就不计时了.程序好写,先 定义一个按键 sbit key=P1^1; //具体是哪个 键,你自己改 主程序中,判断按键和启动/停止 if(key==0) { delay(); //具体延时时间自己定 if(key==0) { TR0=!TR0; //每按一次,取反 一次 while(key==0); } }

王放13983443410问: 编写程序实现独立按键控制一位共阳极数码管0 - 5的显示,按键使用P1.1引脚.急啊~~~~ -
山城区血旨回答: #include<reg51.h>#define uchar unsigned char uchar ledtab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88}; sbit key=P1^1; main() { uchar val=0; while(1) { P0=ledtab[val]; if(key==0) { while(key==0); val++; val%=6; } } }


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