标题: 求大神帮忙看一下,我的这个单片机程序为什么显示总是“.1"那个地方出错呢? [打印本页]

作者: ~123~    时间: 2020-3-17 11:29
标题: 求大神帮忙看一下,我的这个单片机程序为什么显示总是“.1"那个地方出错呢?
#include  <reg51.h>
void delay1();
sbit jian1=P3.1;
sbit jian2=P3.2;
sbit jian3=P3.3;
sbit jian4=P3.4;
void main(){
while (1){
if (jian1==0){
       delay1();
           if(jian1==0)
           P1=0x01;}

        


}}

  void delay(){
  int i;
  for(i=0;i<=10;i++);}

作者: carpcarey    时间: 2020-3-17 13:24
#include  <reg51.h>
void delay1();
sbit jian1=P3^1;
sbit jian2=P3^2;
sbit jian3=P3^3;
sbit jian4=P3^4;
void main(){
while (1){
if (jian1==0){
       delay1();
           if(jian1==0)
           P1=0x01;}

        


}}

  void delay(){
  int i;
  for(i=0;i<=10;i++);}
作者: wanghz12    时间: 2020-3-17 13:26
sbit jian1=P3^1; sbit jian2=P3^2; sbit jian3=P3^3; sbit jian4=P3^4;
作者: xxpp2011    时间: 2020-3-17 13:27
P0.2编译器是识别不了的,要像这样写:
sbit MQ2=P0^2;//烟雾传感器

作者: wanghz12    时间: 2020-3-17 13:30
改为 sbit jian1=P3^1; sbit jian2=P3^2; sbit jian3=P3^3; sbit jian4=P3^4;就好了
作者: 张小不懂    时间: 2020-3-17 13:33
如果检测到jian1按下,P1就一直等于0x01,如果想要松手后改变P1的数值就写个松手检测。还有你的延时函数delay1和delay名字不一样
作者: 天地一微尘    时间: 2020-3-17 23:01
别人已经回答你了,你的程序大概是按键按下,点亮Led。按键弹起,led灭。是不是?你没加led灭的程序。第一个if要加else{P1=0x00}




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1