比如说就是第一次按下5,在LCD上的第一个位置显示5,第二次按下3,在第二个位置显示3,等等。
再怎样再设置一个变量,记录下这个数是多少呀?
看看我的这个行不行?
追答http://wenku.baidu.com/view/31d9760202020740be1e9bfb.html可以参考一下
追问是在计数,但是当有键按下显示时却是同一个数字呀,显示不对呀
追答那可能是你的显示程序哪里有问题,再检查一下
...数码管从0开始加1,加到9,用c语言单片机编写并且要用计数器的方法编写...
} }}void main(void){ uchar s1; s1=0;P0=num[s1]; while(1){ if(P32==1)\/\/如果p32是高电平 { delay50us();\/\/延时防抖动 if(P32==1) { while(P32); \/*这是个很常用的处理方法,P32=1则会一直在循环里,P32=0则进行下一步,在串口双机...
51单片机c语言设计,按键控制数码管,依次按下显示0到9循环
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;while(1){ if(k1==0){ if(n>=9) n=0;else...
关于单片机温度控制系统C语言程序中的按键设置程序,请求详细的介绍下按...
keyflag应该是判断某个按键按了几次,不安的时候为0 if(KeyFlag == 0){ } 按一次时执行 else if(KeyFlag == 1){ if(BUTTON_add == 0 && KeyLock ==0){ } if(BUTTON_reduce == 0 && KeyLock ==0){ } 按二次时执行 else if(KeyFlag == 2){ if(BUTTON_add == 0 && KeyLock...
在单片机中怎样检测一个按键的击键次数
楼上讲得很对,就是先设一个变量,比如a,然后检测是否有按键按下,当有键按下时,就跳到相应的程序,执行a++,但是要注意一点,就是在按键按下的时候要加个延时函数去抖,在加一个语句判断按键是否按下(比如C语言的while语句),只有这样,才能正确判断按键按下的次数。
51单片机c语言设计,按键控制数码管,依次按下显示0到9循环?
假设你的是共阳极数码管,P0接数码。按键接P2^0;include<reg52.h> typedef unsinged int uint;sbit key=P2^0;unsigned char tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};void denay(uint x){ uint i,j;for(i=x;i>0;i--)for(j=110;j>0;j--)} void main(){ u...
怎么用单片计C语言编出两个按键控制一位数码管,一个按健控制0至9就是...
可以不用中断。 你只要写个段码的数值,然后在数组里加一个变量。比如“ uchar dm[]={0xc0,0xa4,0xf9...}“ 每次按下一个键数组里的变量就加一。 做按键的时候要记住去斗。 归0的按键就更好写了,只要按下数组里的变量等于0就行了。 希望能帮到你, 亲~...
单片机c语言按键每按一次加一一直到加到100程序怎么写?求高手指点...
sbit P21=P2^1;sbit KEY=P2^2;uchar ge,shi;uchar code tab[ ]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,};void delay_ms(unsigned int ms) \/\/1ms延时 { uchar a;while(ms--)for(a=123;a>0;a--);} void display();void main(){ while(1){ display();w...
51单片机C语言程序4个独立按键实现对数码管数字显示的加减清零等
include <reg52.h>\/\/P0是数码管。P1是LED.P2是按键sbit KEY_OUT_1 = P2^3;sbit KEY_OUT_2 = P2^2; sbit KEY_OUT_3 = P2^1;sbit KEY_OUT_4 = P2^0;#define uchar unsigned char#define ulint unsigned long#define Frequency 10\/\/定时器中断时间 = f*T#define Time 1\/\/一个周期...
怎样在单片机中用C语言编写一个2位数码管显示0到99。管脚接线图如下...
\/\/先进行宏定义,然后进行查表,输出就OK了 unsigned int i ;defineSEGA0x04 defineSEGB0x08 defineSEGC0x10 defineSEGD0x80 defineSEGE0x20 defineSEGF0x02 defineSEGG0x01\/\/ defineSEGDP0x40\/\/ defineNSEGG0x7f\/\/无解 defineNUM_0SEGA + SEGB + SEGC + SEGD + SEGE + SEGF defineNUM_1...
单片机程序求修改,实现按键控制数码管0-9,急!!!
if(num==-1) num=9;while(key1==0);} } \/*实现清零功能*\/ if(key2==0) { delay(7);if(key2==0) { num=0;while(key2==0);} } \/*实现定时器1方式1定时1S使得数码管加1显示功能*\/ if(key3==0) { delay(7);if(key3==0) { flag = ~flag;while(key3==...