www.mikrocontroller.net

Porterweiterung mit SPI

Inhaltsverzeichnis

[bearbeiten] Porterweiterung

Mit Schieberegistern lassen sich die Ports eines Mikrocontrollers auf einfache und billige Weise erweitern. Zur Ansteuerung der Schieberegister ist ein im Controller integrierter SPI-Bus nützlich, aber nicht unbedingt notwendig, da sich die Kommunikation auch in Software realisieren lässt.

[bearbeiten] Ausgänge

Um einen Controller mit zusätzlichen Ausgängen zu erweitern, bieten sich Schieberegister vom Typ 74xx595, am besten 74HCT595, an. Die folgende Schaltung zeigt den Anschluß von theoretisch beliebig vielen 74xx595 an einen SPI-Bus:

bild:hc595-porterweiterung.png

Der SPI-Bus muss auf CPHA=CPOL=1 gestellt sein. Das auszugebende Bitmuster (z.B. 16 Bit im o.a. Beispiel) wird durch das erste Schieberegister hindurchgetaktet und über dessen Ausgangsspin in das zweite Schieberegister hineingetaktet. Dadurch wandert das Bitmuster sequentiell durch beide Bausteine. Nach 16 Taktzyklen steht es dann stabil und parallel an den Ausgängen der beiden Bausteine an.

[bearbeiten] Eingänge

Die Anzahl der Eingänge kann z.B. mit parallel-in/serial-out Schiebregistern des Typs 4021 erhöht werden (z.B. Philips HEF4021B). Besonders verbreitet ist heutzutage der Typ 74xx165. Alternativ kann z.B. auch ein 74xx597 verwendet werden. Durch dessen zusätzlichen Eingangspuffer (Latch) ist der Schaltungsaufwand allerdings höher.

Beispielschaltung für den 74xx165:

Bild:74xx165.png


Beispielschaltplan mit 74HC595 und 74HC165 an einem SPI Bus: http://www.mikrocontroller.net/attachment.php/30856/SPI_74HC595.pdf


[bearbeiten] Siehe auch

webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net