Okay - ich versuch´s mal in aller Kürze:

Die einzelnen Kommandos bestehen (fast) immer aus 16 Bits, die per SPI an den Chip gesendet werden. An den ersten paar Bits erkennt der Chip, welches Kommando gerade kommt. Wenn Du sie im Datenblatt mal miteinander vergleichst wirst Du feststellen, dass jedes Kommando tatsächlich eine eigene Anfangssequenz hat.

Beispiel "Frequency Setting Command" des Empfängers RFM01: Das besteht aus den 16 Bits 1,0,1,0,f11,f10,f9...f1,f0.
An der "1010" erkennt der Chip, dass jetzt die Frequenzinfo kommt, und die 12 Bits f11-f0 ergeben den Wert "F". Um den Empfänger z.B. auf 435 MHz zu programmieren, muss "F" den (dezimalen) Wert 2000 haben (Frequenz = 430 +(F*0,0025), siehe Datenblatt!).

Du musst also die Bitfolge 1010 0111 1101 0000 rausschieben - und das geht am einfachsten so:
Code:
Config SPI = soft, (.....)
Spiinit

Dim A(2) as byte
A(1) = &B10100111
A(2) = &B11010000
Spiout A(1), 2
Und schon empfängt der RX auf 435,000 MHz. Nach dem Ausschalten vergisst er natürlich alles - und das ist die tiefere Bedeutung der letzten Spalte ("POR") bei den Kommando-Bytes: Das ist der Wert (in Hex), der beim Power-On-Reset in dem Register steht - sozusagen der Default-Wert. Bei dem Frequenz-Register ist das A680, entspricht binär 1010 0110 1000 0000. 1010 weil´s das Frequenz-Register ist, und 0110 1000 0000 = Dezimal 1664. Macht als 430 + 1664 * 0,0025 MHz = 434,16 MHz.
Warum das Ding mit so einer krummen Frequenz aufwacht, weiß ich nicht. Wobei ich jetzt auch erstmal pennen gehen werde

Für erste Gehversuche würde ich mich mal mit dem Configuration Setting Command und dem Receiver Setting Command beschäftigen. Der ganze andere Rest (Wake-Up-Timer, Low-Battery-Detector usw) ist erstmal nicht so wichtig...

Etwas klarer jetzt??