微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 程序求助

程序求助

时间:10-02 整理:3721RD 点击:
#include <reg51.h>
void delay(int);
//sbit led=P1;
sbit k1=P3^4;
void main()
{
          
            if(k1==0)
                {
                     delay(10);
                         if(k1==0)
                         {
   
                P1=0xfe;
                       
                        }
               
        }       
/*        while(!k1)
                        {
                                P1=0xff;
                        }                                     */
}
void delay(int xm)
{
        int i,j;
        for(i=xm;i>0;i--)
            for(j=100;j>0;j--)
}
为什么按键松开后P1口还是0xfe这个代码?

你自己模拟执行一下就知道了嘛!执行完按键后,P1就是0xfe,有没有其他程序给P1重新赋值,那你想P1自动复位啊

你的按键程序有问题,要设计一个中间变量

但你按下时,程序执行了 P1=0xfe;退出大括号,之后就没有对P1操作了,P1怎么会改变?程序if要加多else
P1=0x__;

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

网站地图

Top