Forum: Mikrocontroller und Digitale Elektronik Kommunikation mit PC


von Hubert Papst (Gast)


Lesenswert?

Hallo,
muss drei Mega8 mit einem PC verbinden. Die Controller dienen quasi nur 
zur Datenaufbereitung und Ausgabe für den PC.
Mir schwebt jetzt vor einen Controller via RS232 an den PC 
anzuschliessen und die beiden anderen Megas mittels SPI an den ersten, 
der mit dem PC verbunden ist.
Gibt es bessere Möglichkeiten hierfür. Länge zwischen PC und ersten Mega 
ist ca. 4m - zwischen den ersten Mega und den anderen jeweils ca. 10m.
Updaterate nicht so kritisch. 50x pro Sek. sollte genügen.
Bin um Vorschläge dankbar.
mfg
Hubert Papst

von Thomas Brandner (Gast)


Angehängte Dateien:

Lesenswert?

hallo hubert,

ich würde rs485 vom pc aus weg nehmen, und die atmega's extra abfragen. 
der pc ist master, die mega's slave ...

ich habe dir das datasheet der max rs465 controller beigelegt.

auf: http://www.elektronik-projekt.de/Artikel/RS485Bus.html

ist der ablauf der kommunikation beschrieben.

mit rs232 kannst du keine langen leitungen überbrücken.

gruß,
thomas

von Manfred Glahe (Gast)


Lesenswert?

Hallo Hubert,
der SPI Bus ist nur für interne Verbindungen unter µP's oder anderer 
Hardware gedacht. Lange Leitungen (über ca. 50cm) sind nicht erlaubt und 
würden die Datensicherheit auf dem Bus vermindern.

MfG  Manfred Glahe

von Frankl (Gast)


Lesenswert?

Also wenn man Rs232 nicht zu schnell macht und abgeschirmte Leitungen 
benutzt, kommt locker auf 25m (praxis).

von Hubert Papst (Gast)


Lesenswert?

Hallo,
danke erstmal für die Antworten.
An Hr. Brandner:
Rs485 vom PC weg. Wie soll ich das verstehen? Ich hab am PC keine 
RS485-Schnittstelle. Auch eine reine Signalwandlung von RS232 auf RS485 
hilft mir nix, da der PC kein 9. Datenbit für die Adressierung der 
Slave-Controllers senden kann.

mfg
Hubert Papst

von Thomas Brandner (Gast)


Lesenswert?

@hr. papst

ich bin zwar nicht der große weltmeister auf diesem gebiet (ich lerne 
ebenfalls diese materie - habe ein ähnliches problem zu lösen), aber 
soweit ich verstehe, bestimmen sie das protokoll bei der programmierung. 
somit sollte auch ein anderes protokoll als das angeführte mit 9 bits 
therotisch möglich sein, oder? wenn das der fall ist, würde eine 
konvertierung reichen.

gruß,
thomas

von Steffen T (Gast)


Lesenswert?

Das 9. Bit braucht man nicht unbedingt. Vorrausgesetzt alle Controller 
haben die Zeit sich um jeden Datensatz zu kümmern.
Jeder Controller erhält eine Adresse, die dann als erstes (oder zweites, 
je nach Programm) Byte gesendet wird. Stimmt die dann mit der des gerade 
empfangenen Datensatzes überein, dann wird dieser ausgewertet und darauf 
reagiert. Ein Beispiel dafür findet ihr in der Dokumentation unter 
http://www.az-gehren.de/docs/ICR40/index.htm. Das System kann je nach 
Konfiguration über RS232 (Einzelsystem) und über RS485 als Bussystem mit 
bis zu 256 Geräten betrieben werden.

Noch ein Tipp:
Es gibt auch RS232-Treiber, deren Ausgänge sich Tristate schalten 
lassen. Mit diesen Treibern sind auch RS232 Verbindungen zu mehreren 
Geräten an einer PC-Schnittstelle möglich.

MfG
Steffen

von Thomas Brandner (Gast)


Lesenswert?

@steffen:

wenn du alle meine probleme löst - an was knabbere ich dann herum :-))?

genau so werde ich es auch machen.

danke vielmals!!

thomas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.