DE des MAX481 hängt an A2, RX und TX an Pin0 und 1. Da es sich um eine selbst entwickelte Platine handelt, gehen Pin0 und 1 nur an den MAX481!
Der PCF8574 hängt natürlich an A4 und A5.
Sobald am PCF8574 im Sketch ein Ausgang gesetzt werden soll, hängt der ATMEGA 328. Ich habe mal testweise noch eine LED angeklemmt und diese im 0,5 Sekundentakt blinken lassen.
Nach rund 5 Sekunden schreibt er dann noch über den RS485 die 0 raus und danach geht nichts mehr. Wenn der Schreibbefehl für den PCF8574 auskommentiert ist (wie oben im Sketch), funktioniert der Sketch.
Habe schon die PCF8574 Lib gewechselt und die RS485 Lib auch.
nicht vermisst. Kaum ist das drin, geht es.
PullUps sind drin.
Mit dem doppelten RS485HwSerial0.begin(RS485_BPS); hast Du Recht. Ist mir nicht mal bei dem zusammengekürzten Testsketch aufgefallen. Habe ich jetzt auch gleich im kompletten Sketch entfernt.
Vielen Dank für die schnelle Hilfe!!
Hätte mich vorhin aus Verzweiflung schon fast aus dem Kellerfenster gestürzt
Derweil war die Lösung so einfach...
Nein, das passt soweit. Es gibt 3 Möglichkeiten die Kommunikationsrichtung umzuschalten.
/RE und DE bekommen je einen Pin am ATMEGA.
/RE und DE kommen an einen PIN.
/RE auf GND und nur DE gesteuert, liefert alle gesendeten Daten zurück auf den RX des ATMEGA. So habe ich das bei mir auch angeklemmt. Damit kann man auch auf Kollisionen prüfen. Wenn empfangene Daten ungleich gesendete Daten sind, hat wohl ein anderer Busteilnehmer zur gleichen Zeit gesendet.