Hi

Der PWM-Befehl dürfte für Dein Problem nicht geeignet sein.
Er dauert pro Zyklus 5ms und gibt dabei ein High und ein Low-Pegel raus, der durch die duty-Zahl angegeben wird.
(0 nur low, 127 halb an und halb aus, 255 nur high *denk*)
Damit zu Deinen Zeiten zu gelangen dürfte zwar machbar sein, aber wohl eher umständlich.

Für Dein Problem dürfte der Befehl PULSOUT besser geeignet sein.
Syntax:
PULSOUT pin,time
- Pin ist eine Variable im Bereich von 0 bis 7, welche den i/o Pin spezifiziert
- time ist eine Variable für die Anzahl an High-Perioden (0-65535), bei 4MHz in 10µs Happen

Pin beim PICAXE08M 0,1,2,4 (Pins, die Ausgänge sein können).
Im Beispiel für Pulsout ist folgende Zeile zu sehen:
pulsout 4,150 '1.50ms puls raus an Pin 4
Dabei wird der Pin 4 für 1.5ms auf high gehalten. (bei 4MHz)

Im Anschluß kannst Du eine Pause machen:
pause 5 'Pause von 5ms (Kommawerte sind hier nicht möglich)
ODER
Indem wir auf einem anderem Pin ein Pulsout senden.

Für Dein Beispiel könnte folgendes klappen:
pulsout 4,89 '0.89ms -> 890µs | High an Ausgang 4
pulsout 2,89 '0.89ms -> 890µs | Low an Ausgang 4 (weil wir gerade an 2 arbeiten)

Da PULSOUT den Programmablauf für die Dauer des Puls unterbricht, müsste das schon für Dich brauchbar sein.

Wenn Dir die 10µs Stufung nicht ausreicht, kannst Du durch Umstellen auf 8MHz Takt diese Stufung auf 5µs reduzieren, wenn z.B. Fernbedienungsbefehle teilweise verstümmelt ankommen.

4MHz 10us 'Happen'
8MHz 5us 'Happen'
16MHz 2.5us 'Happen' (vom PICAXE08M nicht unterstützt)

setfreq m4 'auf 4MHz
setfreq m8 'auf 8MHz

Zu Achten ist bei der Nutzung von DEGUG, daß im DEBUG-Fenster die Frequenz mit dem im Programm übereinstimmen muß, da sonst das Debug-Fenster die Werte des PIC nicht auslesen kann.

MfG
Posti

EDIT:
Was ich gerade sehe:
(6,9444µS) dann Pause (20,8332µS)
Da wir, bei 8MHz eine Stufung von 5µs haben, könnte es sein, daß diese Funktionen Dich doch nicht zum Erfolg führen.
Da müsste man vll doch mit PWM arbeiten (PWM unterbricht das Programm ebenfalls während des Sendens).

PWM pin,duty,cycles
- Pin is a variable/constant (0-7) which specifies the i/o pin to use.
- Duty is a variable/constant (0-255) which specifies analog level.
- Cycles is a variable/constant (0-255) which specifies number of cycles. Each
cycle takes about 5ms.

PWM 2,255,1
sollte den Pin2 für 5ms auf high halten.
So müsste man auf eine Auflösung von 5ms / 255=19,6µs kommen, was aber für Deine Anforderungen ebenfalls zu langsam ist.
Sollte der PWM-Befehl auch Frequenz-abhängig sein, könnte hier vll auf 10µs (19,6/2) gekommen werden, was Dir aber auch nicht weiterhelfen dürfte.

Sorry, bin mit meinem Latein am Ende :-/

MfG
Posti