Hallo, ich haben eine Frage und zwar: gibt es einen anderen Weg außer über ein PWM-Signal, Daten von einem Arduino zu übertragen und auszulesen? Ich habe den Duty-Cycle von dem PWM-Signal mit der Arduino-Funktion PulseIn(); ausgelsen doch das klappt nicht so gut wie ich dachte und so viel Raum für Daten hat man auch nich.
I2C, SPI, UART. Und beliebig viele Selbstbausachen. PWM Pulslängen einlesen geht. Aber die liegen nah beienander was zu Symbolübersprechen führt (Konstellationsdiagramm). Muss man die Anzahl der Symbole reduzieren damit das klappt. Aber für Datenübertragung ist PWM eh nicht da.
Auch bidirektional geht mit UART: -beide Rx direkt an die Leitung -Tx über eine Diode an die Busleitung -pullup Man muss nur beachten, dass man seine eigenen Daten auch empfängt, das ist aber kein Problem und kann sogar nützlich sein (Kollisionserkennung)
oder ich sage dir was ich machen wollte: ich möchte eine art Punkteanzeige machen mit nur 3 Anschlüssen: VCC, GND und Data. auf der Platine sind 5 7-Segment Anzeigen und 5 Shiftregister und einen Attiny45 controller Meine Überlegung war dass ich, wie schon oben erwähnt, ich mit einem PWM-Signal dem Attiny sage welche Segmente er zu schalten hat nur das ist zu viel Aufwand für eine solche sache. Weisst du einen besseren Weg ?
Wenn du 2 Datenleitungen spendieren kannst, dann nimm I2C und häng da nen LED-Controller dran der I2C spricht. Alternativ I2C Portexpander.
Manuel P. schrieb: > ich möchte eine art Punkteanzeige machen mit nur 3 Anschlüssen: > VCC, GND und Data. da bietet sich doch UART geradezu an? Wie kommt man drauf, da mittels PWM Daten übertragen zu wollen? edit: Manuel P. schrieb: > uf der Platine sind 5 7-Segment Anzeigen und 5 Shiftregister und einen > Attiny45 controller wie kommt man dazu für 5 popelige 7-segs 5 Shiftregister zu verbauen?
:
Bearbeitet durch User
Na klar wäre hier UART der richtige Weg. Und wie ich das sehe reicht unidirektional. Der Tiny45 ist aber eher die falsche Wahl (auch, weil er keine UART hat) Weiteres Problem: Leitungslänge?
H.Joachim S. schrieb: > Der Tiny45 ist aber eher die falsche Wahl (auch, weil er keine UART hat) das geht trotzdem. Bei den 5 anzuzeigenden Bytes würde auch ne SW-Uart ohne probleme laufen (zumal er wegen den 5 SR ja scheinbar nicht mal multiplexen will). Sollte Leitungslänge ein problem werden, muss halt ein MAX232 davor. durch ne clevere Idee käme man wahrscheinlich auch völlig ohne µC und nur mit den 5 SR aus :-)
:
Bearbeitet durch User
Vlad T. schrieb: > durch ne clevere Idee käme man wahrscheinlich auch völlig ohne µC und > nur mit den 5 SR aus :-) genau - noch einen Manchester-Decoder davor und man kann den μC sparen. Wobei man natürlich den μC auch zum dekodieren von Manchester nutzen kann sicherlich noch einfacher als ne soft-UART. Sascha
Es geht auch ganz ohne Schieberegister (Multiplexen) mit einem ATtiny2313 und der Verwendung des UART als Empfänger. Mit 9600 Baud sollten 100m machbar sein. Und 5 Zeichen brauchen 5 ms .
ich kenne mich noch nich wirklich damit aus aber danke für die antworten :)
Also eindeutig, da es ja unidirektional ist - UART.... Drei Leitungen: GND/VCC/TX fertsch....
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.