- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 246

Thema: Hardware-Fragen zur Multi-IO

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Thorben W
    Registriert seit
    17.02.2012
    Ort
    Niedersachsen
    Beiträge
    108
    Zu dem Problem mit den Bumpern der Code

    Code:
    /*****************************************************************************/
    // Includes:
    
    #include "RP6M256Lib.h" 
    #include "RP6I2CmasterTWI.h"    // I2C Master Library
    #include "RP6M256_I2CMasterLib.h"
    #include "RP6M256_LFSBumperLib.h"
    
    #include <string.h>
    
     /**
     * Bumpers Event handler
     */
    void bumpersStateChanged(void)
    {
        if(bumper_left && bumper_right)
        {
            wifiControl.dir = FWD;
                    wifiControl.speed_left = 0;
                    wifiControl.speed_right = 0;
                    clearPosLCD(3,0,16);
                    setCursorPosLCD(3, 0);
                    writeStringLCD_P("stop");
            moveCommand(&wifiControl);
        }
        else if(bumper_left) 
        {
            wifiControl.dir = FWD;
                    wifiControl.speed_left = 0;
                    wifiControl.speed_right = 0;
                    clearPosLCD(3,0,16);
                    setCursorPosLCD(3, 0);
                    writeStringLCD_P("stop");
            moveCommand(&wifiControl);
        }
        else if(bumper_right)
        {
            wifiControl.dir = FWD;
                    wifiControl.speed_left = 0;
                    wifiControl.speed_right = 0;
                    clearPosLCD(3,0,16);
                    setCursorPosLCD(3, 0);
                    writeStringLCD_P("stop");
            moveCommand(&wifiControl);
        }
    }
    
    
    // ... //
     
    int main(void)
    {
        initRP6M256(); 
        initLCD();// IMPORTANT:
        lfsbumper_init();                            // LFS & Bumper init!!!
    
        // ---------------------------------------
        I2CTWI_initMaster(100);  
        I2CTWI_setRequestedDataReadyHandler(I2C_requestedDataReady);
        I2CTWI_setTransmissionErrorHandler(I2C_transmissionError);
        MULTIIO_BUMPERS_setStateChangedHandler(bumpersStateChanged);
        BUMPERS_setStateChangedHandler(bumpersStateChanged);
        
    
    // ... //
        
    
        while(true) 
        { 
            task_checkINT();
            task_I2CTWI();
            behaviourController();
            //task_webserver(); 
            task_MULTIIO_BUMPERS();
    
        }
        return 0;
    }
    Es funktioniert leider noch nicht ob wohl ich im vergleich zum letzten mal task_MULTIIO_BUMPERS(); erweitert habe.
    Thorben W

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.05.2009
    Ort
    Berlin
    Beiträge
    450
    Hi,
    sollte Deine Eventhandler nicht

    void MULTIIO_BUMPERS_stateChanged(void)

    heißen ? den Du da aufrufst ist der für die alten Bumper.
    Gruß TrainMen

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Thorben W
    Registriert seit
    17.02.2012
    Ort
    Niedersachsen
    Beiträge
    108
    Ich rufe beide auf den für "vorne" und den für "hinten"
    Thorben W

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.05.2009
    Ort
    Berlin
    Beiträge
    450
    ja Du rufst beide in der Main auf, Du sagst aber nur dem alten was er machen soll wenn Kontakt da ist.
    Gruß TrainMen

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Thorben W
    Registriert seit
    17.02.2012
    Ort
    Niedersachsen
    Beiträge
    108
    Reicht nicht auch einer für beide? Probier ich dann mal aus
    Thorben

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.05.2009
    Ort
    Berlin
    Beiträge
    450
    Dirk benutzt ja in den Libs andere Variablen die abgefragt werden müssen, als die der alten Bumper.
    Wie sollte das in Deinem Code funktionieren ? Kontakt vorn - ...fahre Vorwärts Kontakt hinten - ...fahre Vorwärts wäre ja dann Deine Programm Logik und das wäre ja unsinn. Du mußt also schon die Zustände aller 4 Bumper abfragen und je nach dem reagieren.
    Gruß TrainMen

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    @inka:
    also schauen wir mal was mitte juli geht...
    Wenn du vorher schon mal was machen willst:
    Setz mal in der Demo (RP6Control_MultiIO_05) die I2C-Busgeschwindigkeit weiter runter.
    Und zwar in 10er Schritten von 100 kHz auf 90, 80, 70. Jeweils neu kompilieren und testen.
    Zeile: I2CTWI_initMaster(100);
    Gruß
    Dirk

Ähnliche Themen

  1. Software-Fragen zur Multi-IO
    Von fabqu im Forum Robby RP6
    Antworten: 210
    Letzter Beitrag: 27.02.2015, 11:07
  2. Robotik einstieg, hardware fragen.
    Von antidose im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 10
    Letzter Beitrag: 26.11.2012, 19:56
  3. Game Boy Camera an AVR -- Ein paar Fragen zur Hardware
    Von Christoph2 im Forum AVR Hardwarethemen
    Antworten: 31
    Letzter Beitrag: 26.05.2009, 21:45
  4. Rasenmähroboter fragen zur lenkung und mehr fragen :-)
    Von andiwalter im Forum Staubsaugerroboter / Reinigungs- und Rasenmähroboter
    Antworten: 11
    Letzter Beitrag: 11.05.2009, 18:25
  5. Anfängerfragen zur Hardware (ATMega)
    Von Maik20HSW im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 25.07.2007, 10:28

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress