Hallo
was findet ihr besser?
soll ich zwei Atmega32 über den I2C Bus verbinden damit ich mehr Ein und Ausgänge habe oder soll ich einen größeren Atmega nehmen?
Hallo
was findet ihr besser?
soll ich zwei Atmega32 über den I2C Bus verbinden damit ich mehr Ein und Ausgänge habe oder soll ich einen größeren Atmega nehmen?
Warum nicht mit RS232 verbinden?
Dann kannst mit Strings arbeiten.
MFG
Bertl
Ist abhängig von der Problemstellung die du hast. Wenn du alle Eingänge und Ausgänge so schnell wie möglich abarbeiten muss und reagieren musst,nimm einen. Ansonsten kannst du zwei nehmen, wenn du einen Teil sehr schnell reagieren muss der Rest halt nur langsam. Weil I2C braucht ja auch immer ein bisschen Zeit die Daten zusammezustellen und zu versendne bzw. zu verarbeiten wenn sie empfangen wurden.
Ich zum Beispiel, wenn ich einen BOT bauen würde, was ich noch vorhabe dieses Jahrzent *gg* werde einen Chip nur für die Motorsteuerung benutzen und fast-response-Sensoren (Bumper) einen nur für die Sensoren (Auswertung) und einen Masterchip für Kartenerstellung und Koordination. So kann ich immer einen Teilbereich aufbauen und kann so fast-response und rechenintensive Arbeiten auslagern udn nur die relevanten Ergebnisse austauschen.
C ya, Grusim
Anfänger in der Elektronik
Hi,
das kommt immer drauf an, was du damit machen willst.
wenn beide Controller gleichzeitig Aufgaben verrichten können (oder müssen), sind 2 Controller natürlich besser.
Wenn's nur um die Zahl der Eingänge geht, ist ein großer Chip einfacher, da du dir die Kommunikation zwischen den Controllern sparst.
Größer als MEGA 32 gibt's aber nur noch in TQFP oder PLCC..
Die ganz großen (Mega1280/1281 etc.) sind leider noch nicht gut lieferbar.
86 IO's (!) bei den 100 Pin Versionen und 4 UARTs dürften dann aber erst mal genug sein
Gruß
Christopher
Ich bin gerade noch am entwerfen meines Bots. Ich dachte mir, dass der eine Controller die Motorsteuerung und die Kolisionssensoren verwalten soll. Der andere dann noch Akkustand Tastatureingabe und LCD. Wobei ich mir überlege ob ich nicht einen I2C LCD kaufen sollte. Meint ihr, dass diese Zusammenstellung einen Sinn ergibt? Weil ich dachte mir Wenn einer die Sensoren übernimmt und der andere die Motoren dann muss ich ja ständig etwas über den Bus übertragen.
Warum ein I2C-LCD? Die sind teurer als "normale". Es ist ja vom Material her schon bald günstiger noch einen dritten AVR zu kaufen und damit ein I2C-LCD zu bauen. Oder RS232-LCD, was wohl noch einfacher ist.
Wenn du zu wenig Pins hast, kannst du die auch erweitern. Ist aber im Einzelfall zu prüfen. Kommt halt drauf an, wie schnell alles arbeiten muss.
Dann werd ich das doch so machen dass ich zwei Atmegas verwende. Mit dem erweitern von Pins find ich nicht so gut. So kann der zweite Atmega die Sensoren oder Tasten schon mal verarbeiten und nur noch das wesentliche an den Master senden. Somit wird auch der Master entlasstet denk ich.
Ich meinte selbst wenn dir bei zwei Mega32 noch Pins fehlen, kannst du sie erweitern.Mit dem erweitern von Pins find ich nicht so gut.
Achso ja aber ich denke fürs erste reichen mir meine Pins schon aus. Die Tastatur werde ich über einen A/D Pin ansteuern, da benötige ich dann auch nur einen.
@Zeroeightfifteen
du willst also nen Robbie basteln und hast angst das die Ports nicht reichen ja ?
Nun,es ist ja so das nicht jede zu steuernde Funktion gleich mit Lichtgechwindigkeit ausgeführt werden muß.
Dh. man kann die nichtzeitkritischen Schalt udn Steuervorgänge auch gut auslagern.
Statusbits,Tastatureingaben,Anzeigen und sonstige Signalisierungen kann man gut auf ein Schieberegister oder z.b I2C auslagern.
Für Bascom und I2C gibts ja die Lib für LCD und Matrixtastatur da sparste schonmal ne menge Portpinne.
Für andere Sprachen gibts natürlich analog das gleiche.
also Portmangel ist kein Problem.
Da kannste fast beliebig erweitern.
Schnapp dir mal deinen M32 und probier etwas damit rum dann merkste wie gut das geht.
Gruß
Ratber
Lesezeichen