Hi
Ich würde gern an meine Motorsteuerung ein 4x20 Zeichen Display und 4
Taster per USART anbinden. Auf die Slaveplatine kommt also das Display,
die 4 taster und ein attiny 2313. Die Hauptplatine läuft mit einem
atmega 1284p. Verbunden werden sollen die beiden über etwa 3 bis 5 Meter
kabel, wobei ich nur GND, VCC, RX und TX machen wollte. VCC sollen die
5v sein die der spannungswandler auf der hauptplatine erzeugt und ich
wollte ausser dem 100nF Kondensator direkt zwischen vcc und gnd am
attiny nichts weiter zur filterung einbauen auf der slaveplatine.
Kann das so funktionieren oder versau ich mir mit so einer langen
leitung evtl die Versorgungsspannung von beiden oder auch nur der
slaveplatine?
Funktioniert der USART auf die entfernung noch oder bekomm ich da
störungen in der übertragung? Mir würde ja eine ganz niedrige baudrate
ausreichen.
Oder hat jemand noch ne ganz andere idee wie man das besser machen
könnte?
Optimalerweise sollte das ganze ohne allzuviele Interrupts zu
programmieren sein. Eigentlich hab ich mir das so vorgestellt das ich
bei jedem durchlauf durch den mainloop einmal schaue ob ein byte
empfangen wurde, und evtl ob ich eins senden möchte.
besten Dank schonmal im vorraus.
Ich hab in meinem letzten Projekt ein Display per Schieberegister
angeschlossen. Da würdest du dir den zweiten Controller sparen. Das
Schieberegister hatte bei meinem Projekt noch den Vorteil, das ich damit
gleich die 3.3V -> 5V Pegelwandlung machen konnte.
... schrieb:> Ich hab in meinem letzten Projekt ein Display per Schieberegister> angeschlossen. Da würdest du dir den zweiten Controller sparen. Das> Schieberegister hatte bei meinem Projekt noch den Vorteil, das ich damit> gleich die 3.3V -> 5V Pegelwandlung machen konnte.
Ja die Idee hatte ich auch schon, aber ich muss ja auch noch die 4
Taster irgendwie anklemmen, ausserdem hab ich die Teile hier liegen,
Schieberegister müsste ich erst bestellen.
Es ist auch schwer da jetzt etwas dazu zu sagen.
Normalerweise würde ich mir bei ~4 Meter TTL-RS232 noch keine Gedanken
machen. Aber das kommt natürlich auch ein bischen darauf an, was da so
alles in deiner Umgebung sich abspielt.
Da wird dir nur eines bleiben: Ausprobieren.
Hallo,
ich würde mir dann vermutlich sogar die Mühe machen, ein Mini-VT100
Terminal in den Slave zu packen. Dann kann man das Teil zur Not auch am
PC aus dem Terminalprogramm bedienen. :-)
Falls die Rate höher werden muß, eben an beiden Enden einen MAX232 dran.
Gruß aus Berlin
Michael
Nein hohe Baudraten sind das letzte was ich brauche, eigentlich gehen ja
nur die LCD Steuerbefehle die der AVR normalerweise direkt über seine IO
Pins machen würde eben über den USART an den Slave und vom Slave zurück
geht eben nur das Signal Taster so und so gedrückt, da sind 9600 Baud
wohl schon fast zu viel des guten. Mehr Sorgen mache ich mir wegen der
Versorgungsspannung, Stabiler wäre es sicherlich die evtl "schmutzige"
Versorgungsspannung der Hauptplatine direkt weiterzuleiten an die
Slaveplatine und dann dort wieder glättung und spannungsregelung zu
machen, nur das das eben nen haufen mehr komponenten braucht, ich hab da
wirklich keine vorstellung in welchen größenordnungen die störungen sein
können, Die Hauptplatine soll halt Wie ein normales Motorsteuergerät im
Wasserkasten sitzen und die Slaveplatine eben im Innenraum. Das ich das
Verbindungskabel zwischen den beiden nicht unbedingt mit einem Zündkabel
zusammenstrapsen sollte ist mir dann auch noch klar :D
René K. schrieb:> Slaveplatine und dann dort wieder glättung und spannungsregelung zu> machen, nur das das eben nen haufen mehr komponenten braucht,
Na ja. 'Haufen' ist gut. 1*7805 und 2 Kondensatoren ist noch kein
Haufen. Unter dem LCD hast du doch sowieso jede Menge Platz. Oder auf
der Rückseite der Platine.
> ich hab da> wirklich keine vorstellung in welchen größenordnungen die störungen sein> können, Die Hauptplatine soll halt Wie ein normales Motorsteuergerät im> Wasserkasten sitzen und die Slaveplatine eben im Innenraum.
Warum dann nicht überhaupt eine eigene Versorgung für den Innenraum?
Karl heinz Buchegger schrieb:> Warum dann nicht überhaupt eine eigene Versorgung für den Innenraum?
ist halt konfortabler, wenn man an den Slave nur ein Kabel anklemmen
muss und nicht irgendwo im Armaturenbrett einen Anschluss nach aussen
führen muss, ok ich könnte ihn auch an den Zigarettenanzünder
anschließe, aber das sieht alles blöd aus, ausserdem soll der Slave ja
nicht immer dran hängen sondern nur wenn man halt Fehler auslesen,
Betriebsdaten anzeigen oder Werte ändern will.
Ich denke ich werds jetzt so machen das ich 13,8volt, gnd, rx und tx
über das kabel zwischen den Platinen schicke, und mir auf der
Slaveplatine nochmal ne Betriebsspannungs mache, weil ich damit eben auf
der sicheren seite bin. Die beiden uCs kommunizieren dann mit 5000 Baud
oder so. Um das ganze perfekt zu machen müsste ich auch noch die
Signalleitungen gegen über und Unterspannung schützen. Bei meinen
Sensoren hab ich es so gemacht:
+-|>|- +5V
|
Sensor --10k--+--10k--+--| Controller
| |
10nF +-|<|- GND
|
GND
Geht das auch für die Datenleitung?
Immerhin wären dann 40kohm zwischen den beiden uCs. Mein Gefühl sagt mir
das es kein Problem bei einer sehr niedrigen Baudrate ist, weil die
Eingangskapazität der uCs winzig ist. aber ich frag dann doch lieber die
Profis :D
Eine eigene Frage?
Dieser Thread ist über 15 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.