Hallo! Ich will einen TWI-Bus aufbauen, ich hab noch nichts programmiert, im Moment versuche ich noch alle Probleme auszuräumen. Im Moment stehe ich vor dem Problem, wie man am besten die Adresse eines Slaves setzt. Ich möchte mehrere ATtiny25 als Slaves verwenden. Nach Abzug der 2 Pins für den TWI-Bus, bleiben noch 4 Pins für IO. Davon kann ich vielleicht noch einen Analog Pin entbehren über den man die Adresse einstellt. Wie macht man das am besten wenn man nur einen Pin hat? Ich dachte erst man setzt für jede Adresse einen bestimmten Widerstand ein, liest den analogen Wert aus und rechnet das in eine Nummer zwischen 2-100 um. (Auf Adresse 1 wollte ich meinen Master legen). Gibt es einen besseren Weg? Danke! axlalf
axlalf schrieb: > Gibt es einen besseren Weg? mit einem freien Pin? Nein. Wieviele µCs willst du denn adressieren? Wirklich 100 Stück? Da wirds natürlich eng wegen Rauschen, Toleranz etc. ansonsten halt nen µC mit ein paar Pins mehr nehmen. Oder du schreibst die µC Adresse individuell ins EEPROM
Naja, ich dachte so an vielleicht bis zu 32 stück sollten reichen... Würde das gehen? Das sollte die Sache mit dem Widerstand einfacher machen. Naja das mit in den EEPROM schreiben ist ein bisschen doof weil es wird nicht für mich, und wenn der jemand dann die Adresse ändern will dann wirds schwierig. Okay, dann werde ich das mit dem Widerstand machen.
axlalf schrieb: > Naja das mit in den EEPROM schreiben ist ein bisschen doof weil > es wird nicht für mich, und wenn der jemand dann die Adresse ändern will > dann wirds schwierig. Das ist sogar das einfachste. Ein neu programmierter Slave meldet sich auf einer default Adresse. Du hängst immer nur einen Slave an den Master, der erkennt die default Adresse und fordert Dich auf, eine andere Adresse zuzuweisen. Die speichert dann der Slave in seinem EEPROM ab. Peter
Peter Dannegger schrieb: > Ein neu programmierter Slave meldet sich auf einer default Adresse. Ein Slave, der den einen entbehrlichen Pin auf Masse gezogen hat, meldet sich im Adressprogrammmiermodus mit einer Default-Adresse. So kann man auch Slaves im nachhinein, ohne einen Programmer zu benutzen, noch umadressieren. mfg mf
@mf: Du bist genial :P Das klingt am besten. Danke für alle Ideen! axlalf
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.