Linker description file | Programmering / Grafisk formgivning | Forum

A A A

Please consider registering
Guest

Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
Linker description file
This topic is locked
oxiswoofer
Medlem
Medlem
Forum Posts: 2101
Member Since:
april 1, 2003
sp_UserOfflineSmall Offline
1
mars 5, 2008 - 7:49 f m
sp_Permalink sp_Print

hejsan!
det är så att jag håller på med ett projekt med en 16bitars HC12S Freescale cpu med bankat minne, och håller på att pilla med linkerdescrition filen och har tyvärr ett problem! När jag laddar över min application till hårdvaran, och resetar den, så startar programräknaren(PC) på fel ställe, den startar på adress 0x788000, men enligt mapfilen så ska startupscriptet ligga på 0x784000(här ligger ingen data enligt debuggern), och jag har ingen aning om varför.. är nybörjare på länkarscript och sånt.. så jag tänkte att någon här kanske är lite hajj på det och skulle kunna titta på mitt, och se om det är något galet här!

i resetvector så ska det pekas på startup-koden(enligt min vectorfil), har definerat upp reset så att den ska hoppa till min startupfunktion..

#  **************************************************************************
# * o MC-KONSTANTEN Beschreibung des Mikrokontrollers (LK-File Intern) *
# **************************************************************************
+def i_RamAnf_logical=0x2000 # erstes Byte im RAM
+def i_RamEnd_logical=0x3FFF # letztes Byte im RAM
+def i_RamAnf_global=0xFE000 # erstes Byte im RAM
+def i_RamEnd_global=0xFFFFF # letztes Byte im RAM
+def i_GesRamGr=0x2000 # Gesamtgröße im RAM

+def i_EepAnf_logical=0x0800 # erstes Byte im EEPROM
+def i_EepEnd_logical=0x0FFF # letztes Byte im EEPROM
+def i_EepAnf_global=0x13F800 # erstes Byte im EEPROM
+def i_EepEnd_global=0x13FFFF # letztes Byte im EEPROM

# *** weitere MC-Konstanten weil innerhalb "+def" nicht gerechnet werden kann *
+def i_StackI=0x4000 # 1.JSR pushed PC auf 0x3FFF und 0x3FFE

+def i_CkSumGr=128 # 128 Bytes für Checksummenabgleich (Berechnet von Linker)

# **************************************************************************
# * o SEGMENT-DEF Definition der Segmente *
# **************************************************************************

+seg .MCADS_UNTOUCH -b i_RamAnf_global -o i_RamAnf_logical -m i_GesRamGr -n.MCADS_UNTOUCH # Daten ungelöscht, ungetestet
+seg .ubsct -a.MCADS_UNTOUCH -n.ubsct # Daten 8-Bit addressiert (wird ab Compilerversion 4.2t benötigt)
+seg .bsct -a.ubsct -n.bsct # Initialisierte Daten, 8-Bit adressiert
+seg .data -a.bsct -n.data # Initialisierte Daten, 16-Bit adressiert
+seg .bss -a.data -n.bss # Daten, 16-Bit addressiert

+seg .eeprom -b i_EepAnf_global -o i_EepAnf_logical -m 0x0800 -n.eeprom


# ***************************************************************************
# * o SEGMENT-DEF ROM / Flash Segmente mit zugehörigen Dateilisten *
# ***************************************************************************
+seg .gconst -b 0x780000 -m 0x4000 -n .gconst # 16K for global constants $E0

+seg .cksum -b 0x7FC000 -o 0xC000 -m i_CkSumGr -n.cksum -ik # Checksum segment
+seg .FIXBank -e 0x7FFF00 -o 0xFF00 -m 0x4000-0x0100 -n.constFIXBNK -ck # Programmcode auf Fixed Bank
+grp .FIXBank=.const,.MCADS_FIXBNK # Liste von zusammenzufassenden Sections

#########härnånstans tror jag problemet ligger######
+seg .text -b 0x784000 -o 0x8000 -w 0x4000 -m 0x1C000 -n.text -s.flash -ck -x # Banked ROM $E1-E7
+seg .text -b 0x7E0000 -o 0x8000 -w 0x4000 -m 0x1C000 -n.text -s.flash -ck # Banked ROM $F8-FE
#+inc tmp_sbk.lk
+inc Test_App_Modules.lk
+inc lib_debug.lk

+seg .text -b 0x7FC000+i_CkSumGr -o 0xC000+i_CkSumGr -m 0x4000-i_CkSumGr -n.text -it -ck # Programmcode auf Fixed Bank $FF
.liblib.lib
# COMPILE WAS NOK -> +seg .MCADS_V120 -b 0x7FFF00 -o 0xff00 -n.text -m 0x0100 -ck
#+seg .MCADS_V120 -b 0x7FFF10 -o 0xff10 -n.MCADS_V120 -ck
+seg .vector -b 0x7FFF10 -o 0xff10 -n.vectors -ck
+inc tmp_fixb.lk


# ****************************************************************************
# * o LABELS-DEF Definition der extern verwendbaren Konstanten *
# ****************************************************************************
+def _MCAD_RAM_ANF=i_RamAnf_logical # Adr. erstes Byte im RAM
+def _MCAD_RAM_USED=end(.bss) # Adr. letztes verwendetes Byte im RAM
+def _MCAD_RAM_END=i_RamEnd_logical # Adr. letztes Byte im RAM

+def _MCAD_CLRRAM_ANF=start(.ubsct) # Adr. erstes zu löschende Byte im RAM
+def _MCAD_CLRRAM_END=i_RamEnd_logical # Adr. letztes zu löschendes Byte im RAM

+def _MCAD_EEP_ANF=i_EepAnf_logical
+def _MCAD_EEP_END=i_EepEnd_logical

+def __sbss=@.bss
+def __memory=@.bss
+def __stack=i_StackI
+def __sdirect=start(.ubsct)
+def __sgconst=start(.gconst)

kan säga nu direkt att det är inte min orginalfil,har fått det av företaget jag jobbar åt nu..så nej, jag kan inte tyska 8-)[/b]

This topic is locked
Forum Timezone: Europe/Stockholm

Most Users Ever Online: 694

Currently Online:
195 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

Andreas Galistel: 16287

Jonas Klar: 15897

ilg@dd: 10810

Nyhet: 10607

Mind: 10550

Ctrl: 10355

Gueno: 9881

Guest: 9344

Snorch: 8881

Callister: 8468

Newest Members:

RebeccabipYJ RebeccabipYJ

HumanSert HumanSert

AshleyCeanyJN AshleyCeanyJN

RobertCapYX RobertCapYX

MichaelZonZR MichaelZonZR

Brandonvom

staletsatf staletsatf

BradleyJewZQ BradleyJewZQ

autogruxusKJ autogruxusKJ

DonaldSpodyZU DonaldSpodyZU

Forum Stats:

Groups: 11

Forums: 59

Topics: 146630

Posts: 1300967

 

Member Stats:

Guest Posters: 2

Members: 78407

Moderators: 0

Admins: 11

Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL