按键控制数码管显示数字

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

求单片机按键控制四位数码管显示电路和程序,7个按键按下,四位数码管...
K5 BIT P1.5 K6 BIT P1.6 K7 BIT P1.7 ORG 0000H LJMP 0100H MAIN: MOV SP,#70H MOV 60H,#0 ;给显示缓冲区送显示的初值 开始显示0000 MOV 61H,#0 MOV 62H,#0 MOV 63H,#0 LY: LCALL DISP ;调用显示子程序 显示00...

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

单片机 键盘控制数字的加减 在数码管上显示出数据
while (1){ uchar m;m=keyscan();bai=m\/100;shi=m\/10%10;ge=m%10;display(bai,shi,ge);} 再有就是楼上说的问题了,松手检测while(temp!=0xff);处 应该加显示函数,不加也能运行,但是按下按键时,没有显示,造成显示一闪一闪的,再有,函数返回 return keycounts;之后 ,就不再向下...

求51单片机的C程序,就是键盘控制这个一位七段数码管,按键按1按下数码管...
51单片机的C程序,4*4键盘控制这个八位七段数码管。可以参考一下 include<reg51.h> define uchar unsigned char uchar temp;int key1,key,disbuf;\/\/ 此表为 LED 的字模 0 1 2 3 4 5 6 7 8 9 a b c d e f unsigned char code LED7Code[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D...

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

单片机程序求修改,实现按键控制数码管0-9,急!!!
\/*实现定时器1方式1定时1S使得数码管加1显示功能*\/ if(key3==0) { delay(7);if(key3==0) { flag = ~flag;while(key3==0);} } } void T1_ini(){ TMOD=0X10;TH1=(65536-50000)\/256;TL1=(65536-50000)%256;EA=1;ET1=1;TR1=1;} void timer1() interrupt 3 { a++;...

8个按钮开关控制数码管显示0-7 (51单片机!) 要求:数码管在按钮没有...
ORG 0000H JMP BEGIN ORG 0030H TABLE: ; 共阴极数码管显示代码表 DB 3FH,06H,5BH,4FH,66H ;01234 DB 6DH,7DH,07H,7FH,6fh ;56789 ;--- BEGIN:MOV R4,#0 MOV A,R4 ;R4位标志值送A寄存器 AGAIN: MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P1,A...

汇编语言51单片机怎么用KEY 1控制数码管上显示的数字加1 KEY2控制数码...
2)显示部分;这个是按你取七段码的思路,递增时是以 0 为结束,那么为了让递减时也以 0 为结束;因此就在前面加 0;TAB:DB 00H,3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H,00H;所以递增时 R5=1,指向 3FH,递减时 R5=10H,指向 71H,3)按键部分...

开机时数码管显示数字0,通过K1键使共阳极数码管数字每次加1,通过K2键...
开机时数码管显示数字0,通过K1键使共阳极数码管数字每次加1,通过K2键使共阳极数码管的数每次减1?开机时数码管显示数字0,通过K1键使共阳极数码管数字每次加1,通过K2键使共阳极数码管的数字每次减1。数码管可以显示0~9十个数。用中断程序写。展开 单片机 ...

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

彘蚀18251407457问: 如何 用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...

彘蚀18251407457问: 51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示 -
红岗区伸筋回答: /*-----------------------------------------------名称:单个共阳数码管动态显示变化数字内容:通过循环检测P1口按键输入值,然后用数码管输出,没有按键按下时原值不变 ------------------------------------------------*/ #include<reg52.h> //包含头文件,一般情况...

彘蚀18251407457问: c语言 怎样用两个独立按键控制一位数码管显示 就是按下其中一个按键就加1 按下另一个按键就减1 0~99显示 -
红岗区伸筋回答: 你这个需要 两位的数码管 因为到99 首先判断按键 是否 有键按下 然后 数值 +1 按一下加一次同理设置另一个按键 -1 例如 if(按键1 == 0) { 延时;if(按键1 == 0) { 数值++;if(数值 == 99) 数值 =0 } }

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

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

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

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

彘蚀18251407457问: 多个按键控制多个数码管的显示. -
红岗区伸筋回答: 很简单 共阴 数码管共阴.连在P1口.P2^1作为按键.void main() { unsigned char a[2]=; char *p; p=a; //将a[0]的值传给p while(1) { if(P2^1==0) //键按下 { P1=p; //显示当前p指向的值 p++; //p指向后一位 if(*p=='/0') //如果指针P指向的值为'/0'则将P重新指向a的首地址 p=a; } } }

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

彘蚀18251407457问: 51单片机c语言设计,按键控制数码管,依次按下显示0到9循环 -
红岗区伸筋回答: #include<reg51.h> sbit k1=P1^0; #define uint16 unsigned int #define uchar unsigned char uchar code shuzu[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay() { uint16 i=1000;while(i--); } void main() { uchar n ; P2=0xfe; P1=0xff; ...


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