Tiny2313 Adresse einstellen

OP #401044
Lesenswert?

Hallo

Ich habe folgendes Problem:

Ich will mit Funk ein Netzwerk mit mehreren Avrs aufbaun.
Jeder Avr soll natürlich eine andre Nummer(adresse haben)
Natürlich wäre es möglich jedem eine Fixe adresse ein zuprogrammieren,
die idee ist aber, bei jedem Avr die adresse extern ein
zustellen...also irgendwie mit jumpern oder sowas in der art....
jetzt ist das problem das ich natürlich mit einem adressbyte die
adressen einstellen könnte und dann einfach bei port B die pins
einlesen....
ich brauch aber mehr als 255 adressen....also müssten es schon 2 byte
sein

da der tiny 2313 aber nicht viele ports hat und ich den rest der ports
für andre sachen brauche, wollte ich fragen ob ihr eine idee habt, wie
man bei jedem modul mit dem tiny drinnen die adresse einstellen kann
und sie jederzeit auch wieder ändern....

(das ändern hat den sinn, das man jedes modul auf eine beliebige stelle
stellen kann und dann einfach die richtige adresse einstellen)

mfg Philipp
Gast #401046
Lesenswert?

Kleines serielles EEPROM dran in dem die Adresse steht.Darin kann man
dann auch gleich noch andere Settings sichern.

Und geändert werden kann die Adresse dann per Software.Nachteil ist
natürlich das der EEPROM zumindest 1x programmiert werden muss.Oder du
opferst 2 Pins für eine Initial-Adresse (0x00..0x03) per Jumper und
proggst dann wieder per Software die korrekte Adresse rein.
OP #401047
Lesenswert?

Hmmm Multiplexen hab ich mir schon überlegt....

wie würde das dann ausschaun....hab bei multiplexer in der schule
irgendwie ausgeschaltet ^^

@ronny....wär schon gute idee....aber der sinn der sache is ja, dass
man ohne pc einfach die adresse einstellen könne soll
Gast #401048
Lesenswert?

Oder die DIP-Schalterchen an ein Schieberegister mit parallelen
Eingängen anschließen und dann in einem Rutsch per SPI o.ä. auslesen.

Man kann auch einen Pull-down an einen Port hängen. Wenn man dann den
internen Pull-up aktiviert kann man sehen, ob das Pin seinen Wert
ändert. Also eine Messung ohne internen Pull-up und eine mit.

1. Fall immer noch low -> wird per Schalter auf Masse gezogen
2. Fall Wert geändert -> Pin offen
3. Fall immer noch high -> wird per Schalter auf Vcc gezogen

Damit kann man pro Port drei Zustände erkennen.
1 Pin ->   3 Zustände
2 Pin ->   9 Zustände
3 Pin ->  27 Zustände
4 Pin ->  81 Zustände
5 Pin -> 243 Zustände
6 Pin -> 729 Zustände

Das steht auch in einer Appnote, ich glaube bei AVRfreaks.

Rick
Gast #401050
Lesenswert?

wie oftmals beim DMX adressiert wird, mittels 3 Stück BCD-Schalter. Dann
sind direkt 12 Portpins weg, gemultiplext dann nur noch 5 oder 6. der
Einstellbereich ist dann zwischen 0 und 999.

MW
Gast #401051
Lesenswert?

7-Segment-Anzeige dran und up/down Tasten. Die 7-Segment blinkert dann
nacheinander die Adresse durch, Beispiel 5-6-3-Pause-5-6-3-Pause... Das
geht dann auch für 4 und mehrstelligere Adressen. Den up/down-Tasten
ordnet man einen dynamischen Zähler zu, so daß man durch Festhalten der
Tasten einen Weiterlauf erzielt, um nicht 1000mal drücken zu müssen.
Läßt man die Tasten dann für mindestens 5 Sekunden unbetätigt, wird die
aktuelle Adress im internen EEPROM 1x abgespeichert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren