05.11.2013 Aufrufe

est Bewegung durch eine 3D-Landschaft mit ... - David Zaadstra

est Bewegung durch eine 3D-Landschaft mit ... - David Zaadstra

est Bewegung durch eine 3D-Landschaft mit ... - David Zaadstra

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Projektarbeit 2002, BKIK 2/1<br />

<strong>David</strong> <strong>Zaadstra</strong>, Alexander Fuchs<br />

<strong>Bewegung</strong> <strong>durch</strong> <strong>eine</strong> <strong>3D</strong>-<strong>Landschaft</strong> <strong>mit</strong> Fernbedienung<br />

Elektronikschule Tettnang<br />

$EJECT<br />

;//////////////////////////////////////////////////////////////////////////<br />

;--------------------------------------------------------------------------<br />

; C O M P A R E O N E<br />

; wird in Compare verwendet<br />

; vergleicht immer nur 1 Signal (6 Bytes) des Datensatzes <strong>mit</strong> dem<br />

empfangenen<br />

; Signal<br />

; hinterlässt bei Übereinstimmung des Signals b = 1<br />

; ansonsten b = 0<br />

;--------------------------------------------------------------------------<br />

COMPAREONE MACRO<br />

local m1, m2, signalfalse<br />

push 00<br />

push 01<br />

push 02<br />

push acc<br />

push dph<br />

push dpl<br />

; sichern<br />

mov r1, #6 ; Anzahl der Bytes pro Signal<br />

m2:<br />

mov r2, #0h ; dpl-Zeiger<br />

movx a,@dptr ; Datensatzbyte holen, dptr ist von<br />

; Compare g<strong>est</strong>ellt<br />

mov r0,a ; zum Vergleichen in R0 schieben<br />

inc dptr ; auf nächstes Byte stellen<br />

push dph<br />

push dpl<br />

mov dph,#0C0h ; empfangenes Byte holen<br />

mov dpl, r2<br />

inc r2<br />

movx a,@dptr<br />

pop<br />

pop<br />

dpl<br />

dph<br />

subb a,r0<br />

jz m1<br />

; vergleichen<br />

m1:<br />

sind<br />

mov b, #0 ; Signale nicht identisch<br />

jmp signalfalse<br />

djnz r1, m2<br />

; so lange, bis 6 Bytes <strong>eine</strong>s Signals verglichen<br />

mov b, #1 ; Signal identisch<br />

signalfalse:<br />

pop dpl<br />

pop dph<br />

pop acc<br />

pop 02<br />

pop 01<br />

pop 00<br />

- 44 -

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!