Was willst du genau machen?
PC -> ATMEGA32(1) -> ATMEGA32(2)?
oder wie?
Martin
Hallo,
Ich habe folgendes Problem:
Ich habe 2 ATMEGA32 mit jeweils einer einer seriellen schnittstelle und ein PC der als Steuerung dient... Ich möchte jetzt den IC´s befehle mit hilfe des PC´s senden... Kann man das irgentwie über eine serielle Schnittstelle mit Adress-befehlen irgentwie regeln?
Hat da jemand ne Idee?
Ich hatte zuerst geplant, das der Master IC die serielle Schnittstelle mit ner logischen Verknüpfung umschalten kann... Aber so toll finde ich die Lösung irgentwie nicht.
Gruss
Jan
Was willst du genau machen?
PC -> ATMEGA32(1) -> ATMEGA32(2)?
oder wie?
Martin
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
Hi Jan,
selbst wenn man Adressinfos über die serielle Schnittstelle an beide Controller schickt, gibt solch eine Y-Lösung spätestens dann ein Problem, wenn die Controller Daten zurück an den PC senden sollen.
Ich würde die Controller einfach über I2C oder notfalls auch SPI verbinden und die seriellen Infos an nur einen Controller schicken, der dann die Sachen weiterreicht.
HTH und Viele Grüße
Jörg
Warum soll es bei der Y-Lösung Probleme geben ?
Wenn im Protokoll klar geregelt ist, das nur ein Slave(Controller) zur Zeit senden darf und dies ganz klar vom Master (PC) gesteuert wird, gibt es auch keine Konflikte.
Einziger Nachteil ist, das ggf. der Master immer wieder die einzelnen Slaves nach ev. auftauchenden Informationen abfragen muß, da die ja nicht von sich aus senden dürfen (es sei denn, man steuert so ein Slaverequest über eine weitere eigene Leitung)
@x-ryder
Der PC soll Befehle an jeden Controller senden können, und der Controller soll nach dem Empfang des Befehls ein Rückgabewert an den PC senden. Ohne Befehl vom PC haben die Controller nichts zu senden... Also selbstständig werden diese nichts ausgeben... Halt nur nach einem Befehl....
Gruss
Jan
Hallo Freiheitspirat,
leider doch, die RS-232 Schnittstelle ist nicht busfähig. In Richtung Controller ist ein Sender (PC) mit zwei Empfängern (Controller) verbunden. Das gibt (mal abgesehen vom Pegel bei manchen Treibern) keine Probleme. In Richtung PC arbeiten zwei Sender (Controller) auf einen Empfänger (PC). Dabei sind zwei Ausgangstreiber auf einer Leitung. Sofern beide ruhig sind, kein Problem, wenn jetzt einer sendet, bringt der eine Sender +12V, der andere bleibt jedoch bei -12V, alles auf der gleichen Leitung, der stärkere gewinnt.Warum soll es bei der Y-Lösung Probleme geben ?
Wenn im Protokoll klar geregelt ist, das nur ein Slave(Controller) zur Zeit senden darf und dies ganz klar vom Master (PC) gesteuert wird, gibt es auch keine Konflikte.
Klar kann man jetzt die MAX-Treiber über eine Logik abklemmen oder hochohmig schalten. Der Aufwand dafür dürfte jedoch ziemlich hoch sein, zumindest deutlich höher, als immer nur mit einem Controller zu reden und die Befehle an den anderen Controller quasi zu forwarden.
Viele Grüße
Jörg
leider doch, die RS-232 Schnittstelle ist nicht busfähig. In Richtung Controller ist ein Sender (PC) mit zwei Empfängern (Controller) verbunden. Das gibt (mal abgesehen vom Pegel bei manchen Treibern) keine Probleme. In Richtung PC arbeiten zwei Sender (Controller) auf einen Empfänger (PC). Dabei sind zwei Ausgangstreiber auf einer Leitung. Sofern beide ruhig sind, kein Problem, wenn jetzt einer sendet, bringt der eine Sender +12V, der andere bleibt jedoch bei -12V, alles auf der gleichen Leitung, der stärkere gewinnt.
Ich dachte der Ruhestrom beim UART ist positiv und beim senden negativ?
Hallo Leute
Kann ich denn die zwei ATMEGA´s direkt über I2C Bus miteinander verbinden? Hat da jemand n Code-Beispuel für Bascom?
Gruss
Jan
Lesezeichen