serielle kommunikation mit anderem gerät

Hallo
ich muss mit einem Raspberry py kommunizieren über Uart, was ja serial am Arduino ist kommunizieren.
die baudrate ist 38400 Baud
mein code zum empfangen von daten:

void setup(){
Serial1.begin(38400);
Serial.begin(9600);
}
void loop(){
if(Serial1.available()>0){
Serial.println(Serial1.read());
}
}

ich benutze einen mega und eigentlich sollte ich alle 300 Millisekunden ein acknowledgement empfangen.
ich empfange aber nur Nullen, also mein serieller Monitor zeigt nur Nullen an.
Das gerät was sendet ist auf jeden fall ohne Fehler.
warum empfange ich hier nur Nullen obwohl ich text empfangen sollte?

hoffe mir kann jemand helfen
Danke im voraus!

Übrigens empfange ich die Nullen
Mit egal welcher baudrate.
Weiß nicht ob das normal ist kann auch noch nicht so gut programmieren

Wie sehen denn die Daten aus, die du empfangen möchtest ?
Und wie hast du die UART mit dem PI verbunden ?

p4u1:
eigentlich sollte ich alle 300 Millisekunden ein acknowledgement empfangen.

Was bekommst Du als acknowledgement gesendet?

Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter oder gehe in der IDE auf Bearbeiten - Für Forum kopieren und füge es hier ein).
Dann ist er auch auf mobilen Geräten besser lesbar.
Das kannst Du auch noch nachträglich ändern.

Gruß Tommy

hallo
ich habe meinen code in code tags geschrieben
ich bekomme "-A200\r" als acknowledgemant gesendet

Hallo,
hast du auch eine Antwort auf meine Frage ?

sorry ich konnte nur einmal in 5 min posten und hatte vergessen auf ihre frage zu antworten.

ich verstehe die frage nicht wie gesagt kenne mich noch nicht so aus. aber ich habe tx vom Raspberry an rx vom Arduino und rx vom rasperry an tx vom Arduino zusätzlich noch eine ground Verbindung.

ich muss einen String empfangen der "-A200\r" lautet

hoffe ich habe ihre fragen hiermit beantwortet

Ok, das mit den Anschlüssen an die UART sollte so passen.

Kannst du die Verbindung noch anders prüfen, indem du am Raspi manuell einen Text eingibst ?

aber ich habe tx vom Raspberry an rx vom Arduino und rx vom rasperry an tx vom Arduino zusätzlich noch eine ground Verbindung.

Mit den 5V des Arduinos tötest du deinen RPI in Sekunden.

Ok, das mit den Anschlüssen an die UART sollte so passen.

Nöö... (?)

Wenn man Serial1 verwendet, sollte man auch rx1 und tx1 verwenden.

combie:
Mit den 5V des Arduinos tötest du deinen RPI in Sekunden.
Nöö... (?)

Wenn man Serial1 verwendet, sollte man auch rx1 und tx1 verwenden.

Ja stimmt....habe ich überschlafen. :wink:

danke für eure antworten
was kann ich jetzt machen wenn das mit 5V nicht geht?

das mit Raspberry Pi code ändern geht nicht er ist in einer machine erbaut und von einer Firma da sollte ich nicht dran rumfummeln

ich habe rx1 und tx1 gemeint

p4u1:
danke für eure antworten
was kann ich jetzt machen wenn das mit 5V nicht geht?

das mit Raspberry Pi code ändern geht nicht er ist in einer machine erbaut und von einer Firma da sollte ich nicht dran rumfummeln

ich habe rx1 und tx1 gemeint

Ok, dann sollte das jetzt passen.

In die Leitungen jeweils einen 1k Widerstand einbauen. Das reicht normalerweise.

hallo
habe gerade erfahren dass da optokoppler zwischen arduino und Raspberry Pi sind.

Ein bisschen Ausführlicher gehts nicht, oder?

hallo noch mal
ich entschuldige mich für die späte antwort aber ich habe einen Fehler in der Verkabelung gefunden wodurch das gerät nutzlos geworden ist. heute bekam ich ein neues, aber der Fehler besteht weiterhin :(.

zwischen tx1 zu rx vom raspi und rx1 zu tx vom raspi hängen jeweils optokoppler die von dem Arduino mit 3,3V versorgt werden( ein Fehler war es sie mit 5V zu versorgen deshalb habe ich ein neues gerät gebraucht).

Optokoppler invertieren gewöhnlich - es ist vielleicht hilfreich, mal den gesamten Aufbau zu SEHEN statt nur zu beschreiben.

Das geht schwer die optokoppler sind auf einem shield auf dem raspi und ich habe keine Daten davon.

Danke für eure Hilfe aber ich glaube mit meinem Wissen kann ich hier nicht viel anstellen ich muss mich erstmal genauer erkundigen wie alles sein muss

Danke für eure Hilfe

Scope oder Logicanalyzer dranhängen wenn vorhanden, auch das hilft.

So ganz ohne Messwerkzeug wird's immer schwierig.

Ok danke

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.