回复本帖可获得 2 黑币奖励! 每人限 1 次
很适合进阶的知识,希望楼主能继续更新,此文章学到延时和按键消抖的两种不一样的应用方式平时都是用delay()师傅教的也是delay()虽然有讲到过用中断延时但是并没有应用。一般延时教的是
void delayms(unsigned int m)
{
unsigned int i,j;
for(i=0;i<m;i++)
for(j=0;j<100;j++);
}
按键消抖
sbit key=P^?;
void main(void )
{
while(1)
{
if(key==0)
{
delayms(20);
if(key==0)
{
while(key==0) //等待按键松开
do_sth();
}
}
}
}
void delayms(unsigned int m)
{
unsigned int i,j;
for(i=0;i<m;i++)
for(j=0;j<100;j++);
}
按键消抖
sbit key=P^?;
void main(void )
{
while(1)
{
if(key==0)
{
delayms(20);
if(key==0)
{
while(key==0) //等待按键松开
do_sth();
}
}
}
}