自己写了一个按键控制数码管程序,按键一次数码管显示加一,加到255后无法再加了,到了这个地步我知道肯定要多加一个寄存器来计数,怎么想也想不出加了寄存器以后要干什么活,我试过判断第一个寄存器是否等99是清零寄存器第二个寄存器加一然后返回到第一个寄存器,可是这样不行,大神们帮帮我吧,最后贴出程序咯,最好不要用中断,因为我没学,基础很重要!谢谢啦
51单片机汇编语言按键控制数码管加一加到999
对于汇编:可以定义三个存储区,如30H、31H、32H,都是十进制的,按键按下时30H加1,当加到10时,31H加1,当31H加到10时,32H加1,即可 而显示函数可以放在主函数中,将三个存储区分别扫描送出去即可 对于C语言:定义char 型最大256不行,那就定义unsigned int 就够用了,按键按下就让它++,...
51单片机汇编语言按键控制数码管加1加到999
如果寄存器a == 100,{寄存器b=b+1;寄存器a = 0} 这样就可以了,b中的1代表100,a中的1就是1
c51单片机怎么用两个按键控制两个数码管的加减,加到99就好,求程序_百 ...
1、首先先在proteus画出仿真图,方便仿真程序。2、接着来编写程序,先来写入头函数。2、根据自己在proteus画的图,定义一下管脚根据你的原理图进行编写。3、然后写一个延时函数,来调节流水灯的时间间隔延时时间自己定义。4、下图就是主函数,包括流水灯的反复循环和j流水灯的方向。5、检查没有错误,...
单片机C51实现按键一次数码管加1程序问题。高手进。
设计一个单片机C51程序,实现功能是,1、按KEY1只有红灯亮,KEY2只有黄灯亮,KEY3只有绿灯亮。2、开始右数码管显示0,每按KEY1一次数码管显示加1,至9后再循环。先已经编好程序,第一个实现,但第二个总弄不对。感觉问题很简单,就是差一点,高手帮我看一下。... 展开 #include "key.h"sbit LED_RED=P3^0;s...
51单片机按键控制数码管数字加减问题
void keyScan() \/\/1*5按键扫描函数 { P3 = P3 | 0xf8; \/\/P3高5位置1,设置为输入,默认为高电平 0xf8=11111000 keyValue = P3;if((keyValue & 0xf8) != 0xf8) { \/\/判断是否有按键按下 delay(20); \/\/延时肖抖 keyValue = P3;if((keyValue & 0xf8) != 0xf8) ...
如何用51单片机编程用定时器控制数码管从0开始计时到99999999?
单片机定时50ms,到20次就加1,一直往上加,再去判断加到99999999为0,
51单片机设计一个程序:按键每按一次,数码管加1;当数码管加到9后又...
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;while(1){ if(k1==0){ if(n>=9) n=0;else n++;P1=shuzu[n];while(!k1);delay();while(!
请问C51 8个一起的数码管 按下按钮只控制1个管加1,其他的还继续显示别...
呵呵,if(KEY!=0xff){ if(KEY==TEMP){ if(flag==0){ flag=1;if(TEMP==0xfe)\/\/用散转可执行各功能 { num++;if(num==100)num=0;} } } else TEMP=KEY;} else flag=0;\/\/TEMP=0xff;}
求救:c51单片机按键每按一次同时数码管显示数字加一
如果会用指针 int *P;P=Shuzu; \/\/指针指向数组!用外部中断,每中断一次,中断服务程序将数组元素加一P0=Shuzu[ax++](或指针加一:P0=*P++)以上假设P0口驱动数码管!至于数码管使用的是共阳还是共阴,就把相对的数值存在数组中!- 外部中断0的中断程序入口 void TI_0() interrupt...
51单片机按键加减清零汇编语言编程
CALL CONVTCALL PLAYCALL KEY_PROGJMP MAIN1KEY_PROG:CALL K_SCAN ;键扫描MOV A,K_NEWCJNE A,K_OLD,KEY_P1JMP KEY_P_ENDKEY_P1:MOV K_OLD,ACJNE A,#1, NEXT_K1AJMP LOOP1NEXT_K1:CJNE A,#2, NEXT_K2AJMP LOOP2NEXT_K2:CJNE A,#3, KEY_P_ENDAJMP LOOP3LOOP1:...