Hallo, ich habe da mal ein bislang theoretisches Beispiel: Kann man mehrere ATMEGAs so miteinander verbinden, dass ein ATMEGA die Kontrolle übernimmt und die anderen IOs liefern? Gruß, Sven
> Kann man mehrere ATMEGAs so miteinander verbinden, dass ein ATMEGA die > Kontrolle übernimmt und die anderen IOs liefern? Selbstverständlich, wieso denn auch nicht?
Die Frage dahinter war auch, wie man das dann bewerkstelligt!
> Die Frage dahinter war auch, wie man das dann bewerkstelligt!
Zusammenspaxen, vorzugsweise mit einer Schnittstelle, die in Hardware
anwesend ist, z.B. SPI oder UART, ggf. auch was breitbussigeres in
Eigenentwicklung, ein adäquates Protokoll drauffrickeln, fertig.
Falls es rein um Ein- bzw. Ausgänge geht: Schieberegister könnten da
auch helfen.
Es geht auch darum, ggf. Ein- und Ausgänge an anderer Stelle bereitzustellen, so dass man "nur" eine 2-adrige Leitung oder dergleichen (4-adrig mit Stromversorgung) dahinverlegen muss. Die meisten µC haben wohl zwei PINs mit RxD und TxD. Ich habe irgendwo mal aufgeschnappt, dass damit wohl die Chip-Kommunikation möglich wäre und von daher habe ich gehofft, dass es ggf. ein fertiges Projekt gibt, auf dass man ggf. zurückgreifen kann...
dafür brauchst du kein Projekt. Über UART sendest du Bytes, die du so "verschlüsselst", dass die Empfangsstelle sie erkennt und auswertet.
Sven Z. schrieb: > Es geht auch darum, ggf. Ein- und Ausgänge an anderer Stelle > bereitzustellen, so dass man "nur" eine 2-adrige Leitung oder > dergleichen (4-adrig mit Stromversorgung) dahinverlegen muss. > Die meisten µC haben wohl zwei PINs mit RxD und TxD. Ich habe irgendwo > mal aufgeschnappt, dass damit wohl die Chip-Kommunikation möglich wäre ja, sicher. Warum auch nicht. Ob am anderen Ende der Leitung ein PC hockt oder ein anderer Mega, ist ja dem µC wieder wurscht. > und von daher habe ich gehofft, dass es ggf. ein fertiges Projekt gibt, > auf dass man ggf. zurückgreifen kann... Ist eine ganz normale Anwendung. Wenn man es kann eine Sache auf 1 Nachmittag. Wenn man es nicht kann, dauert es länger. Aber ich hab da so eine Ahnung. Wir landen wieder beim hier im Forum allseits so beliebten: Ich würde gerne xyz bauen, mir fehlen aber die Grundlagen. Hilfe!
1. Natürlich fehlen mir die Grundlagen, jeder fängt mal klein an! Und ohne "Informationen" kann man auch nichts lernen, darum suche ich ja ein "Beispielprojekt", ein passendes Tutorial oder dergleichen... 2. Mein "Gedankenproblem" liegt eigentlich in der Art, dass ich mir vorstellen kann, 2 µC zu verbinden (RxD mit TxD und umgekehrt), aber wie dann einen ggf. dritten?! Wäre das auch noch möglich?!
Sven Z. schrieb: > 1. Natürlich fehlen mir die Grundlagen, jeder fängt mal klein an! Und > ohne "Informationen" kann man auch nichts lernen, darum suche ich ja ein > "Beispielprojekt", ein passendes Tutorial oder dergleichen... Was hindert dich dann daran, zb im AVR-GCC-Tutorial den Abschnitt über UART zu lesen? > 2. Mein "Gedankenproblem" liegt eigentlich in der Art, dass ich mir > vorstellen kann, 2 µC zu verbinden (RxD mit TxD und umgekehrt), aber wie > dann einen ggf. dritten?! Wäre das auch noch möglich?! Auch das ist im Prinzip noch möglich. RS232 ist zwar eigentlich nicht dafür gedacht, aber in deiner speziellen Konstellation bei der es einen dezidierten Master gibt, der die Slaves zur Rückmeldung auffordern kann, ist das ein elektrisches Problem, so dass die Slaves untereinander keinen Kurzschluss erzeugen wenn einer antwortet. Das wäre jetzt mit einer UART Lösung. Andere Lösungen sind nach wie vor möglich. Der zentrale Mega schickt auf seiner UART-Sendeleitung (die alle Slaves gemeinsam abhören) raus: µC mit der Nummer 5, gib mir den Zustand deines 9. Eingangspins. Alles Slaves hören mit und der µC dem die Nummer 5 zugeordnet wurde, antwortet mit der betreffenden Information. Die restlichen Slaves ignorieren ganz einfach den Befehl.
Möglicherweise braucht man Schutzdioden. Dann musst du dir ein Protokoll ausdenken. z.b. 3|1F2E34CC 3 als ID der Rest als hexadezimale Daten. Antworten darf natürlich nur der gefragte µC.
Karl Heinz Buchegger schrieb: > Auch das ist im Prinzip noch möglich. > RS232 ist zwar eigentlich nicht dafür gedacht, aber in deiner speziellen > Konstellation bei der es einen dezidierten Master gibt, der die Slaves > zur Rückmeldung auffordern kann, ist das ein elektrisches Problem, so > dass die Slaves untereinander keinen Kurzschluss erzeugen wenn einer > antwortet. > > Das wäre jetzt mit einer UART Lösung. Andere Lösungen sind nach wie vor > möglich. Ah Danke, das war es! Quasi Token Ring, also z.B. eine 5-polige Leitung und gut. Ja logisch, daran habe ich gerade nicht gedacht. Das gcc-Tutorial kenne ich, aber wie gesagt, mir fehlte die Vorstellung bzgl. 3 Atmels und mehr! Aber wie gesagt, bislang war es nur eine Gedankenspielerei; ggf. möchte ich so eine Art "Überwachungszentrale" eines Tages bauen. Naja, es ging auch mehr darum, ob man mit den Atmels eine SPS ersetzen könnte. Quasi einen Atmel für die CPU und jeweils einen Atmel für die "Ein-/ Ausgangskarten".
Sven Z. schrieb: > Ah Danke, das war es! Quasi Token Ring, also z.B. eine 5-polige Leitung > und gut. Token Ring ist zwar etwas ganz anderes. Ist zwar in der µC Szene jetzt wahrscheinlich nicht so verbreitet, wie eine Stern-Topologie oder ein Bus, aber .... warum nicht? > Das gcc-Tutorial kenne ich, aber wie gesagt, mir fehlte die Vorstellung > bzgl. 3 Atmels und mehr! Ein Mensch (Bundeswehr, Schifffahrt, Baukolonne, ...) kann viele Menschen führen, indem er klare Anweisungen rausgibt. Ob das jetzt in Form von "Stille Post und weitersagen" (=Token Ring) passiert oder in Form von "einer spricht und alle hören zu und ansonsten heißt die Devise 'Schnauze halten'" passiert, das ist die Entscheidung desjenigen, der in der Mitte steht. In deinem Fall dann eben du, weil du dem zentralen µC mitteilst (und natürlich auch den µc drumherum) was sie zu tun haben.
Ich sagte ja auch "quasi Token Ring". Im Prinzip dachte ich an so eine Art "Token Stern", aber keine Ahnung, ob es sowas gibt geschweige denn einen Fachbegriff dafür. Mir war halt "elektrisch" nicht klar, wie man die µC verbinden müsste. Naja gut, entweder alle lauschen und es darf nur der senden der vorher einen entsprechenden Code empfangen hat oder aber der Master-µC schaltet "hardwaremässig" den entsprechenden Slave-µC frei. Das würde dann aber pro Slave ein Pin am Master benötigen. Okay sei es drum. So langsam kommen mir Ideen...
Peter Dannegger schrieb: > Beitrag "mehrere MC seriell über Datenbus verbinden (1Draht)" > > Peter Ah Okay, danke, das sieht doch sehr gut aus!
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.