我现在先写了个小程序,然后编译了一下,出现了两个问题: 1、PUBLIC 'AWU_CSR' redefined...First definition in Debug\music_player.alpha.v001.obj, second in D:\soft\sttool\Work\music_player\stm8s207sfr.asm. (总共200多个类似的) 后面的那个文件是我的寄存器的头文件,格式如下: .PA_ODR DS.B 1 ; Port A data output latch register
从上面的说明应该是重复定义了,我以为我自己加的头文件(建立工程时是没有那个头文件的)是多余的,可是删掉之后就说寄存器没有有效地址。
请问这个如何解决?
2、Error : segment D:\soft\sttool\Work\music_player\music_player.alpha.v001.asm:'periph' [0x5000 - 0x7f76] and segment D:\soft\sttool\Work\music_player\stm8s207sfr.asm:'periph' [0x5000 - 0x7f76] overlap The command: "lyn Debug\mapping.obj+Debug\music_player.alpha.v001.obj+Debug\stm8s207sfr.obj, Debug\music_player.cod, " " " has failed, the returned value is: 2 exit code=2. 我的主文件中music_player.alpha.v001.asm根本就没有定义'periph' ,怎么会重叠呢,下面就是对区域的定义: WORDS segment byte at 4000-45FF 'eeprom'
WORDS segment byte at 8080-17FFF 'rom'
WORDS segment byte at 8000-807F 'vectit'
请问各路高手,这两个问题如何理解啊。
谢谢!!
|