keil中怎么在程序里屏蔽掉#pragmasrc?

2020-01-30 14:15发布

Build target 'Target 1'
assembling STARTUP.A51...
compiling DE.c...
linking...
BL51 BANKED LINKER/LOCATER V6.22 - SN: K1RMC-K5I9KC
COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2009
"STARTUP.obj",
"DE.obj"
TO "DE"
RAMSIZE(256)
*** FATAL ERROR L256: MODULE CONTAINS DUPLICATE SEGMENT NAMES
    SEGMENT: ?PR?T?DE
    MODULE:  DE.obj (DE)
Target not created



在网上找到了这样的答案

(6)L210程序前生成SRC语句Buildtarget'Target1'

设置上的问题,在程序里屏蔽掉#pragmasrc即可。

但不知怎么在程序里屏蔽掉#pragmasrc?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
子鱼
1楼-- · 2020-01-30 15:26
名字重复
i_kkyu
2楼-- · 2020-01-30 16:56
DE.c   贴出来看看。
PR 是啥
小德GD
3楼-- · 2020-01-30 21:45
 精彩回答 2  元偷偷看……
小德GD
4楼-- · 2020-01-30 23:45
i_kkyu 发表于 2013-2-20 13:15
DE.c   贴出来看看。
PR 是啥

#include<reg52.h>
#include<intrins.h>
#include<two.h>
#define uchar unsigned char
uchar bb,aa,num,num1;
void main()
{
TMOD=B00010001;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
EA=1;
ET0=1;
ET1=1;
TR1=1;
TR0=1;
aa=B11111110;
bb=B11111110;
   while(1);  

}
void t()interrupt 1
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
num++;
    if(num==20)
    {
        num=0;
        P0=aa;
        aa=_crol_(aa,1);
    }

}
void T()interrupt 3
{
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
num1++;
    if(num1==30)
        {
        num1=0;
        P0=bb;
        bb=_crol_(bb,1);
        }



}   
zpxa001
5楼-- · 2020-01-31 04:33
void t()interrupt 1
void T()interrupt 3

两个函数的名字只是大小写的区别,连接器不许可:
A module contains duplicate segment names. This occurs when the C source contains two identical function names, that differ only in lower/uppercase letters.

小德GD
6楼-- · 2020-01-31 06:54
zpxa001 发表于 2013-2-20 21:08
void t()interrupt 1
void T()interrupt 3

恩,改好了,行了,谢谢

一周热门 更多>