Forum: Mikrocontroller und Digitale Elektronik I/O Pins benoetigt


von Lars (Gast)


Lesenswert?

Hallo,

ich stehe vor dem Problem, dass mir die 32 I/O Pins eines AT90S8535 
nicht ausreichen.
Ich benoetige Pins die ich einzeln in der Richtung (also Input oder 
Output) jederzeit umschalten kann.
Urspruenglich wollte ich dazu einige 82C55A verwenden, die 24 I/O Pins 
zur Verfuegung stellen...allerdings lassen sich diese - wenn ich das 
Datenblatt richtig gelesen haben sollte - nur in 12er Gruppen als Input 
oder Output umschalten. Das ist fuer meine Zwecke nicht geeignet.

Eine andere Moeglichkeit waere es einfach noch weitere 8535 zu verwenden 
und diese ueber das SPI von dem "Haupt"-8535 anzusteuern. Da ich dadurch 
nochmals PWM Kanaele bekommen wuerde, werde ich vermutlich diesen 
Loesungsweg gehen. --- Ausser es gibt eine andere wesentlich billigere 
Moeglichkeit an zusaetzliche I/O Pins zu kommen.

von Günter König (Gast)


Lesenswert?

Tag Lars,
wenn mich nicht alles täuscht, kann ich den 8255 folgendermaßen 
konfigurieren:

Gruppe A: Port A, 8bit, Eingang/Ausgang
Gruppe A: Port C, 4bit, High Nibble, Eingang/Ausgang
Gruppe B: Port C, 4bit, Low Nibble, Eingang/Ausgang
Gruppe B: Port B, 8bit, Eingang/Ausgang

Das bietet dann folgende Möglichkeiten:

3 Ports zu 8bit als Eingang = 24 Eingänge
2 Ports zu 8bit als Eingang / 1 Port zu 8bit als Ausgang
1 Port zu 8bit als Eingang / 2 Ports zu 8bit als Ausgang
3 Ports zu 8bit als Ausgang = 24 Ausgänge

Ebenso kann ich
12bit (Port A -> 8bit und Port C -> 4bit, High Nibble) Aus- oder Eingang
oder
12bit (Port b -> 8bit und Port C -> 4bit, Low Nibble) Aus- oder Eingang
konfigurieren.

Schau dir mal das Datenblatt von dem 8255 an.

Gruß,
Günter

von Ingo B. (Gast)


Lesenswert?

Hi,

schon mal an I2C-Bus gedacht?

Da gibt es z.B. eine 8bit Porterweiterung (PCF8574) oder 16bit 
(PCF8575).
Die Bits lassen sich einzeln als Ein- oder Ausgang verwenden....

Müsste es auch bei Reichelt geben.

Bis dann,
Ingo.

von Lars (Gast)


Lesenswert?

@Günter: ja so hatte ich das auch gelesen, aber ich benoetige eben 
einzeln waehlbare Pins. Sobald es nur in Gruppen geht, ist es sinnlos 
und ich wuerde stattdessen (wesentlich billigerere) Schieberegister 
verwenden. Das ganze wuerde aber die Schaltung ziemlich verkomplizieren. 
Ich werde mir aber nochmal eine genaue Tabelle der benoetigten 
Datenleitungen und Richtungen aufschreiben, evtl. laesst sich da doch 
noch einiges einsparen.

@Ingo: Danke, den PCF8574 habe ich bei Reichelt gefunden, den PCF8575 
leider nicht. Ich werde mir mal das Datenblatt durchlesen --- das 
scheint mir bisher aber die geschickteste Loesung zu sein. Zumal ich zur 
I2C Ansteuerung nicht die 14Leitungen benoetige die ich fuer den 8255 
"verschwenden" muesste.

von Michael (Gast)


Lesenswert?

wie wärs denn wenn du die Eingaenge Multiplexen würdest ??

von Lars (Gast)


Lesenswert?

Die Multiplexer halten leider (zumindest die mir bekannten Typen) an den 
"momentan nicht aktiven" Anschluessen nicht den zuletzt angelegten Wert.

So viele Ports benoetige ich Hauptsaechlich, weil ich externes SRAM (ja 
ich weiss das der AVR keinen externen Speicher direkt unterstuetzt aber 
ich bin durchaus faehig das selber zu integrieren ;)) verwenden will. 
Gibt es nicht vielleicht SRAM mit I2C Anschluss ? Wenn ja waere ich fuer 
ein paar Typenangaben dankbar.

von Lars (Gast)


Lesenswert?

Nachtrag: habe soeben rausgefunden, dass es den PCF8570 gibt, aber 
256byte reichen bei weitem nicht. Ich benoetige mindestens 8k Byte. 
(64kbit)

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Der AT90S8515 und ein paar von den ATmegas haben einen externen Datenbus 
für RAM.

Gruß
Andreas

von Günter König (Gast)


Lesenswert?

Hi Lars,
der 8515 macht bis zu 64Kbyte externen RAM.
Gruß,
Günter

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
Noch kein Account? Hier anmelden.