微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 我是小白 各位大哥帮我看看呗!

我是小白 各位大哥帮我看看呗!

时间:10-02 整理:3721RD 点击:
#include <reg51.h>
#include <intrins.h>
main()
{
        while(1)
        {
       
                P2= 0xE0;
      delaylms(200);
                P2= 0x02;
        }       
}
void delay1ms(void)
{
    unsigned char a,b,c;
    for(c=1;c>0;c--)
        for(b=142;b>0;b--)
            for(a=2;a>0;a--);
}

delay1ms()函数调用错误。函数名输入错了。

谢谢!
     那要怎么改呢?

子函数在main函数以后的要在main函数之前声明才能调用

我就是想在        P2= 0xE0;和 P2= 0x02;之间放一个延时

#include <reg51.h>
void delay1ms(void) ;//加上函数申明
void delayms(unsigned char t);
void main(void)
{
        while(1)
        {
        
                P2= 0xE0;
      delayms(200);//这边改成delayms()函数的调用。
                P2= 0x02;
        }        
}
void delay1ms(void)
{
    unsigned char a,b,c;
    for(c=1;c>0;c--)
        for(b=142;b>0;b--)
            for(a=2;a>0;a--);
}
void delayms(unsigned char t)//因为你上面1ms延时是不带参数传递的。所以你要延时多余1ms必须在这边加个类似这样的函数。
{
 while(--t)
 {
 delay1ms();
 }
}

#include <reg51.h>
#include <intrins.h>
main()
{
void delay1ms(void);
        while(1)
        {
      
                P2= 0xE0;
      delay1ms();
                P2= 0x02;
        }      
}
void delay1ms(void)
{
    unsigned char a,b,c;
    for(c=1;c>0;c--)
        for(b=142;b>0;b--)
            for(a=2;a>0;a--);
}

谢谢你!      

辛苦啦    谢谢你!

上一篇:一个人的救赎
下一篇:STC90C51RD+

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

网站地图

Top