In de 90S8535, zit een 10bit ADC register, als ik dit laadt in bijv. het ZL en ZH register (r30 en r31). Is het daarna mogelijk om m.b.v. bv CPI de complete 16bits waarde te testen ?

Ik bedoel het volgende:

in ZL, ADCL
in ZH, ADCH

cpi Z, 1023

Is dat laatste mogelijk en zo nee, wat is een andere manier om een 16bits waarde te controleren met een waarde van hoger dan 0xFF ?

Groeten en bedankt
Antoine

ik denk dat je eerst Zlow moet vergelijken ( 1e 8bits dus ) en dan Z high

1023 = 00000011 11111111 in 16-bit notatie

dus eerst in
ZL, ADCL
cpi 0b1111111

daarna

in ZH, ADCH
cpi 0b00000011

althans zou zou ik het proberen :)

Op 19 maart 2003 15:46:30 schreef Antoine:
Is dat laatste mogelijk en zo nee, wat is een andere manier om een 16bits waarde te controleren met een waarde van hoger dan 0xFF ?

Nog even los van of het wel of niet mogelijk is.
Een 16 bit getal dat groter dan 0xFF is is dus
0x0100, oftwel, als je in het hoge register controleerd of het groter is dan 0 dan ben je er toch al!

Ja maar dat is het probleem niet, ik noemde dat zuiver als voorbeeld. Ik heb een waarde tussen de 0x0100 en de 0x2FF, en dat moet ik dus vergelijken, gezien dit 8 keer achterelkaar gebeurd (verificatie van spanningsdippen door het zenden van een draadloos modem), moet dit dus niet omslachtig gebeuren.

Ik had e.e.a. gevonden weet echter niet of dit werkt

CP r16, ZL
CPC r17, ZH
BRxx enz enz

Weet iemand of dit mogelijk is ?

Okay, het is dus mogelijk wat ik hierboven let zien, daarmee kun je 16bits waarden vergelijken.

Op 29 maart 2003 22:55:17 schreef Antoine:
Okay, het is dus mogelijk wat ik hierboven let zien, daarmee kun je 16bits waarden vergelijken.

Handig om weten!
Bedankt