- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 10

Thema: RP6_TV_ Remote

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.713
    Zitat Zitat von fabqu
    ... Wo wird denn bewerkstelligt, dass der RP6 weiß, dass eine Taste auf der Remote losgelassen wurde ...
    Die Antwort hat ja schon die Fernsteuerung parat: im ersten Byte - Start- und Adressbits - ist das dritte Bit (von Bit1 bis Bit 8 ) das Togglebit. Das wird invertiert jedes Mal, wenn eine Taste gelöst und neu gedrückt wird. Damit ist einfach festzustellen, ob die gleiche Taste festgehalten wird => das Togglebit bleibt dabei gleich.
    Ciao sagt der JoeamBerg

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Hmm, danke dir.
    Das geht nun auch, aber ich bin grad am verzweifeln:
    Wenn ich die Abfragen für RC5-Code, -Adresse und -Togglebit drinnen habe, dann geht auf der Base nahzu nix mehr. Sie führt zwar Befehle aus, aber das Senden der Sensordaten der Base durch die M128 an den PC (Licht L/R, Speed L/R, Bumper L/R vorne/hinten, Objekte L/R vorne/hinten, Motorstrom L/R, Register der Status-LEDs) geht überhaupt nicht mehr. Bestenfalls um etliche Sekunden verzögert...
    Streiche ich das Zeug raus, geht wieder alles!!!
    Und wenn ich nur alles für die RC5-Adresse rausnehme, geht alles, bis auf Speed L/R, Strom L/R, Bumper vorne und ACS vorne. Das heißt, ACS hinten, Bumper hinten und Helligkeit geht wieder.
    Was geht da ab???

    Hier mal mein Code ohne RC5-Adr.:
    In der Base:
    Code:
    ...
    #define I2C_REG_LEDS              27
    //#define I2C_REG_RC5_ADR              28
    #define I2C_REG_RC5_DATA          28
    #define I2C_REG_RC5_TOGGLE          29
    #define I2C_REG_BUMP_BACK_L         30
    #define I2C_REG_BUMP_BACK_R         31
    ...
    
            I2CTWI_readRegisters[I2C_REG_LEDS] =              (uint8_t)(statusLEDs.byte);
            //I2CTWI_readRegisters[I2C_REG_RC5_ADR] =          (uint8_t)((lastRC5Reception.device)|(lastRC5Reception.toggle_bit<<5));
            I2CTWI_readRegisters[I2C_REG_RC5_DATA] =          (uint8_t)(lastRC5Reception.key_code);
            I2CTWI_readRegisters[I2C_REG_RC5_TOGGLE] =          (uint8_t)(lastRC5Reception.toggle_bit);
            I2CTWI_readRegisters[I2C_REG_BUMP_BACK_L] =      (uint8_t)(bumper_back_left);
            I2CTWI_readRegisters[I2C_REG_BUMP_BACK_R] =      (uint8_t)(bumper_back_right);
    In der M128:
    Code:
    ...
        status_leds_base = messageBuf[24];
        //RC5_adr = messageBuf[25];
        RC5_data = messageBuf[25];
        RC5_toggle = messageBuf[26];
        bumper_back_left = messageBuf[27];
        bumper_back_right = messageBuf[28];
    
    
     /*print("RC5-Adr:");
                printInteger(RC5_adr);
                print("\n");*/
    
                print("RC5-Code:");
                printInteger(RC5_data);
                print("\n");
    
                print("RC5-Toggle:");
                printInteger(RC5_toggle);
                print("\n");
    
                print("LEDsBase:");
                printInteger(status_leds_base);
                print("\n");
    
                print("BumpHL:");
                printInteger(bumper_back_left);
                print("\n");
    
                print("BumpHR:");
                printInteger(bumper_back_right);
                print("\n");
    Danke Euch

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress