33问答网
所有问题
当前搜索:
c51按键处理程序
编程
c51
单片机:实现按下
按键
K1,LED左移动一位(其中一个LED灯灭),按下...
答:
include<reg
51
.h> sbit k1=P1^0;sbit k2=P1^1;void delay(unsigned char a){ unsigned char i,j;for(i=0;i<a;i++)for(j=0;j<120;j++);} main(){ unsigned char led=0xfe;while(1){ if(k1==0){ delay(10);if(k1==0){ while(k1==0);led=(led<<1)|0x01;if(led==...
c51
单片机
按键程序
设计
答:
很简单,用定时器计时,开启中断,用一个寄存器存秒的值,设定一个连续加一标志位并清零。在初次检测到
按键
被按下后就开始计时,假设定时器溢出周期为50ms,则等到溢出100后(这个值储存在秒寄存器中)将连续加一标志位置位。在键盘扫描
程序
中检测到该标志位置位便连续加一,这个连续加一的速度也可由定时...
请问
C51
怎么实现通过定义一个
按键
,每按一次按键,数码管的值增加1,求C...
答:
可以将
按键
接在一个IO引脚上,按键的另一端要接地或者接高电平。用一个if语句判断引脚的电平,比如P3_0通过一个按键接到地。
程序
可以如下:if(P3_0==0) //检测到按键按下 { delay(); //加一个延时函数,是为了消除按键抖动 例如for(i=0;i<1000;i++);if(P3_0==0) //...
c51
独立
按键程序
,按下k1按键后对应的灯亮,但松开k1按键后灯还亮,k2...
答:
if(k1==0)P2=0xee;else P2=0xff;if(k2==0)P2=0xfd;else P2=0xff;这是按住就亮,松开就灭的
程序
。如果想实现按一次亮,再按一次熄灭。程序如下:bit a=0,b=0;//做
按键
点亮熄灭标志 while(1){ if(k1==0&&a==0){ P2=0xee;a=1;} else if(k1==0&&a==1){ P2=0xff;a=0;...
单片机
C51
实现
按键
一次数码管加1
程序
问题。高手进。
答:
单片机C51实现
按键
一次数码管加1程序问题。高手进。 设计一个单片机
C51程序
,实现功能是,1、按KEY1只有红灯亮,KEY2只有黄灯亮,KEY3只有绿灯亮。2、开始右数码管显示0,每按KEY1一次数码管显示加1,至9后再循环。先已经编好程序,第一个实现,但第二个总弄不对。感觉问题很简单,就是差一点,高手帮我看一下。
单片机
程序
编程(用
C51
) 2个
按键
控制2位七段LED显示,每按下一次“+_百...
答:
if(mode)key_up=1;if(key_up&&(KEYADD==0||KEYRED==0|)){ delay_ms(10);//去斗 key_up=0;if(KEY0==0)return 1;else if(KEY1==0)return 2;}else if(KEYADD==1&&KEYRED==1)key_up=1;return 0;} value为显示值,KEYADD、KEYRED为加减的两个键,底层要你自己实现 ...
C51
单片机编程,
按键
控制流水灯
答:
include "reg
51
.h"unsigned char led[]={0xfe,0xfd,0xfb,0xf7}; //LED灯的花样数据 void delay(unsigned char time){ //延时函数 unsigned int j=15000;for(;time>0;time--)for(;j>0;j--);} void main(){ bit dir=0,run=0; //标志位定义及初始化 char i;while(1){ ...
关于单片机
C51
独立
按键
和
程序
执行顺序问题
答:
根据你提供的函数,表明你的板子LED是共阳极连接的,即LED阳极接到一起,每个LED阴极接IO口,这样当IO口为低电平时灯就点亮了。所以,你的
程序
一开始是亮灯而不是灭灯。sbit BY1=P3^4是一个位定义,意思是把单片机的P3.4口定义为BY1,以后对BY1进行操作就是对P3.4进行操作。
关于
C51
单片机
按键
编程的问题
答:
uchar key_scan(); //
按键
扫描子
程序
void delay10ms(); //延时程序 uchar key_free(); //等待按键释放程序 void key_deal();sysem_initial(); //初始化程序 void main(){ sysem_initial();while(1){ key_scan();uchar key_free();key_deal();} } void sys...
C51
单片机
按键程序
变量先归零再自增
答:
delay(1000);if(!KEY){ timer++;} } else timer=0;} 其中 void delay(uint z){ uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);} 如果在晶振12mhz(或11.0592mhz),按下
按键
timer以约一秒的速度递增,按键松开,timer清零。可以把timer的值显示在数码管上验证,这里不再赘述。
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
c51独立按键处理程序汇编语言
51单片机一个按键实现多个功能
单片机独立按键实验报告总结
按键控制实验c语言代码
51单片机设置单键开关机程序
C51双动开关程序
51单片机独立按键代码
普中s51单片机使用s开关代码
两个单片机之间的串口通信