PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Newbie]: Variablen????



kante23
21.11.2007, 18:57
hallo,
wie bereits geschrieben beschäftige ich mich erst seit kurzem mit PICs würde nun aber mich freuen, wenn mir jemand eine ganz kurze Erklärung zu Variablen in Asambler geben kann (oder auch einen Link).
Ich verstehe noch nicht ganz, wo im Pic sie localisiert sind, wenn ich mittels "equ" einer Variablen in meinem Programm eine (bis jetzt willkürliche) Adresse zuweise. In welcher Bank befindet sie sich dan? ist das abhängig von der zugewiesenen adresse? Oder garnich in den Banks sonder im internen Rang?
Hab dazu in den Büchern nichts gefunden und auch nicht wirklich im Inet.
Vlt kann mir jemand einen kurzen abriss geben, bzw mir eine gute url nennen.
Vielen dank im vorraus
gruß Kante

HF SHOOTER
21.11.2007, 19:28
Hi schön ist es wenn man Variablen (8 bit Register) mit cblock festlegt, dann kann man sicher sein das man diese nciht auf einer bereits belegten Adresse ablegt.


cblock
variable1
variable2
...
endc

Wenn du es mit equ machst, musst Du vorher schaun wo noch Platz ist. Die Variablen werden im RAM gespeichert, also dort wo auch das Special Function Register (SFR) ist, indem man z.B. die Bank auswählt oder den Timer konfiguriert.
Man muss sich also eine Adresse suchen die im Generel Purpose Memory (GPR, Ram zur freien Verfügung) liegt, z.B. die Adreresse 0x10 beim 16F84.
Nimmst Du cblock...endc dann schaut der Compiler für dich wo noch Platz frei ist.

mfg
Benny

kante23
21.11.2007, 22:42
vielen dank,
genau das habe ich gesucht :)
kante