- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 27

Thema: UART Kommunikation zwischen Raspi und Arduino hängt sich ständig auf

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    kann sein, kenne mich da nicht aus -
    aber wenn der Arduino sendet, dann nur bis zu einem \n,
    dann kann der Raspi empfangen, ebenfalls bis zum \n,
    und solange sollte der Arduino ja gar nichts mehr tun, bis der Raspi wieder sendet und der Arduino empfängt.
    Erst danach dürfte der Arduino erneut senden - so ist es jedenfalls gedacht, quasi als Handshake.

    Wie könnten sich Puffer füllen, wenn jeder immer mit erneutem Senden wartet, bis der andere mit Empfangen fertig ist und dann erst die Rück-Antwort empfangen wurde?

    Kann ich evtl. Puffer (welche?) zwischendurch manuell löchen?

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Eigentlich sollte er nach dem Senden ja erstmal etwas empfangen, sehe ich auch so.
    Mach doch testweise mal ein delay(10) beim Senden und schau was passiert.

  3. #3
    HaWe
    Gast
    kein Unterschied mit 10, mit 100 auch nicht,
    einziger Unterschied: keine Sonderzeichen � � mehr zwischendrin

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Wenn ich das richtig sehe,
    löschst Du den Buffer strcpy(mbuf, ""); direkt nach dem Senden.
    Oder wofür ist das gut, ich bin da jetzt nicht sicher.

    Wenn das serielle Ausschieben Interrupt gesteuert ist,
    dann muss der Buffer aber noch erhalten bleiben bis wirklich alles ausgesendet wurde.

    Bau mal vor dem Löschen also vor dem strcpy(mbuf, ""); zum testen noch eine Delay ein 10 ein.

  5. #5
    HaWe
    Gast
    stimmt, das Löschen von mbuf ist überflüssig, habe es überall rausgenommen, danach delay(10) testweise.
    Bleibt aber leider immer noch hängen nach ein paar Runden.

    - - - Aktualisiert - - -

    update:
    habe den Code jetzt auf einen Due hochgeladen:

    FUNZT!

    danach wieder auf Mega umgesteckt!
    HÄNGT!

    was ist DA denn los...?

    - - - Aktualisiert - - -

    Könnte das bitte jemand mal selber bei sich testen, mit einem Mega2560 am Raspi?

  6. #6
    HaWe
    Gast
    kann jemand was dazu sagen, wieso es beim Mega2560 hängt und beim Due einwandfrei klappt?
    USB Kabel habe ich auch schon getauscht, ohne dass sich was ändert.

    Ist evtl mein Mega kaputt - oder ist das generell so? (habe leider nur den einen zum Testen)

  7. #7
    HaWe
    Gast
    kriegs nicht hin mit dem Mega, auch nicht wenn MSGLEN=256, bleibt immer hängen.
    Due nach wie vor kein Problem.
    Gerade für manche 5V-Uno-Shields wäre das interessant am Raspi gewesen, aber wenn es nicht geht, dann ist man leider auf den Due festgelegt, wenn man ein Arduino-Huckepackboard mit sehr vielen GPIOs braucht.

    Oder ist doch ein Spezialist hier, der den Code hinkriegt mit einem Mega?

Ähnliche Themen

  1. Antworten: 32
    Letzter Beitrag: 04.07.2018, 08:34
  2. Kommunikation zwischen Android und Sensor(UART)
    Von Alasa im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 18.10.2017, 10:48
  3. [ERLEDIGT] Problem bei UART Kommunikation zwischen ATmega und VB.net
    Von masasibe im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 15
    Letzter Beitrag: 10.09.2011, 17:41
  4. LCD-Kontrast und UART-Kommunikation zwischen 2 µcs
    Von MelMan im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 04.12.2008, 15:25
  5. Uart-Kommunikation zwischen µCs
    Von ProgDom im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 20.04.2006, 00:37

Berechtigungen

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

12V Akku bauen