-         
+ Antworten
Ergebnis 1 bis 4 von 4

Thema: ACS funktioniert mit Erweiterungsplatine/Treiber nicht ?!

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    09.12.2003
    Beiträge
    40

    ACS funktioniert mit Erweiterungsplatine/Treiber nicht ?!

    Mir ist der Unterschied bei den Define zeilen aufgefallen das
    define ACSL_F bit[33]
    define ACSR_F bit[34] nicht mehr vorkommt.
    Fügt man es nachträglich ein läßt sich das Subsystem trotzdem nicht aktivieren, jemand nen Typ?

  2. #2
    Gast
    Ich habe es ausprobiert.
    Es scheint alles in Ordnung zu sein.
    Richtig ist allerdings, dass die FLAGS
    nicht definiert waren.

    '--------------------------
    '------ I/O PORTS ---------
    '--------------------------
    '- INTERFACE LCD/EXTPORT --
    define sdio port[1]
    define sclio port[3]
    define strobe port[4]
    define LSTROBE port[7]
    '-- INTERFACE COM/NAV -----
    define DATALINE port[1]
    define CLOCKLINE port[2]
    '-- CC2 INTERFACE -------
    define CC2POWER port[8]
    '--------------------------
    '------ 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]
    define LEDPORT byte[6]
    define L1_F bit[41]
    define L2_F bit[42]
    define L3_F bit[43]
    define L4_F bit[44]
    define L5_F bit[45]
    define L6_F bit[46]
    define L7_F bit[47]
    define L8_F bit[48]
    '--------------------------
    '---- USER MEMORY -------
    '--------------------------
    define TIM byte[7]
    define PGM byte[8]
    '--- SYSTEMROUTINEN -----------
    define PLM_SLOW &H01C2
    define SYSTEM &H01C7
    define LED_DRIVE &H01CA
    define COMNAV &H0144
    '- ERWEITERTE SYSTEM ROUTINEN -
    define REVR &H0101 'ANTRIEB RECHTS RÜCKWÄRTS
    define REVL &H0106 'ANTRIEB LINKS RÜCKWÄRTS
    define FWDR &H010B 'ANTRIEG RECHTS VORWÄRTS
    define FWDL &H0110 'ANTRIEB LINKS VORWÄRTS
    define ROTR &H0115 'RECHTS DREHEN
    define ROTL &H0119 'LINKS DREHEN
    define REV &H011D 'RÜCKWÄRTS
    define FWD &H0121 'VORWÄRTS
    define COMNAV_STATUS &H0125 'UPDATED ALLE FLAGS IM STATUS-REGISTER
    define ACS_LO &H01E0 'ACS POWER LO
    define ACS_HI &H01E8 '
    define ACS_MAX &H01F0 '
    define SEND_TLM &H013A 'SENDET TELEMETRIE (CH=HBYTE,DATEN=LBYTE)
    define SEND_SYSSTAT &H0134 'SENDET TLM KANAL 0,SYSTEM STATUS
    '(FLAGS für ACS,FWD/REV, ACS_LO/HI/MAX)
    '---------- INIT---------------
    LSTROBE=off:CC2POWER=on
    gosub SUBSYS_PWR_ON:REV_L=off:REV_R=off
    SYS ACS_MAX
    beep 368,10,0ause 50


    '--------------------------------------------
    '--- DEMO ACS ---
    '--------------------------------------------
    #loop
    '--------- SUBSYSTEM ABFRAGEN ----------------
    pause 2: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
    goto loop

    '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
    #EXTPORT_WRITE
    SYS SYSTEMulse STROBE:RETURN
    '--- LEDS AUF DER BASIS ERWEITERUNG ------
    #L1ON
    L1_F=on:goto LEDPORT_WRITE
    #L1OFF
    L1_F=off :goto LEDPORT_WRITE
    #L2ON
    L2_F=on:goto LEDPORT_WRITE
    #L2OFF
    L2_F=off :goto LEDPORT_WRITE
    #L3ON
    L3_F=on:goto LEDPORT_WRITE
    #L3OFF
    L3_F=off :goto LEDPORT_WRITE
    #L4ON
    L4_F=on:goto LEDPORT_WRITE
    #L4OFF
    L4_F=off :goto LEDPORT_WRITE
    #L5ON
    L5_F=on:goto LEDPORT_WRITE
    #L5OFF
    L5_F=off :goto LEDPORT_WRITE
    #L6ON
    L6_F=on:goto LEDPORT_WRITE
    #L6OFF
    L6_F=off :goto LEDPORT_WRITE
    #L7ON
    L7_F=on:goto LEDPORT_WRITE
    #L7OFF
    L7_F=off :goto LEDPORT_WRITE
    #L8ON
    L8_F=on:goto LEDPORT_WRITE
    #L8OFF
    L8_F=off :goto LEDPORT_WRITE
    #LOFF
    LEDPORT=0
    #LEDPORT_WRITE
    SYS LED_DRIVEulse LSTROBE: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 "p5driv12.s19"

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von HM
    Registriert seit
    01.12.2003
    Beiträge
    161

    ACS funktioniert mit Erweiterungsplatine nicht!

    Hallo,

    ich hatte das gleiche Problem.
    Eine Programmänderung von JanPeter hat mir weitergeholfen, seit dem funktioniert auch das ACS wieder.
    Ich hoffe, JanPeter hat nichts dagegen, wenn ich hier seine Programmzeilen einfüge.
    MfG HM

    Alt:

    '--- SYSTEMROUTINEN -----------
    define PLM_SLOW &H01C4
    define SYSTEM &H01C9
    define COMNAV &H0154
    '- ERWEITERTE SYSTEM ROUTINEN -
    define REVR &H0101 'ANTRIEB RECHTS RÜCKWÄRTS
    define REVL &H0106 'ANTRIEB LINKS RÜCKWÄRTS
    define FWDR &H010B 'ANTRIEG RECHTS VORWÄRTS
    define FWDL &H0110 'ANTRIEB LINKS VORWÄRTS
    define ROTR &H0115 'RECHTS DREHEN
    define ROTL &H0119 'LINKS DREHEN
    define REV &H011D 'RÜCKWÄRTS
    define FWD &H0121 'VORWÄRTS
    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)

    Neu für Erweiterungsplatine:

    '--- SYSTEMROUTINEN -----------
    define PLM_SLOW &H01C2
    define SYSTEM &H01C7
    define LED_DRIVE &H01CA
    define COMNAV &H0144
    '- ERWEITERTE SYSTEM ROUTINEN -
    define REVR &H0101 'ANTRIEB RECHTS RÜCKWÄRTS
    define REVL &H0106 'ANTRIEB LINKS RÜCKWÄRTS
    define FWDR &H010B 'ANTRIEG RECHTS VORWÄRTS
    define FWDL &H0110 'ANTRIEB LINKS VORWÄRTS
    define ROTR &H0115 'RECHTS DREHEN
    define ROTL &H0119 'LINKS DREHEN
    define REV &H011D 'RÜCKWÄRTS
    define FWD &H0121 'VORWÄRTS
    define COMNAV_STATUS &H0125 'UPDATED ALLE FLAGS IM STATUS-REGISTER
    define ACS_LO &H01E0 'ACS POWER LO
    define ACS_HI &H01E8 '
    define ACS_MAX &H01F0 '
    define SEND_TLM &H013A 'SENDET TELEMETRIE (CH=HBYTE,DATEN=LBYTE)
    define SEND_SYSSTAT &H0134 'SENDET TLM KANAL 0,SYSTEM STATUS
    '(FLAGS für ACS,FWD/REV, ACS_LO/HI/MAX)

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.11.2003
    Ort
    Schöneiche b. Berlin
    Alter
    60
    Beiträge
    398
    Nö hab ich nicht!
    Deshalb hab ich es ins Forum gestellt!
    MfG
    janpeter

+ Antworten

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •