Hallo, Ich habe mehrere Attiny 13 die über einen Port miteinander vernetzt sind. Wenn nun ein Attiny ein Signal sendet sollen alle anderen etwas machen. Nun ist meine Frage was ist besser wenn ich ca. 5-7 Attinys zusammenhängen habe: Sollte das Signal ein High oder Low Signal sein und brauche ich dazu die passenden Pullup/Pulldown Widerstände (ggf. interne verwenden)? Ich bin leider gerade total überfragt was besser ist, Danke.
Oha, wenn Du jetzt schon überfragt bist, dann versuche doch erstmal 2 Tinys miteinander kommunizieren zu lassen...
> Wenn nun ein Attiny ein Signal sendet sollen alle anderen etwas machen.
Du willst also eine (1) Leitung verwenden, mit der 1 beliebiger uC den
anderen 4-6 mitteilt, dass er was zu senden hat. Wenn dieses Signal
aktiv ist, haben die anderen die Klappe zu halten, und der eine darf
senden. Wenn der zweite etwas senden will, dann muss er warten, bis die
Leitung wieder inaktiv ist. Dann darf er die Leitung aktivieren und dann
loslegen. Ein Multiprozessor-Multimastersystem also. Ist das richtig?
Oder soll nur 1 uC (immer derselbe) an die Anderen etwas senden, die
dann nur hören (Multiprozessor-Singlemaster)?
Lothar Miller wrote: >> Wenn nun ein Attiny ein Signal sendet sollen alle anderen etwas machen. > Du willst also eine (1) Leitung verwenden, mit der 1 beliebiger uC den > anderen 4-6 mitteilt, dass er was zu senden hat. Wenn dieses Signal > aktiv ist, haben die anderen die Klappe zu halten, und der eine darf > senden. Wenn der zweite etwas senden will, dann muss er warten, bis die > Leitung wieder inaktiv ist. Dann darf er die Leitung aktivieren und dann > loslegen. Ein Multiprozessor-Multimastersystem also. Ist das richtig? > > Oder soll nur 1 uC (immer derselbe) an die Anderen etwas senden, die > dann nur hören (Multiprozessor-Singlemaster)? Hi, es soll nur 1 µC (ein Atmega 8) ein Signal (muss nur eine kurze Zustandsänderung sein) auf diesen "Bus" legen. Und die Attinys müssen dies nur mitbekommen um dann an anderen Ports etwas zu schalten. Das ganze findet in einem 19"-Rahmen statt, falls die länge ein Problem sein sollte. Hatte gedacht das ich bei den Attinys die internen Pullups aktiviere und den Port am Attmega8 im ungeschalteten zustand auf High habe und im aktiven Zustand halt auf Low. Könnte ich das so machen oder ist das nicht optimal (simulation geht es zwar aber ich konnte es noch nicht Testen, da ich auf meine Lieferung an Bauteilen warte.)
ich würde sagen, du nimmst zwei drähte: der eine verbindet alle grounds miteinander, mit dem anderen draht verbindest du jeweils einen portpin eines uCs mit diesem 2. draht. bei demjenigen uC, der sendet, setzt du das portpin auf ausgang, bei allen anderen uCs den entsprechenden portpin auf eingang ;)
Sowas macht man in der Regel low-aktiv. Ein Pullup an die Busleitung und derjenige, der was senden möchte, zieht die Leitung herunter. Dann passiert auch nichts böses, wenn mal zwei gleichzeitig senden.
Danke schon für eure Hilfe, noch eine kleine Frage: Sollte man nur einen extern 10k Wiederstand verwenden oder kann ich in allen Attinys die internen Pullups nehmen?
@ Basti Z, (Firma elekt) (basito) >Hi, es soll nur 1 µC (ein Atmega 8) ein Signal (muss nur eine kurze >Zustandsänderung sein) auf diesen "Bus" legen. Und die Attinys müssen >dies nur mitbekommen um dann an anderen Ports etwas zu schalten. Das >ganze findet in einem 19"-Rahmen statt, falls die länge ein Problem sein >sollte. ;-) Das sind MIKROcontroller. Und ich wage mal zu behaupten, dass die Sache wahrscheinlich problemlos mit einem AVR gelöst werden kann. MFG Falk
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.