PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AVRs vernetzen und über eine Schnitstelle Updaten



KazimirDante
14.09.2009, 22:22
Hallo Leute,

ich arbeite seit langem mal wieder an einem neuem Projekt. Dazu muss ich mehrere AVRs miteinander verknüpfen und auch updaten wenn möglich.

Es geht dabei um eine Schaltung speziell. Die Schaltung soll aus mehreren AVRs bestehen.

- Einem Haupt-AVR, welcher die Befehle über eine RS485 bekommt und verteielt
- Zwei AVRs mit je 8 Ausgängen
- Ggf. einem AVR mit LEDs

Das man dieses am besten über einen I2C Bus realisiert ist mir klar, jedoch wollte ich die Möglichkeit haben die gesamte Schaltung später mit neuer Software zu versorgen. Ist dies überhaupt möglich?

Oder, wäre es besser alles auf einen AVR irgendwie zu quetschen?

Vielen Dank
Kazi

Felix G
14.09.2009, 23:35
Also wenn du nur 16 digitale Ausgänge und eine Handvoll LEDs ansteuern möchtest sind 4 AVRs schon ein bischen viel, aber wie so oft kann man auch hier keine pauschale Aussage machen, zumindest nicht ohne zusätzliche Informationen zum Projekt.


Ich jedenfalls tendiere üblicherweise eher zu einem (bzw. eben möglichst wenigen) großen µC, denn damit erspart man sich viele Probleme die zwangsläufig entstehen wenn man mehrere Controller vernetzen möchte.

KazimirDante
14.09.2009, 23:43
Hallo,

@Felix: Du bist ja auch noch so spät wach...

Im Grunde brauche ich folgendes, ich brauche eine Schaltung mit einem AVR, welcher 16 LEDs Anschalten kann.

Und eine Schaltung mit einem AVR, welche 16 Schalter aufnehmen kann.

Die Schalterschaltung soll nun per RS485 Modul die Befehle der Schalter zum 2. AVR transportieren. Der schaltet dann die LEDs an.

GGf. wäre es später noch toll den Wiederstand zu Messen, der auf den einzelnen LEDs ist, wenn das geht, aber das ist gaaaaanz optional.

Ich habe gerade etwas über Schieberigister gelesen, das hört sich passend an.

mfg
Kazi

avion23
15.09.2009, 00:05
bootloader über i2c ist möglich. Problem ist nur, dass du wahrscheinlich keine interrupt routinen verwenden kannst weil sonst deine anwendung die nicht mehr neu definieren kann.