Automatisk export av använda minnesceller till exel?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
nanopile
Inlägg: 312
Blev medlem: 9 april 2006, 17:06:50
Ort: Stockholm

Automatisk export av använda minnesceller till exel?

Inlägg av nanopile »

Brukar använda en fil där jag markerat alla oanvända celler med en nolla och alla använda med ett x.
Men det finns säkerligen ett bättre sätt som är mer automatiskt?
Någon som vet om något sätt att få de celler man deklarerar till tex exel?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Automatisk export av använda minnesceller till exel?

Inlägg av sodjan »

> Automatisk export av använda minnesceller till exel?

Från vadå ???
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Automatisk export av använda minnesceller till exel?

Inlägg av AndersG »

Plocka in MAP-filen i Excel och sortera det som finns under "data"?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Automatisk export av använda minnesceller till exel?

Inlägg av sodjan »

Vilken MAP-fil ?
Var står det att det finns en MAP-fil ?

Frågan är vad det igentligen är som nanopile vill göra...
nanopile
Inlägg: 312
Blev medlem: 9 april 2006, 17:06:50
Ort: Stockholm

Re: Automatisk export av använda minnesceller till exel?

Inlägg av nanopile »

Mitt typiska jag att inte berätta alla detaljer, sorry.
Från MPLAB IDE, där jag sitter och programmerar assembler.

MAP-filer har jag inte gjort några, AndersG, får jag fråga vad det är och vad det används till?
Min är en ren text-fil och ser ut såhär:

---- 1 2 3 4 5 6 7 8 9 A B C D E F
000 0 x x x x x 0 0 x x x x x x 0 0
010 x x x 0 0 0 0 0 0 0 0 0 0 0 0
020 x x x x x x x x x x x x x x x x
030 x x x x x x x x x x x x x x x x
040 x x x x x x x x x x x x x x x x
....
....
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Automatisk export av använda minnesceller till exel?

Inlägg av AndersG »

Jo, men var börjar du? Du var väl en källkod du kompilerar? Under Build options, fliken MPLINK Linker, finns ett tillval: "Generate MAP file"
nanopile
Inlägg: 312
Blev medlem: 9 april 2006, 17:06:50
Ort: Stockholm

Re: Automatisk export av använda minnesceller till exel?

Inlägg av nanopile »

Jadå, jag gör källlkod i assemblervariant, ingen C eller C++ över huvud taget.
Har inte brytt mig tidigare om .map filen och nu när jag tittar i den så verkar den inte lista celler utan var individuella rutiner börjar.
Lade ut .map-filen filen här:
http://ottd.dyndns.org/1/nano/random%20 ... 20test.map
Användarvisningsbild
Icecap
Inlägg: 26659
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Automatisk export av använda minnesceller till exel?

Inlägg av Icecap »

Men... vad är problemet? Jag får den obehagliga känsla att du faktisk anger startadress på samtliga rutiner du gör vilket ju är djupt osmart men bekräfta gärna att det inte är så.
Användarvisningsbild
AndersG
EF Sponsor
Inlägg: 9127
Blev medlem: 25 februari 2008, 17:10:58
Ort: Mariehamn
Kontakt:

Re: Automatisk export av använda minnesceller till exel?

Inlägg av AndersG »

Och hur definierar du dina variabler? Med equ eller res?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Automatisk export av använda minnesceller till exel?

Inlägg av sodjan »

> Min är en ren text-fil och ser ut såhär:
>
> ---- 1 2 3 4 5 6 7 8 9 A B C D E F
> 000 0 x x x x x 0 0 x x x x x x 0 0
> 010 x x x 0 0 0 0 0 0 0 0 0 0 0 0
> 020 x x x x x x x x x x x x x x x x
> 030 x x x x x x x x x x x x x x x x
> 040 x x x x x x x x x x x x x x x x

Och vad exakt är det där ? Vad betyder
siffrorna och vad betyder "x" resp "0" ?
Och varför behöver du det där ? Till vad ?

Notera att det är mycket bättre att du beskriver
vilket *problem* du försöker lösa. Det hela låter
väldigt märkligt...

> Jadå, jag gör källlkod i assemblervariant

Vilken "variant" av assembler ?

Eftersom det saknas referenser till symboler i RAM ("data") i din MAP
fil, så tror jag inte att du allokerar variabler med RES, och i så fall
undrar jag, varför inte ?
bearing
Inlägg: 11677
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: Automatisk export av använda minnesceller till exel?

Inlägg av bearing »

Jag tror att han helt enkelt vill få en karta över använd RAM, fast istället för den tabellen han visar ska tabellen genereras automatiskt samt enkelt kunna läggas in i Excel.

Om du byter ut alla mellanslag mot tabbar är det bara att klistra in i Excel eller Open Office Calc. (Search -> replace, klistra in ett kopierat tab-tecken i "Replace with-rutan".)

Hm, här försökte jag visa med ett exempel, fast CODE-taggen verkar byta ut tabbar mot mellanslag.

Kod: Markera allt

----	0	1	2	3	4	5	6	7	8	9	A	B	C	D	E	F
000	0	x	x	x	x	x	0	0	x	x	x	x	x	x	0	0
010	x	x	x	0	0	0	0	0	0	0	0	0	0	0	0
020	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x
030	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x
040	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x	x
Tillägg. Både Knudsens C-kompilatorer till PIC och avr-gcc kan ge tabellen över använd RAM automatiskt.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Automatisk export av använda minnesceller till exel?

Inlägg av sodjan »

> Jag tror att han helt enkelt vill få en karta över använd RAM

Ja, jag förstår att det är något i den stilen, men till vad ?

Adresserna för variabler är i sig ointressanta och utnyttjat
utrymme syns i MAP filen, inte direkt i procent, men man får
startadress och storlek på varje data segment. I exempel
nedan så är det alltså 5 bytes från h'70' och framåt:

Kod: Markera allt

                                 Section Info
                  Section       Type    Address   Location Size(Bytes)
                ---------  ---------  ---------  ---------  ---------
                      ...
                      ...
                  DLY_VAR      udata   0x000070       data   0x000003
           SCDQ5542Q_VARS      udata   0x000073       data   0x000002
Även alla adresser för varje individuell variabel finns med, om man behöver det.
bearing
Inlägg: 11677
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: Automatisk export av använda minnesceller till exel?

Inlägg av bearing »

Det är ett överskådligt sätt att se användningen av RAM. Kan vara bra för att finna plats för en så stor array som möjligt, till exempel. MAP-filen ger inte möjlighet till en särskilt bra överblick över RAM-användningen.
nanopile
Inlägg: 312
Blev medlem: 9 april 2006, 17:06:50
Ort: Stockholm

Re: Automatisk export av använda minnesceller till exel?

Inlägg av nanopile »

Icecap nejdå, bara på ett ställe, visar hur:

Kod: Markera allt

STARTUP CODE 0x0
 goto Start
 nop
 nop
 Call LowPriorityInterupt, 0
 Return, 0
 nop
 nop
 nop
 nop
 nop
 Calll HighPriorityInterupt, 0
 Return, 0

PROG CODE
Start:
Det står inget angivet efter CODE mer än på ett enda ställe i hela koden altså, eller gör CODE något jag inte förstår?

AndersG Med equ, är det någon skillnad att använda res?

sodjan det där är metoden jag använder för att hålla reda på använda och oanvända celler och det är det jag vill göra (hålla koll på tusentals celler så jag inte använder dem till olika saker samtidigt).
x betyder att cellen är använd till något och 0 betyder att cellen är oanvänd.
res använder jag inte för att jag inte visste om det förrän jag läste om res i den här tråden
"Variant" ja, assemblerstil, assemblerformat, ren assembler helt enkelt, ingen spcifik variant annat än möjligen då kod för PIC18F µC, det var ett vilseledande uttryck tyvärr :(
sodjan, hur vet du vilken cell du kan använda utan att du använder en som redan används när du behöver en ny variabel?
Kan tänka mig att det finns bättre sätt än det jag använder, tex: "VariabelX Equ 0xA1"?


bearing helt rätt i att jag vill få en karta eller något som gör att jag kan ha koll på använda och oanvända celler fast det är inget självändamål att ha det i exel, vet av erfarenhet att många program erbjuder möjligheten att skicka data till exel automatiskt, vore ju bra om MPLAB IDE kunde det med.
Skulle vara bra om man kunde göra det på något vis, även om jag skulle få göra en extra rad intill plasen där man deklarerar cellen med equ eller res eller möjligen något annat.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Automatisk export av använda minnesceller till exel?

Inlägg av sodjan »

> AndersG Med equ,...

Sluta med det bums.

> ...är det någon skillnad att använda res?

Ja, RTFM (eller online hjälpen i MPLAB). Du får ju en MAP-fil så du kör redan "relocatable"
så det är lite märkligt att du fortfarande använder EQU. Fördelarna med RES har ju
också diskuterats många gånger här på forumet.

> sodjan det där är metoden jag använder för att hålla reda på använda och oanvända celler och det är
> det jag vill göra (hålla koll på tusentals celler så jag inte använder dem till olika saker samtidigt).

Helt onödigt, eftersom MPASM/MPLINK gör det åt dig automatiskt.
Du lägger ner ett väldigt stort och helt onödigt arbete som kan skötas helt automatiskt...

> sodjan, hur vet du vilken cell du kan använda utan att du använder en som redan används när du behöver en ny variabel?

Som sagt, MPASM/MPLINK sköter det automatiskt.

Slut omedelbart med EQU. Det sätter bara värden på symboler, det allokerar *inte* minne (så som RES gör).

> Kan tänka mig att det finns bättre sätt än det jag använder, tex: "VariabelX Equ 0xA1"?

Ja, "VariabelX RES 1". Vilken adress VariabelX hamnar på är ganska ointressant.
Du kan även styra med DATA direktiven vilken bank du vill ha dom i (t.ex ACS eller var-som-helst).
Skriv svar