Icecap
Det där var ett bra påpekande. Jag var helt fel ute, tog ett tag innan jag förstod vad ni menade. Tack.
Sodjan
Med tanke på ovanstående hade jag inte alls förstått det rätt bara gjort något som verkade fungera. Nu har jag gjort om igen och det här ser väl lite bättre ut.
Kod: Markera allt
Section Info
Section Type Address Location Size(Bytes)
--------- --------- --------- --------- ---------
RESET_VEC code 0x000000 program 0x000004
.cinit romdata 0x000004 program 0x000002
ISR_VEC code 0x000008 program 0x000004
FUNCTIONS code 0x00000c program 0x00022c
DP_DATA code 0x000238 program 0x000142
DP_EXTRA code 0x00037a program 0x000080
MAIN code 0x0003fa program 0x000052
UART_LIB code 0x00044c program 0x000030
ISR_ROUTINE code 0x00047c program 0x00001c
DP_DATA_VARS udata 0x000000 data 0x00003e
MAIN_VARS udata 0x000060 data 0x00006f
TEST_VARS udata 0x0000cf data 0x000002
DP_DATA_VARS på adress 000h vilket är i accessbank. Nu fungerar testprogrammet som det är tänkt så nu är det dags att skrivas om på riktigt. Jag har dock några funderingar.
Till att börja med, ska jag lägga alla variabler i accessbank eller bara det jag använder lokalt i mina funktionsfiler? Jag är inte riktigt säker på hur jag skall använda accessbank.
Hur gör jag med SFR? Borde det inte vara bra att ha de i bank 15 (accessbanksfr). Idagsläget definerar jag dem precis som en variabel enligt:
Kod: Markera allt
avstandsdata res 20 ;Array för avståndsdata
Och anropar dem genom:
Kod: Markera allt
;Välj FSR0 för att lagra data
lfsr FSR0, avstandsdata
.
.
.
Jag menar det fungerar ju att ha dem i accessbank men vill man ha lite mer data så räcker ju inte de där 96byte långt.