历史上的今天
今天是:2025年03月11日(星期二)
2018年03月11日 | C51独立按键的识别示例程序
2018-03-11 来源:eefocus
每按一次独立键盘的S2键,与P1口相连的一个发光二极管往下移动一位。
#include
sbit BY1=P3^4; //定义按键的输入端S2键
unsigned char count; //按键计数,每按一下,count加1
unsigned char temp;
unsigned char a,b;
void delay10ms(void) //延时程序
{
unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--);
}
key() //按键判断程序
{
if(BY1==0) //判断是否按下键盘,当单片机上电时所有IO口为//高电平,S2键一端接地另一端接P3.4,所以当键被按下时P3.4口//直接接地,此时检测P3.4肯定为低电平。
{
delay10ms(); //延时,软件去干扰
if(BY1==0) //确认按键按下
{
count++; //按键计数加1
if(count==8) //计8次重新计数
{
count=0; //将count清零
}
}
while(BY1==0);//等待按键释放,如果键未释放则一直在此等待。
}
}
move() //广告灯向下移动移动函数
{
a=temp< b=temp>>(8-count);// _crol_()函数 P1=a|b; } main() { count=0; //初始化参数设置 temp=0xfe; P1=0xff; P1=temp; while(1) //永远循环,扫描判断按键是否按下 { key(); //调用按键识别函数 move(); //调用广告灯移动函数 } }
上一篇:点阵液晶显示模块字符通用子程序
史海拾趣
|
关于视频系统处理器选择的建议基于ARM核心的Freescale的i.MX系列芯片是视频应用的佼佼者。 比如i.MX27和i.MX31 i.MX27嵌入式开发板是高清视频输入输出的首选,i.mx27芯片提供了更高的灵活性和更强大的多媒体处理能力,成为IP视频和语音(V2IP)、移 ...… 查看全部问答> |
|
单片机的用途非常广阔,各种智能控制的产品中都少不了它的身影,前景看好,因此引起了一阵阵学习单片机的热潮。 相信很多初学单片机的朋友都是从做流水灯开始的,因为流水灯的电路较为简单。看着按照自己的设想做成的流水灯变幻着不同的花样, ...… 查看全部问答> |
|
小弟要实现如下功能: 当我点击打印操作时,程序弹出一个对话框,显示正在打印,在打印的过程中,必须使程序无法响应用户的其它任何操作。当打印结束时,显示打印成功或打印失败,然后才让程序可以继续响应用户其它操作。 请问这个如何解决哈? … 查看全部问答> |
|
怎样才能不间断采样呢? 我现在的方法:ADC12采样AB相的电压和电流,ADC3采样C相电压和电流,用TIM1的CC2和CC3作为触发,DMA传输采样数据,半传输完成后计算一次,计算期间进行下一个采样,整传输完成后,重新给DMA采样数据个数。 问题是: ...… 查看全部问答> |
|
2.4G无线电力测温解决方案 随着市场的推进,无线电力测温已经收到电力部门的高度重视.从过去的地方项目上升到省局的集中招标.从应用的角度来看,它并不是一个复杂的应用.但是从实现上来看,它需要公司投入相当大的人力和物力.针对于此,上海麓 ...… 查看全部问答> |




