Hallo Leute, ich möchte Euch um eine Einschätzung bitten, ob der Atmega8 folgendes kann. Ich bitte bei meiner Frage um Nachsicht, da ich bisher keine Erfahrung mit Atmega8 habe. Ich möchte ein I2C-Netzwerk mit bis zu 10 Atmegas aufbauen, wobei einer per USB (PB2 und PB2) vom PC aus gesteuert werden kann. Dieser Atmega fungiert als I2C-Master für die anderen per I2C angeschlossenen Atmegas. Die I2C-Slave Atmegas sollen jeweils 4 Relais (PD2-PC5) steuern können. Über jeweils 5 Taster (PC0-PC4) möchte ich einen manuellen Betrieb ermöglichen. Über einen Ausgang (PB0) möchte ich einen, in gewissen Grenzen per PC einstellbaren Takt erzeugen, den ich auch per Taster zuschalten kann. Eine RS232 Schnittstelle möchte ich pro Slave auch noch einbauen. Damit möchte ich Daten auslesen und über den I2C Bus an den Master und von dort an den PC senden. - uC soll per USB vom PC gesteuert werden können - uC soll alternativ per I2C gesteuert werden können - uC soll eine RS232 Schnittstelle realisieren - 5 Taster - 4 Schaltausgänge - zuschaltbarer Taktausgang 1) Reichen die Resourcen des Atmega8? 2) Ist dies Software-Technisch überhaupt zu realisieren? 3) Kann der Atmega erkennen, ob er am USB oder I2C hängt und somit die entsprechende Rolle automatisch ausführen kann? Vielen Dank, µTanne
Thomas T. schrieb: > 1) Reichen die Resourcen des Atmega8? > 2) Ist dies Software-Technisch überhaupt zu realisieren? > 3) Kann der Atmega erkennen, ob er am USB oder I2C hängt und somit die > entsprechende Rolle automatisch ausführen kann? 1. ja 2. ja ist aber kein Anfängerprojekt 3. selbstverständlich Ich muss dir ehrlich sagen, dass das Projekt gut zu machen ist und auch nicht sonderlich komplex. Ich muss dir aber auch sagen, dass ich nicht der Meinung bin, dass auch nur die geringste Chance besteht, dass du dieses Projekt mit deinem jetzigen Wissenstand erfolgreich beenden kannst. Du musst dich wirklich für AVR interessieren - nur wegen einem Projekt anzufangen das geht daneben. Garantiert. Wenn dann musst du dich richtig einarbeiten und das macht man nicht wegen einem Projekt. Deine Fragen stellen sich nach diesem Vergleich: 'Ich: Das ist ein Airbus 380' - 'Du: kann der auch fliegen?'. Das ist einfach Grundwissen. Ich will dich nicht runtermachen aber du solltest dir genau überlegen, ob du mit AVR anfangen willst, weil du einen Hausbus billig haben möchtest oder ob du dich wirklich für AVR interessierst. Ich kann dir aus Erfahrung sagen, dass Vertreter der ersteren Gattung nach 1-2 Wochen desillusioniert über ihrem Projekt sitzen und das ganze im Endeffekt in der Ecke landet. Lehrgeld nennt man das. http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial So nun mal zum Technischen: Was genau willst du denn realisieren? Dir muss klar sein, dass der I2C sinnvoll nur wenige Meter verwendet werden kann. Für alles über 2m würde ich dringendst RS-485 bzw. CAN empfehlen. Ich persönlich bin kein sonderlich großer Freund von I2C über die Platine hinaus - danach ist der Bus einfach viel zu anfällig und hängt sich in meinen Augen ein bisschen zu oft auf, ect... der Kampf mit den Übertragungsfehlern halt. CAN z.B. hat damit wenige Probleme.
Thomas T. schrieb: > Über einen Ausgang (PB0) möchte ich einen, in gewissen > Grenzen per PC einstellbaren Takt erzeugen, Das ist mir zu schwammig. Aber warum 10 ATmegas? Einer würde doch reichen.
Hallo Michael, vielen Dank für Deinen Beitrag. Du hast es richtig erkannt. Ich habe mit Atmegas sehr wenig Erfahrung. Vor vielen Jahren habe ich 80C5x und FPGAs programmiert. Aber 10Jahre sind Lichtjahre bei der Elektronik. Die Zeit dazwischen habe ich mit Software verbracht. Anyway, det muss! Ich habe dafür 5Monate Zeit. Reicht das? Deine Antwort hilft mir sehr. Somit habe ich schon die erste Hürde genommen und eine vernünftige HW ausgewählt. Nun zur Technik. Ziel ist es, für einen Messplatz eine kleine Steuerkiste zu erstellen an die die Testobjekte angeschlossen werden können. Um den Durchsatz zu erhöhen, können 1, 2, 10 oder mehr Steuerkisten hinzugefügt werden. Jede Kiste hat also einen Eingang und Ausgang für Stromversorgung, I2C und Messleitungen. Die Steuerkisten liegen dicht beieinander. CAN-Bus anstelle von I2C zu verwenden wurde auch schon diskutiert und wurde mit dem Argument, "es sei zu kompliziert" verworfen. Ich habe mit CAN-Bus keine Erfahrung und lasse mich gern von einer besseren und sicheren Lösung überzeugen. Der Ablauf sieht vor, dass immer nur eine Steuerkiste aktiv ist. Es werden auch keine riesigen Daten über den Bus geschickt. Im Vordergrund steht das Zuschalten der 4 Relais und das Aktivieren des Taktsignals. Es geht hier eher gemächlich zu. Der Takt soll zwischen 2 und 10 Hz liegen. Kannst Du mir bitte Deinen bevorzugten Programmer und Software nennen. Ich weiss, dass es hier im Forum gute Literatur gibt. Aber eine persönliche Empfehlung ist etwas anders. VG µTanne
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.