-
        

Ergebnis 1 bis 4 von 4

Thema: RP6 TWI

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    27.08.2006
    Alter
    69
    Beiträge
    83

    RP6 TWI

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Ich will das Programm PR6Base_Move_05.c als Basis ausbauen.
    Wie übergibt man die Variable vom RP6 Control M32.
    Komme nicht dahinter. Habe bisher nur eingelesen.
    RP6I2CmasterTWI.h und RP6I2CslaveTWI.h bilden wohl die Grundlage.

    Aufgabe:
    Control M32 liest Sharp GP2D12 (gelöst)
    Übergabe a RP6 Base. Wie??
    Fahrwerk wird entsprechend gesteuert (gelöst Beispiele)

    Lese gerade TWI Slave mit avr-gcc RN-Wissen!

    Kurt

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    32
    Beiträge
    1.514
    Hallo Kurt,

    willst Du das RP6-M32 als Slave oder als Master betreiben?

    (--> RP6-M32 als Master heisst: das RP6-M32 steuert den Roboter! Auf der RP6-Base läuft in diesem Fall das RP6Base_I2CSlave Programm.)


    Für den Master Modus sind schon einige Beispiele dabei - u.a. wurde genau das Programm RP6Base_Move_05 für das RP6-M32 angepasst!

    Das Beispielprogramm RP6Control_10_Move_02 hast Du Dir schon angesehen?

    Zusammen mit dem Programm RP6Base_I2CSlave kann man damit den Roboter über das RP6-M32 (fast) so steuern wie man es mit dem Controller auf dem Mainboard tun würde.

    Nur hat man auf dem RP6-M32 mehr freie Rechenleistung, Speicher und I/O Ports.
    Das Programm RP6Base_I2CSlave kümmert sich komplett um den Antrieb, das ACS etc. pp. und entlastet den Controller von diesen Aufgaben.

    Hier wäre es relativ einfach den GP2D12 in das Programm zu integrieren, da man den Wert gar nicht an die RP6-Base weiterleiten müsste...

    MfG,
    SlyD

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    27.08.2006
    Alter
    69
    Beiträge
    83

    RP6 TWI

    Hallo SlyD.
    Danke dir für die Info. Hab schon gesehen. Master kann alles erledigen.
    Muss ich noch probieren.
    ADC7 liest Info von Sharp.
    Ist die Bedingung =< dann fahre zurück.
    Gib mir eine kleine Hilfe.
    Ich beschäftige mich mit 'C' und 'AVR' noch nicht lange.
    Kurt

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    27.08.2006
    Alter
    69
    Beiträge
    83

    RP6 TWI

    Ja, ist doch klar oder so in etwa? Habe ein wenig gebraucht. Man sollte die Programme lesen!

    Aenderung in RP6Control_10_Move2.c

    int main(void)
    {
    ..................
    while(true)
    {
    task_LCDHeartbeat();
    task_checkINT0();
    task_I2CTWI();
    behaviourController();
    uint16_t adc7 = readADC(ADC_7); // Read ADC Channel 7
    setCursorPosLCD(1,9);
    writeIntegerLCD(adc7, DEC);
    if (adc7 > 300)
    {
    move(60, RIGHT, DIST_MM(100), BLOCKING);
    }

    }
    return 0;
    }
    Ich werde für links und rechts jeweils den Sharp GP2D120 Sensor einsetzen.

    Ein dickes Lob noch an Dominik S. Herwald. Die Programme etc. sind zum Lernen gut gemacht.

    Kurt

Berechtigungen

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