- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 9 von 9

Thema: RP6 USB-Serial adapter für andere µC nutzen *gelöst*

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    17.12.2007
    Beiträge
    74

    RP6 USB-Serial adapter für andere µC nutzen *gelöst*

    Anzeige

    Praxistest und DIY Projekte
    Hallo,
    Ich will zwischen meinem Laptop und einem Atmega8 eine UART Verbindung erstellen. Da mein Laptop kein Serial hat und ich auch kein MAX... Pegelwandler hier rum fliegen habe, will ich dafür den USB-Serial adaüter des RP6 nutzen.
    Dieser soll laut Datenblatt des Chips ja mit 5V Pegeln klarkommen und einen Rx Tx Inverter haben.
    Soweit die Theorie...
    Praktisch habe ich aber noch nichts erreicht. Da ich mir bei meinem Atmega8 Aufbau/Programmierung noch unsicher bin, will ich ersteinmal den UART zum RP6 mit einer anderen Software(möglichst Linux) als dem RP6 loader hinkriegen.

    1. Versuch : cutecom -> einziges Ergebnis ist das alle licher am RP6 ausgehen wenn der Port geöffnen wird.
    2. Versuch: minicom -> ich empfange bei der Port initialisierung ein Paar Zeichen Datenmüll -> ich vermute das dies die Daten über Batteriestatus etc sind, aber aufgrund der fehlenden Port Invertierung falsch sind.

    Hat jemand schonmal den RP6 mit einer anderen Software zum laufen gebracht? Hat schonmal jemand den USB-Serial für andere Projekte verwendet?

    mfg Axel

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Hallo Axel,

    eigentlich versuchst du ja 2 Sachen auf einmal:

    1. Du willst das USB-Interface auch für andere uCs verwenden.
    Das müßte gut gehen, wenn es es nur um eine serielle Verbindung über USB geht. Das Interface ist aber kein Programmer, so dass der andere uC einen Bootloader braucht oder über einen ISP-Programmer programmiert wird.

    2. Du möchtest mit dem RP6 über ein anderes Programm vom PC aus kommunizieren.
    Das geht z.B. mit hTerm. Aber nicht zum Programmieren des RP6, weil du dann ja die interne Kommunikation zwischen RP6Loader und dem Bootloader auf dem RP6 genau simulieren müßtest. Wenn du das analysiert bekommst, kannst du einen eigenen Loader schreiben.

    Gruß Dirk

  3. #3
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    ...einziges Ergebnis ist das alle Lichter am RP6 ausgehen wenn der Port geöffnen wird.
    Der Adapter des RP6 kann auch einen Reset ausführen um den Bootloader zu starten. Dazu wird eine RS-232-Steuerleitung verwendet. Diese muss deshalb vom Terminalprogramm auf high gesetzt werden (es war RTS wenn ich mich recht erinere), wenn man nur kommunizieren möchte. Das Setup des RP6-Mega32-USART (aus dem Bootloader) ist 34800,8,none,1

    Interessante Idee übrigends, das werde ich auch mal probieren (mit einem Mega16;)

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    17.12.2007
    Beiträge
    74
    Hallo,

    Danke für die schnellen Antworten.

    @Dirk
    Ums Programmieren geht es mir garnicht, dafür habe ich mir ein USPASP gebaut, der funktioniert super ich will nur mit dem UART ein Debug-Infos auf der Konsole ablesen, o.ä.

    Werde es gleich mal mit hTerm, auch wenn es leider nicht in den Ubuntu repos ist und ich es erstmal von hand compilieren muss.

    @radbruch

    Das mit dem Reset klingt sehr plausibel, habe ich auch vermutet. Ich habe bisher nur nicht rausgefunden wie ich mit cutecom oder minicom diesen Pin setze. Ebenso wie ich den Rs Tx Pin invertieren könnte, falls dies nötig ist.

    Was ist RTS ? ist das auch ein Programm? Habe da leider nichts ergooglen können.
    Find ich gut das du es auch probieren willst, lass mich hören wenn du Erfolge hast

    mfg Axel

    EDIT: Hab hTerm grad ausprobiert... sieht ganz net aus und der RP6 wird nicht in den Dauerreset gesetzt, aber weitergekommen bin ich noch nicht.

  5. #5
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    RTS ist eine der RS232-Steuerleitungen und bedeutet Request to Send:
    http://www.rn-wissen.de/index.php/RS...-Schnittstelle
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    17.12.2007
    Beiträge
    74
    Gibt es denn ein Programm, mit dem man die RTS Leitung von Hand setzen kann?
    Ich habe mal gelesen das der MAX232 nicht nur die Pegel anhebt, sondern auch umkehrt. Ferner steht im Datenblatt des IC der auf dem USB-Serial verbaut ist, das dieser Rx oder Tx Invertieren kann. Muss man in dieser hinsicht etwas beachten, oder sollte es prinzipiell sofort klappen wenn ich Pin 2 und 3 des USB-Serial an den Rx und Tx eines µC hänge?

    mfg Axel

  7. #7
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Mit hTerm (in der Win-Version) kann man die Steuerleitungen von Hand setzen.

    Ich glaube nicht, dass man die Signale invertieren muss, denn beim RP6 gehen die Leitungen des USB-Adapters auch direkt auf die TX/RX-Pins des ATMega32.

    Gruß

    mic

    [Edit]
    Glückwunsch zum Teilerfolg :)
    Die RTS-Leitung ist nur beim RP6 von Bedeutung. Am Mega8 wird der Resetpin nicht angeschlossen, dann ist der Pegel von RTS uninteressant. Zu Kommunikation reicht natürlich TX/RX und GND.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    17.12.2007
    Beiträge
    74
    So erster Teilerfolg: Mit GtkTerm empfange ich jetzt [RP6BOOT] und [READY] und ich kann das RTS bit setzen. Nun werde ich mich mal an den Atmega 8 begeben.

    mfg Axel

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    17.12.2007
    Beiträge
    74
    So zweiter Teilerfolg: Der RP6 sendet Datenmüll auf meine Konsole, kann also nur noch ne Frage der Konfiguration und Programmierung sein. Ein Tipp (was ich etwas verdrängt hatte) Das RP6 Flachbandkabel ist verdreht, was am RP6 Pin 2 und 3 sind ist auf der USB Platine 9 und 8...

    mfg Axel

    EDIT:

    So mit der usart lib von http://www.wiki.elektronik-projekt.d.../usart_library hat es nun geklappt. Nun kann man jederzeit, ohne einen MAX232 nachzurüsten in jedes Projekt eine Debug-Schnittstelle einfügen^^

Berechtigungen

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

Solar Speicher und Akkus Tests