Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Rasenmaehroboter fuer schwierige und grosse Gaerten im Test

Zeile 1: Zeile 1:
 
!!UNTER BEARBEITUNG!!
 
!!UNTER BEARBEITUNG!!
  
{|
+
{|style="margin-top:10px;"
 
|
 
|
 
{|{{Blauetabelle}}
 
{|{{Blauetabelle}}
 
| '''ADDLW'''  
 
| '''ADDLW'''  
| '''Add Zahl und W'''  
+
| '''ADD Zahl und W'''  
 
|-
 
|-
 
|Syntax:  
 
|Syntax:  
Zeile 86: Zeile 86:
 
|Beschreibung:  
 
|Beschreibung:  
 
|Der Inhalt des W Registers wird mit dem Register f verundet und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
 
|Der Inhalt des W Registers wird mit dem Register f verundet und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
 +
|}
 +
 +
|-
 +
 +
|
 +
{|{{Blauetabelle}}
 +
| '''BCF'''
 +
| '''Bit Clear f'''
 +
|-
 +
|Syntax:
 +
| BCF f,b
 +
|-
 +
|Operanten:
 +
| 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
 +
|-
 +
|Operation:
 +
| 0 → (f<b>)
 +
|-
 +
|Beeinflusste Statusbits:
 +
| /
 +
|-
 +
|Beschreibung:
 +
| Bit ‘b’ in Register ‘f’ wird auf 0 gesetzt
 +
|}
 +
 +
|
 +
 +
{|{{Blauetabelle}}
 +
| '''BSF'''
 +
| '''Bit Set f'''
 +
|-
 +
|Syntax:
 +
| BSF f,b
 +
|-
 +
|Operanten:
 +
| 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
 +
|-
 +
|Operation:
 +
| 0 → (f<b>)
 +
|-
 +
|Beeinflusste Statusbits:
 +
| /
 +
|-
 +
|Beschreibung:
 +
| Bit ‘b’ in Register ‘f’ wird auf 1 gesetzt
 +
|}
 +
 +
|-
 +
 +
|
 +
{|{{Blauetabelle}}
 +
| '''BTFSC'''
 +
| '''Bit Test f, Skip if Clear'''
 +
|-
 +
|Syntax:
 +
| BTFSC f,b
 +
|-
 +
|Operanten:
 +
| 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
 +
|-
 +
|Operation:
 +
| skip if (f<b>) = 0
 +
|-
 +
|Beeinflusste Statusbits:
 +
| /
 +
|-
 +
|Beschreibung:
 +
| Wenn das Bit b im Register f 0 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 1 ist, dann wird der nächste Befehl ausgeführt.
 +
|}
 +
 +
|
 +
 +
{|{{Blauetabelle}}
 +
| '''BTFSS'''
 +
| '''Bit Test f, Skip if Set'''
 +
|-
 +
|Syntax:
 +
| BTFSS f,b
 +
|-
 +
|Operanten:
 +
| 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
 +
|-
 +
|Operation:
 +
| skip if (f<b>) = 1
 +
|-
 +
|Beeinflusste Statusbits:
 +
| /
 +
|-
 +
|Beschreibung:
 +
| Wenn das Bit b im Register f 1 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 0 ist, dann wird der nächste Befehl ausgeführt.
 +
|}
 +
 +
|-
 +
 +
|
 +
{|{{Blauetabelle}}
 +
| '''CALL'''
 +
| '''Call Subroutine'''
 +
|-
 +
|Syntax:
 +
| CALL k
 +
|-
 +
|Operanten:
 +
| 0 ≤ k ≤ 2047
 +
|-
 +
|Operation:
 +
| (PC) + 1 → TOS,
 +
k → PC<10:0>,
 +
(PCLATH<4:3>) → PC<12:11>
 +
|-
 +
|Beeinflusste Statusbits:
 +
| /
 +
|-
 +
|Beschreibung:
 +
| Als erstes wird die Rückkehradresse (PC+1) in den Stack geschrieben. Dann Die 11bit Sprungadresse in den PC geladen (die 2 MSB kommen aus dem PCLATH).
 +
|}
 +
 +
|
 +
 +
{|{{Blauetabelle}}
 +
| '''CLRF'''
 +
| '''Clear f'''
 +
|-
 +
|Syntax:
 +
| CLRF f
 +
|-
 +
|Operanten:
 +
| 0 ≤ f ≤ 127
 +
|-
 +
|Operation:
 +
| 00h → (f),
 +
1 → Z
 +
|-
 +
|Beeinflusste Statusbits:
 +
| Z
 +
|-
 +
|Beschreibung:
 +
| Das komplette Byte im Register f wird gelöscht (lauter 0er). Das hat zur folge, das Z gesetzt wird.
 
|}
 
|}
  

Version vom 10. April 2007, 13:26 Uhr

!!UNTER BEARBEITUNG!!

ADDLW ADD Zahl und W
Syntax: ADDLW k
Operanten: 0 ≤ k ≤ 255
Operation: (W) + k → (W)
Beeinflusste Statusbits: C, DC, Z
Beschreibung: Der Inhalt des W Registers wird mit der 8-Bit Zahl k ADD addiert und das Ergebnis landet wieder im W Register
ADDWF ADD W und f
Syntax: ADDWF f,d
Operanten: 0 ≤ f ≤ 127 und d ∈ [0,1]
Operation: (W) + (f) → (destination)
Beeinflusste Statusbits: C, DC, Z
Beschreibung: Der Inhalt des W Registers wird mit dem Register f addiert und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
ANDLW AND Zahl mit W
Syntax: ADDLW k
Operanten: 0 ≤ k ≤ 255
Operation: (W) + k → (W)
Beeinflusste Statusbits: Z
Beschreibung: Der Inhalt des W Registers wird mit der 8-Bit Zahl k verundent und das Ergebnis landet wieder im W Register
ANDWF AND W mit f
Syntax: ANDWF f,d
Operanten: 0 ≤ f ≤ 127 und d ∈ [0,1]
Operation: (W) .AND. (f) → (destination)
Beeinflusste Statusbits: Z
Beschreibung: Der Inhalt des W Registers wird mit dem Register f verundet und das Ergebnis landet entweder im W Register (d=0) oder im Register f (d=1)
BCF Bit Clear f
Syntax: BCF f,b
Operanten: 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
Operation: 0 → (f)
Beeinflusste Statusbits: /
Beschreibung: Bit ‘b’ in Register ‘f’ wird auf 0 gesetzt
BSF Bit Set f
Syntax: BSF f,b
Operanten: 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
Operation: 0 → (f<b>)
Beeinflusste Statusbits: /
Beschreibung: Bit ‘b’ in Register ‘f’ wird auf 1 gesetzt
BTFSC Bit Test f, Skip if Clear
Syntax: BTFSC f,b
Operanten: 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
Operation: skip if (f<b>) = 0
Beeinflusste Statusbits: /
Beschreibung: Wenn das Bit b im Register f 0 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 1 ist, dann wird der nächste Befehl ausgeführt.
BTFSS Bit Test f, Skip if Set
Syntax: BTFSS f,b
Operanten: 0 ≤ f ≤ 127 und 0 ≤ b ≤ 7
Operation: skip if (f<b>) = 1
Beeinflusste Statusbits: /
Beschreibung: Wenn das Bit b im Register f 1 ist, dann wird der nachfolgende Befehl nicht und stattdessen ein NOP ausgeführt. Wenn das Bit b 0 ist, dann wird der nächste Befehl ausgeführt.
CALL Call Subroutine
Syntax: CALL k
Operanten: 0 ≤ k ≤ 2047
Operation: (PC) + 1 → TOS,

k → PC<10:0>, (PCLATH<4:3>) → PC<12:11>

Beeinflusste Statusbits: /
Beschreibung: Als erstes wird die Rückkehradresse (PC+1) in den Stack geschrieben. Dann Die 11bit Sprungadresse in den PC geladen (die 2 MSB kommen aus dem PCLATH).
CLRF Clear f
Syntax: CLRF f
Operanten: 0 ≤ f ≤ 127
Operation: 00h → (f),

1 → Z

Beeinflusste Statusbits: Z
Beschreibung: Das komplette Byte im Register f wird gelöscht (lauter 0er). Das hat zur folge, das Z gesetzt wird.

LiFePO4 Speicher Test