微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 摇摇棒画面自己跳转

摇摇棒画面自己跳转

时间:10-02 整理:3721RD 点击:
接通电源后两个画面总是自己跳转。把p3.0的那根线断掉 仍然自己跳转 下面是主函数和开头端口定义。将主函数中去抖动判断里的pic++去掉则不会跳转 也就是没有给key信号 pic++也是执行的 求大神帮忙解释一下啊。

#include<reg52.h>   //52单片机头文件,一般不要改动,里面包含特殊功能寄存器的定义
#define uchar unsigned char
#define uint  unsigned int
sbit KEY=P3^0;
void display1(void);
void display2(void);

void main(void)       //入口函数
{
EA=1;   //首先开启总中断
EX0=1;    //开启外部中断 0
IT0=1;
KEY=1;        //设置成下降沿触发,0为低电平触发
while(1)     //主程序中只检测按键
{
   if(KEY==1)     //画面切换键按下
   {
    delay(10000);     //按键去抖
    if(KEY==1)
     pic++;
   }
   if(pic==2)
    pic=0;
  }

ky=0;


把key==1改为key==0;还有按键去抖动不需要延时那么长,在按键最后加一句while(key==0);

怎么做的

“while(KEY==0);”是防止按键时间过长跳两次的么?下面是我改的。貌似是比较正常了。
while(1)     //主程序中只检测按键
{
   if(!KEY)     //画面切换键按下
   {
    delay(8000);     //按键去抖
    if(!KEY)
     pic++;
   P0=0x00;    //这5行我加的显示切换成功的提示
   P2=0x00;
   delay(5000);
   P0=0xff;
   P2=0xff;
   while(KEY==0);  //这个是加这里么?
   }
   if(pic>3)
    pic=0;
      
  }

网上好多这个的帖子呢 搜下有的是。

我做了一个,感觉视觉效果不好啊,画面看着不清楚

{谢谢分享:12:}

学习了                                    

了解了解                                                           

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top