找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2269|回复: 4
收起左侧

写双机通信的时候,遇到这种问题,怎么解决?

[复制链接]
ID:213546 发表于 2017-7-7 16:38 | 显示全部楼层 |阅读模式
#include<reg51.h>
void  Delay(int Time_ms);

void main(void)
{
        SCON = 0x40;
        TMOD = 0x20;
        PCON = 0x00;
        TH1 = 0xF4;
        TL1 = 0xF4;                                                                          
        TI = 0;                                                           
        TR1 = 1;


        while(1)
        {
        SBUF = P1;
        while(TI == 0);
         TI   = 0;
         Delay(200);
         }
        return;
}

void Delay(int Time_ms)
{
        int i;
        unsigned char j;
        for(i=0;i<Time_ms;i++)
                {
                  for(j=0;j<150;j++)
                  {
                  }
                }
        }





compiling LYFS.c...
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  _DELAY
    MODULE:  LYFS.obj (LYFS)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  MAIN
    MODULE:  LYFS.obj (LYFS)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    SEGMENT: ?PR?_DELAY?LANYA
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    SEGMENT: ?PR?MAIN?LYFS
*** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL
    SYMBOL:  MAIN
    MODULE:  C:\KEIL\C51\LIB\C51S.LIB (?C_INIT)
    ADDRESS: 0033H
Program Size: data=10.0 xdata=0 code=327
目标未创建


回复

使用道具 举报

ID:210756 发表于 2017-7-7 20:13 | 显示全部楼层
你这个没错误啊
回复

使用道具 举报

ID:213173 发表于 2017-7-8 08:30 | 显示全部楼层
发送变化数据,没有发现错误。
#include<reg51.h>
void  Delay(int Time_ms);

void main(void)
{
        unsigned char x;
        TMOD = 0x20;
        PCON = 0x00;
        TH1 = 0xF4;
        TL1 = 0xF4;                                                                          
        SCON = 0x40;
        TI = 0;                                                           
        TR1 = 1;
        x=0xff;
       
        while(1)
        {
                SBUF = P1;
                while(TI == 0);
                TI   = 0;
                Delay(2000);
                x--;
                if(x==0x00)
                        x=0xff;
                P1=x;
        }
        return;
}

void Delay(int Time_ms)
{
        int i;
        unsigned char j;
        for(i=0;i<Time_ms;i++)
                for(j=0;j<150;j++);
}
回复

使用道具 举报

ID:97438 发表于 2017-7-11 11:28 | 显示全部楼层
main函数还return个毛线。。。
回复

使用道具 举报

ID:218893 发表于 2017-7-11 19:07 | 显示全部楼层
你定义了两个delay函数.重复定义!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表