wemaus

Font Size

Cpanel

Porterweiterung für Mikroprozessoren

In Mikroprozessor-Anwendungen hat man oft das Problem, dass man zu wenige Ports für die Peripherie, d.h. für das LCD, und die Sensoren usw. hat. Abhilfe kann hier ein Schieberegister mit parallelem Eingang und seriellem Ausgang bieten, wenn die Verarbeitungsgeschwindigkeit nur eine untergeordnete Rolle spielt. So lassen sich z.B. durch die Verwendung eines 8-Bit-Schieberegisters, bei acht benötigten Eingängen, bis zu fünf am Mikroprozessor einsparen, wenn man davon ausgeht, dass zur Steuerung zwei Leitungen und für die Datenübernahme eine Leitung bzw. Port benötigt werden.

Hierfür stehen TTL- und CMOS-Bausteine wie z.B. ..LS oder ..HC165 .. 166 zur Verfügung. Neben den bereits erwähnten Steuereingängen sind sie kaskadierbar und können somit, bei Bedarf, auf weitere benötigte Eingänge ausgebaut werden. Zusätzlich verfügen sie über sogenannte Inhibit-Eingänge, über die diese Schieberegister freigegeben bzw. adressiert werden können.

 

Typ ...HC165 ...HC166
8-Bit Schieberegister mit parallelen Eingängen und seriellem Eingang 8-Bit Schieberegister mit parallelen Eingängen und seriellem Eingang
ser. Eingang 1 Serial Data Input 1 Serial Data Input
par. Eingänge 8 Parallel Data Inputs 8 Parallel Data Inputs
Ausgänge 2 Serial Data Outputs 1 Serial Data Output
Steuerleitungen  Serial Shift /Parallel Load Serial Shift /Parallel Load
2 Clock Inputs 2 Clock Inputs
1 /Clear

 

 

 

 

 

 

 

 

 

Eine weitere Möglichkeit der Erweiterung entsteht durch die Verwendung einfacher und auch preiswerter Mikroprozessoren, wie denen aus der ATtiny-Reihe von Atmel. Am Beispiel eines ATtiny26 als Schieberegister soll dies näher erleutert werden.

 

 PE ATtiny26DIP Um die Beschaltung des Mikroprozessors möglichst einfach zu halten, wird der interne Oszilator des Prozessors verwendet. Für die externe Beschaltung wird das Port A0..7 als paralleler Eingang mit programmierten Pullup-Widerständen eingesetzt. Als serieller Ausgang dient das Port B6. Port B4 steuert das Laden des Schieberegisters und Port B5 schiebt die Bits zum Ausgang des Registers.

Für die Programmierung des Fuse Registers werden folgende Einstellung gemacht:

High: 0xF7

Low: 0x64

daraus ergibt sich u.a. Int. Osc. 8 MHz

Entwickelt wurde die Software mit AVR Studio 5 von Atmel und zur Programmierung des ATtiny26 wurde der Dragon-Programer eingesetzt.
 pdf ATTiny26_ShReg_c.pdf (C-File)

Und so funktioniert das 8-Bit Schieberegister:

Die an den Eingängen liegenden digitalen Pegel werden mit einem kurzen Low-Pegel am /LOAD-Input (PB4) übernommen. Dabei wird auch das Register in seinen Ausgangszustand gebracht und das erste Bit an den Ausgang übertragen.

Durch einen kurzen Low-Pegel am /SHIFT-Input (PB5) wird der Inhalt des Register um ein Bit nach linls geschoben und somit das nächste Bit an den Ausgang (PB6) gelegt.

 

Ein Anwendung für dieses Schieberegister wird im Beitrag Tuning für den Kaffeeautomaten, Teil II gezeigt.

Aktuelle Seite: Home Projekte Mikroprozessoren AVR-Prozessoren AVR-Programmierung und Interface Porterweiterung für Mikroprozessoren