Hallo !
Hier das Beispiel, das man die Systemroutinen für den Antrieb nicht benötigt!
Code:
'       EINFACHES BEISPIEL ZUR BENUTZUNG VON ANTRIEB OHNE SYS-Befehle

' ---------------------------------------------------------------------
'                       FUNKTION DES PROGRAMMS
'----------------------------------------------------------------------
' ACHTUNG:
' Der erste Schritt in der Initialisierung ihres Programms sollte immer die Zeile

'                        REV_L=on:REV_R=on:SYS PLM_SLOW

' enthalten. Diese Zeile initialisiert die Ports für die Richtungsumschaltung
' des Antriebs und die PLM Frequenz.

' DER BETRIEB DER MOTOREN OHNE DIESE INITIALISIERUNG FÜHRT UNWEIGERLICH ZUR ZERSTÖRUNG
' DER ANTRIEBSELEKTRONIK !!
'-----------------------------------------------------------------------------------


' Für dieses Beispiel sind folgende SYSTEMROUTINEN relevant:
'
' POWER:
' gosub SUBSYS_PWR_ON  ;Schaltet die Subsysteme EIN/AUS
' gosub SUBSYS_PWR_OFF

' AUSGABEN:
' gosub LED1ON   ;zum Ein/Ausschalten der LED1 analog auch
' gosub LED1OFF  ;LED 2bis 4
' gosub LEDSOFF  ;schaltet alle LEDS aus
'
' ACS:
' gosub NO_ACS_INT   ;Interruptbetrieb abgeschaltet
' SYS ACS_HI         ;ACS HI POWER (SEHBEREICH ca. 60cm)
' SYS ACS_LO         ;ACS LO POWER (SEHBEREICH ca. 30cm)
' SYS ACS_MAX        ;ACS MAX POWER(SEHBEREICH ca. 100cm)
' SYS COMNAV_STATUS  ;Abfrage des ACS
'-------------------------------------------------------------------
' ANTRIEB Neu
'
' GOSUB REVR           ;Kette rückwärts laufen lassen R/L
' GOSUB REVL

' GOSUB FWDR           ;Kette vorwärts laufen lassen R/L
' GOSUB FWDL

' GOSUB FWD	       ;beide Ketten vorwärts
' GOSUB REV            ;beide Ketten rückwärts

' GOSUB ROTR           ;Auf der Stelle nach R/L drehen
' GOSUB ROTL
'----------------------------------------------------------------
'--------------------------
'------ I/O PORTS ---------
'--------------------------
'- INTERFACE LCD/EXTPORT --
define sdio         port[1]
define sclio        port[3]
define strobe       port[4]
'-- INTERFACE COM/NAV -----
define DATALINE     port[1]
define CLOCKLINE    port[2]
'--------------------------
'------ SENSORS ---------
'--------------------------
define LIGHT_L      ad[7]
define LIGHT_R      ad[6]
define SYS_VOLTS    ad[3]
define CHRG_CURRENT ad[2]
define SYS_CURRENT  ad[1]
define MIC          ad[4]
define TOUCH        ad[5]
'---------------------------
'------  DRIVE -------------
'---------------------------
define SPEED_L        da[1]
define SPEED_R        da[2]
define REV_L        port[6]
define REV_R        port[5]
'--------------------------
'---- SYSTEM MEMORY -------
'--------------------------
'--- INTERFACE BUFFER ----
define LBYTE         byte[1]
define HBYTE         byte[2]
define SUBCMD        byte[3]
'---- OPERATION DATA ------
define EXTPORT       byte[4]
define LED1_F        bit[29]
define LED2_F        bit[30]
define LED3_F        bit[31]
define LED4_F        bit[32]
define SYSTEM_STATUS byte[5]
define ACSL_F        bit[33]
define ACSR_F        bit[34]
define IR_F          bit[35]
'--------------------------
'----  USER MEMORY  -------
'--------------------------
define TIM           byte[6]
define PGM           byte[7]
'--- SYSTEMROUTINEN -----------
define PLM_SLOW      &H01C4
define SYSTEM        &H01C9
define COMNAV        &H0154
'- ERWEITERTE SYSTEM ROUTINEN -
'-------------------------------------------------------------------
define COMNAV_STATUS &H0125   'UPDATED ALLE FLAGS IM STATUS-REGISTER
define ACS_LO        &H01E1   'ACS POWER LO
define ACS_HI        &H01E9   '
define ACS_MAX       &H01F1   '
define SEND_TLM      &H014A   'SENDET TELEMETRIE (CH=HBYTE,DATEN=LBYTE)
define SEND_SPEEDR   &H0134   'SENDET TLM KANAL 8,PLM RECHTS
define SEND_SPEEDL   &H013A   'SENDET TLM KANAL 7,PLM LINKS
define SEND_SYSSTAT  &H0144   'SENDET TLM KANAL 0,SYSTEM STATUS
                              '(FLAGS für ACS,FWD/REV, ACS_LO/HI/MAX)

'---------- INIT---------------
gosub SUBSYS_PWR_ON
beep 368,10,50
'---- SYSTEM OPERATION MODE (NO INTERRUPT) ----
gosub NO_ACS_INT:beep 368,10,0:SYS ACS_MAX
'------------ ANTRIEB -------------------------
REV_L=on:REV_R=on:SYS PLM_SLOW

'--------------------------------------------
'---         DEMO ANTRIEB                 ---
'--------------------------------------------
#loop
pause 5:SYS COMNAV_STATUS
'--------- LEDs ansteuern --------------------
if ACSL_F=on then gosub LED4ON else gosub LED4OFF
if ACSR_F=on then gosub LED1ON else gosub LED1OFF
'--------- AUSWEICHMANÖVER EINLEITEN ---------
if (ACSL_F and ACSR_F)=on then goto rotate
if ACSL_F=on then goto move_right
if ACSR_F=on then goto move_left
'SYS FWD:SPEED_L=85:SPEED_R=85:goto loop
        gosub FWD:SPEED_L=85:SPEED_R=85:goto loop

'-------- AUSWEICHEN NACH RECHTS -------------
#move_right
SPEED_R=70:SPEED_L=85:goto loop
'-------- AUSWEICHEN NACH LINKS -------------
#move_left
SPEED_L=70:SPEED_R=85:goto loop
'----------    ROTIEREN  --------------------
#rotate
SPEED_L=85:SPEED_R=85:gosub ROTR:goto loop
'----------------------------------------------



'IIIIIIIIII Neue ANTRIEBSROUTINEN IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
' Damit im Treiber Platz wird, kann auch mit altem Treiber p5driv.s19
' benutzt werden ,bringt aber dann nichts !-)

#REVR                           'ANTRIEB RECHTS RÜCKWÄRTS
        REV_R=off        
        return
#REVL                           'ANTRIEB LINKS RÜCKWÄRTS
        REV_L=off
        return        
#FWDR                           'ANTRIEG RECHTS VORWÄRTS
        REV_R=on
        return
#FWDL                           'ANTRIEB LINKS VORWÄRTS
        REV_L=on
        return
#ROTR                           'RECHTS DREHEN
        gosub FWDL
        gosub REVR
        return
#ROTL                           'LINKS DREHEN
        gosub FWDR
        gosub REVL
        return
#REV                            'RÜCKWÄRTS
        gosub REVL
        gosub REVR
        return
#FWD                            'VORWÄRTS
        gosub FWDL
        gosub FWDR
        return
'-------------------------------------------------------------------
                                          
'IIIIIIIIIII LED DRIVER IIIIIIIIIIIIIIIII
#LED1ON
LED1_F=on:goto EXTPORT_WRITE
#LED1OFF
LED1_F=off :goto EXTPORT_WRITE
#LED2ON
LED2_F=on:goto EXTPORT_WRITE
#LED2OFF
LED2_F=off:goto EXTPORT_WRITE
#LED3ON
LED3_F=on:goto EXTPORT_WRITE
#LED3OFF
LED3_F=off:goto EXTPORT_WRITE
#LED4ON
LED4_F=on:goto EXTPORT_WRITE
#LED4OFF
LED4_F=off:goto EXTPORT_WRITE
#LEDSOFF
EXTPORT=EXTPORT and &H0F:goto EXTPORT_WRITE
#EXTPORT_WRITE
SYS SYSTEM:pulse STROBE:RETURN

'IIIIII SYSTEMROUTINEN COMM/NAV SYSTEM  IIIII

#GET_IRDATA
SUBCMD=1:sys COMNAV:return
#SEND_IRDATA
SUBCMD=0:sys COMNAV:return
#RC5
SUBCMD=4:sys COMNAV:LBYTE= HBYTE and &HFC
HBYTE=00:SUBCMD=2:sys COMNAV:return
#RC5_INT
SUBCMD=4:sys COMNAV:LBYTE= (HBYTE and &HFE)or 2
HBYTE=00:SUBCMD=2:sys COMNAV:return
#REC80
SUBCMD=4:sys COMNAV:LBYTE= (HBYTE or &H01)and&HFD
HBYTE=00:SUBCMD=2:sys COMNAV:return
#REC80_INT
SUBCMD=4:sys COMNAV:LBYTE= (HBYTE or &H03)
HBYTE=00:SUBCMD=2:sys COMNAV:return

'IIIIII   SYSTEMROUTINEN SYSTEM  IIIIIIIIIIII
#NO_ACS_INT
SUBCMD=4:sys COMNAV:LBYTE= HBYTE and &HFB
HBYTE=00:SUBCMD=2:sys COMNAV:return
#ACS_INT_200
SUBCMD=4:sys COMNAV:LBYTE= HBYTE or &H04
HBYTE=50:SUBCMD=2:sys COMNAV:return
#SUBSYS_PWR_ON
sdio=on:sclio=on:strobe=off:EXTPORT=(EXTPORT and &HFE)or 8
sys SYSTEM:return
#SUBSYS_PWR_OFF
EXTPORT=(EXTPORT and &HF7)or 1:sys SYSTEM
deact sdio:deact sclio:return
#CLR_DISTANCE
SUBCMD=3:sys COMNAV:return
#L_DISTANCE
SUBCMD=6:sys COMNAV:return
#R_DISTANCE
SUBCMD=7:sys COMNAV:return
'---------COM/NAV GERÄTEREIBER -------------
'syscode "p5driv.s19"