出现c232,“delayms”:redefinition错误,怎么办!?

2019-03-24 18:52发布

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;                      //申明U1锁存器的锁存端//
sbit wela=P2^7;                      //申明U2锁存器的锁存端//
sbit dawr=P3^6;                      //定义DA的WR端口//
sbit dacs=P3^2;                      //定义DA的CS端口//
sbit beep=P2^3;                      //定义蜂鸣器端口//
void main()
{
uchar val,flag;
dula=0;
wela=0;
dawr=0;
dacs=0;
P0=0;
while(1)
{
  if(flag==0)
  {
   P0=val;                                  
   val+=5;                                  
   if(val==250)
   {
        flag==1;
        beep=0;
        delayms(100);
        beep=1;
   }
   delayms(50);
  }
  else
  {
   P0=val;
   val-=5;
   if(val==0);
   {
    flag==0;
        beep=0;
        delayms(100);
        beep=1;
   }
   delayms(50);
  }          
}
}
void delayms(uint x)          //定义延时函数delayms//   
{
uint i,j;
for(i=x;i>0;i--)
  for(j=110;j>0;j--);
} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
ltbytyn
1楼-- · 2019-03-24 23:53
函数没有声明。好好补补C
jishuaihu
2楼-- · 2019-03-25 05:04
把void delayms(uint x)          //定义延时函数delayms//   
{
uint i,j;
for(i=x;i>0;i--)
  for(j=110;j>0;j--);
}
放到main前面,或者在main前声明一下

一周热门 更多>