variabel utan ström

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Jag testade att lägga de sakerna efter look.up tabellen, och då går det bra. Så det kan nog vara att den hamnade i en sån "skarv" på XX00.

Tack!
Mvh
probe
Inlägg: 282
Blev medlem: 2 februari 2008, 21:04:26
Ort: Stockholm

Inlägg av probe »

*ler* Ja, gäller att läsa datablad när man kör ASM.... Jag har till dessa småttingar skaffat mig en debugger... Gissa om den har varit till glädje vid tillfällen då hjärnan inte varit med riktigt...

Bild

http://se.farnell.com/4300830/semicondu ... P-AC162050
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Den ser trvlig ut! :)
probe
Inlägg: 282
Blev medlem: 2 februari 2008, 21:04:26
Ort: Stockholm

Inlägg av probe »

Mycket! Brukar likssom inte gå göra som man kan med 28 och 40 pinnars där man kan "offra" RB6 och RB7 till debuggern.... Men med denna specialare så får man debuggingen OCH alla portpinnar kvar - mycket trevligt onekligen...
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Du får en .MAP fil under två förutsättningar :

1. Du skriver kod i "relocatable mode", d.v.s använder ett "Linker Script".
2. Du har *bett* om en MAP fil i Setup för MPLINK i Project->Options->någonstans...

*DÅ* får du en MAP fil i din projekt katalog.

SJÄLVKLART så hjälper det inte att bara bygga om projektet 100 gånger... :-)

Jag hade på känn att det var ett table-lookup problem. Detta kan lösas på två sätt:

(1) Du "fryser" tabellen inom en och samma 256 byte area i ett CODE segment med en hårdkodad adress.
(2) Du ändrar koden i lookup-subrutinen så att den tar hänsyn till eventuella page-gränser. Då kan tabellen ligga var som helst.

Nackdelen med (1) är en lite mer "stel" minnesallokering. Men det går att komma runt genom att
dela upp resten av koden i flera mindre CODE segment. Då kommer MPLINK att snyggt och prydligt
sprida ut resten av koden runt din tabell. Samtidigt får du även en snygg tabell i MAP filen där
du direkt ser hur stora dina olika delar av koden är. Mycket användbart, eller i alla fall intressant.

Nackdelen med (2) är att varje "lookup" tar lite längre tid.

Du väljer vad som är optimalt i just ditt fall.
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

"1. Du skriver kod i "relocatable mode", d.v.s använder ett "Linker Script". "
Ahh.. Där ligger felet då. Det är väll lika bra att göra om det till relocateble mode.

100ggr byggde jag inte om, bara en gång sen testade jag att clear'a.. :wink:

Får nog ta och läsa på lite mera ang. de två alternativen till look-up tabellen.

Tack för all hjälp!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Den finns en app.note hos Microchip om lookup tabeller.
Speciellt över page-gränser. Det är bra i princip, men kodexemplen
har ett par små buggar...

http://ww1.microchip.com/downloads/en/A ... 00556e.pdf
Skriv svar