标题: 单片机程序求解答,哪里错了 [打印本页]

作者: 学单片机小学生    时间: 2018-9-6 14:25
标题: 单片机程序求解答,哪里错了
#include <reg51.h>
#include <stdio.h>
sbit LED=P1^0;
void delay( unsigned int );
void main( void )
{
    while(1){                    //???
        P1_0=0;                //P1.0??LED??
        delay( 500 );            //??????
        P1_0 = 1;                //P1.0??LED??
        delay( 500 );            //??????
    }
}
void delay( unsigned int n )    //??????
{
    unsignedint x, y;
    for( x = 0; x < n; x ++ ){
        for( y = 0; y < 121; y ++ ){
            ;
        }
    }
}



作者: 1123212143255    时间: 2018-9-6 17:04
倒数第四个括号方向不对,改后还需处理处理其他括号,参考吧。
作者: wulin    时间: 2018-9-6 17:32
P1_0=0;           P1_0没有定义
unsignedint x, y;少了空格unsigned int x, y;
作者: zha    时间: 2018-9-6 17:37
unsignedint 改为unsigned int
作者: le51    时间: 2018-9-6 18:03
1.在你编写完程序,点击编译按键之后,编译器的最下面的对话框中会出现你写的程序的()error ()warning,如果编译有错误的话,鼠标点击下error:。。。。。。诸如此类的语句,编译器就会提示错误在哪一行有什么错误。如果看不懂英文的话可以翻译或者直接copy百度。
2.要搞明白自己的每一条语句的目的是什么,比如你上面开始的时候位定义了LED=P1^0,那么以后的对P1^0口的操作就可以用LED代替了,然而你下面还写的P1_0...
作者: sxhwdz    时间: 2018-9-6 18:09
#include <reg51.h>
#include <stdio.h>
sbit LED=P1^0;
void delay( unsigned int );
void main( void )
{
    while(1){                    //???
        LED = 0;                //P1.0??LED??
        delay( 500 );            //??????
        LED = 1;                //P1.0??LED??
        delay( 500 );            //??????
    }
}
void delay( unsigned int n )    //??????
{
     unsigned int x, y;
    for( x = 0; x < n; x ++ ){
        for( y = 0; y < 121; y ++ ){
            ;
        }
    }
}

倒数第7行  ,unsignedint x, y; 少空格, 正确为  unsigned  int x, y;
作者: zhaoyinlo    时间: 2018-9-6 19:05
void delay( unsigned int );  //声明时没有参数名 下面 定义时有了参数名
unsignedint x, y;  //  unsigned  int  是分开的。
希望能帮到你




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