Forum: Mikrocontroller und Digitale Elektronik Variablen definition beim AT89S8252


von Felix Reimer (Gast)


Lesenswert?

Seervus

kann mir jemand sagen wie ich bei nem Atmel AT89S8252 Variablen
definiere (jede Variable sol 1 Bit sein)

bisher mache ich es so

Variable EQU 0b

aber das gibt fehler heraus

Mfg felix

von Leopold Stockinger (Gast)


Lesenswert?

hallo felix,

equ gibts nur bei bytes. für bitvariablen musst du "BIT" nehmen.
z.b. TASTER    BIT     P0.0

mfg leo

von Felix Reimer (Gast)


Lesenswert?

also wenn ich ein bit mit dem nammen is_A definieren will dann muss ich
das folgendermassen machen

is_a bit 0b

oder wie sage ich dem µC das der Wert ein bit ist

von Leopold Stockinger (Gast)


Lesenswert?

byte      EQU       000H
benennt die speicherzelle 0 im ram mit dem namen "byte". d.h. du
ordnest der zelle nur einen namen zu.
anstatt   MOV     000H, #5
kannst du also schreiben
          MOV     byte, #5
damit wird dein programm lesbarer.

der 8252er hat auch einen bit-adressierbaren bereich. du musst ihm also
zuerst mitteilen, wo deine bitvariable lokalisiert ist.
wo der bereich liegt weiß ich im moment nicht auswendig, du kannst aber
im datenblatt (www.atmel.com) nachsehen.
dies geschieht eben dann nicht mit EQU sondern mit BIT!!!

danach erst kannst du die variable manipulieren - das geschieht mit
SETB    is_a     (entspricht is_a = 1)
bzw.
CLR     is_a     (entspricht is_a = 0)

leo

von Felix Reimer (Gast)


Lesenswert?

Was mich jetzt noch stört ist, dass ich bisa jetzt denn equ befehl
genommen habe um einer Variablen einen wert zuzuweisen und das hat
immer funktioniert

z.B. CR equ XXh  für z.b ein Delete Zeichen

war das jetzt nur zufall das es geklappt hat oder war des schon korrekt
so?

von Rufus T. Firefly (Gast)


Lesenswert?

equ legt keine Variablen fest, sondern Konstanten.
Das solltest Du auseinanderhalten.

von Felix Reimer (Gast)


Lesenswert?

hab jetzt mal im MC Tools 4 geschaut da steht das so drin

(Kontolliert ihr vielleicht kurz ob ich alles richtig kapiert habe)

is_a BIT 20.0

oder

is_a BIT 20H

MfG Felix

von Leopold Stockinger (Gast)


Lesenswert?

mein fehler.
hab ich verwechselt...

von Felix Reimer (Gast)


Lesenswert?

So bevor ichs vergesse und wieder als unhöflich abgestempelt werde was
ich sicher nicht bin


DANNNNNNNKKKKKKKEEEE für die schnelle hilfe



MfG Felix

von Floriian (Gast)


Lesenswert?

Hi

ist ganz einfach

sbit Taster P1.0

Gruss Flo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.