8051 - Vergleich von Akkuinhalt und Register

  • #1
T

Thiemo

Mitglied
Themenersteller
Dabei seit
09.04.2005
Beiträge
8
Reaktionspunkte
0
Ort
LB
Hallo


Ich habe ein Problem mit dem Vergleichen vom Akku(a) und einem Register(r2). Mit welchem Befehl kann ich die beiden Werte vergleichen ?
Den Befehl cmp hab ich in meiner Befehlsliste nicht. Das einzige, daß ich gefunden habe ist
cjne a,#data,rel und cjne a,adr,rel
- Befehlsbeschreibung für: cjne a,#data,rel -Vergleiche Akku mit Konstante und verzweige bei Ungleichheit.Andernfalls fahre im Programm fort. und
cjne a,adr,rel - Vergleich Akku- und Speicherinhalt und verzweige bei Ungleichheit.
Leider verstehe ich das nicht ganz. Was ist mit verzweigen gemeint ?

Kennt jemand einen Befehl zum vergleichen ?



In meinem Programm möchte ich die zwei Werte vergleichen(a-r2), wenn der Wert grösser/gleich Null 0 ist, soll ein Sprung zu ZEIT(Sprungadresse) gemacht werden. Und wenn der Wert kleiner ist soll ein Relais(liegt auf Port P2.0) eingeschaltet werden und eine Kontroll-Spannung am Ausgang(Aout) anliegen. das Relais soll so lange eingeschaltet sein, bis der Vergleichswert grösser/gleich 0 ist.

Das Hauptprogramm liegt als Anhang bei.
Ausschnitt aus dem Programm:

...
RELAISAUS bit p2.0 ;Ausgang für das Relais
...


mov a,#LCDPosIstwert ;Cursor-Position für den Istwert
lcall cursorpos ;an LCD ausgeben
lcall Ain2
lcall dezaus


;subb a,r2 ;1.Versuch
;jc AUS ;1.Versuch
;jz AUS ;1.Versuch

cjne a, r2,rel ;??
jz AUS ;Sprung bei Wert gleich 0
jc AUS ;Sprung bei grösser gleich 0



RELAIS: setb RELAISAUS ;Relais ein
sjmp ZEIT ;Sprung ins weitere PROG

AUS: clr RELAISAUS ;Relais aus


ZEIT: mov r0,#250
...


Ich hoffe, daß mir jemand helfen kann.
Im voraus DANKE !!!!

Gruß
Thiemo
 
Thema:

8051 - Vergleich von Akkuinhalt und Register

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben