Kapitel
3
Bild
3.1. Logisches Symbol des 8051
Tabelle 3.1. Pin-Definitionen und
Funktionen der 8051 DIL-Version
Symbol |
Pin |
Input
I Output
O |
Funktionen |
Vss |
20 |
|
O-Potential - Digitale Masse |
Vcc |
40 |
|
+5V
Spannungsversorgung |
XTAL1 |
19 |
|
Eingang
zum Oszillatorverstärker. Wird gebraucht, wenn ein Quarz benutzt wird. Wird
mit Vss verbunden, wenn eine externe Quelle an XTAL2 benutzt wird. |
XTAL2 |
18 |
|
Ausgang
vom Oszillatorverstärker. Eingang zum internen Timing-Teil. Ein Quarz oder
eine externe Quelle kann benutzt werden. |
RST/VPD |
9 |
I |
Reset
- Ein 1-Pegel setzt den Baustein zurück. Ein kleiner, interner
Pulldown-Widerstand erlaubt beim Einschalten ein Reset nur durch Zuschalten
eines einfachen Kondensators. Weiterhin kann der VVPD zum Steuern von
standby power verwendet werden. |
/EA |
31 |
I |
Bei
0-Pegel holt der 8051 alle Instruktionen vom externen Programmspeicher. Bei
1-Pegel bis zu den Adressen 4096, d.h. die unteren 2KByte vom internen
Speicher. |
/PSEN |
29 |
O |
Program Storage Enable. Ist ein zum Controlbus
gehöriges Signal für den externen Programmspeicherzugriff. Es wird alle 6
Oszillatorperioden aktiviert. Es bleibt auf 1-Pegel, wenn interner
Programmspeicherzugriff erfolgt. |
ALE |
30 |
O |
Dient
zur Steuerung des externen Adresslatches für das zeitliche Demultiplexen der
Daten und Adressen. Es wird alle 6 Oszillatorperioden bei externem
Speicherzugriff aktiviert. |
P0.0-P0.7 |
39-32 |
I/O |
Port
0 ist ein bidirektionaler open drain I/O Port. Wird auch für die Adressen und
Daten verwendet bei der zweiten Betriebsart. |
P1.0-P1.7 |
1-8 |
I/O |
Ist
ein 8-Bit quasibidirektionaler Ein-, Ausgangsport. |
P2.0-P2.7 |
21-28 |
I/O |
Ist
ein 8-Bit quasibidirektionaler Ein-, Ausgangsport. In der zweiten Betriebsart
stellt er die oberen acht Bit der Adressen zur Verfügung. |
P3.0-P3.7 |
10-17 |
I/O |
Ist
ein 8-Bit quasibidirektionaler Ein-, Ausgangsport. In der zweiten Betriebsart
stellt er wichtige alternative Funktionen zur Verfügung. |
Bild
3.2. Prinzipieller Aufbau eines 8051-Ports
Bild
3.3. Datenweg: Zustand des Port-Pins lesen
Bild
3.4. Datenweg: Pin beschreiben mit Speichern
Bild
3.5. Zustand des Port-Latches lesen
Bild
3.6. Aufbau des Treiberbausteins Port 1 bis 5
Bild
3.7. Funktionsweise der FET’s im Controller
Bild
3.8. Port 0 als Adressausgang mit 0-Pegel am Ausgang
Bild
3.9. Port 0 als Adressausgang mit 1-Pegel am Ausgang
Bild
3.10. Port 0 als Datenausgang mit 0-Pegel
Bild
3.11. Port 0 als Datenausgang mit 1-Pegel am Ausgang
Bild
3.12. Port 1 als bidirektionaler Port mit internem
Pull-up Widerstand
Bild
3.13. Port 2 als bidirektionaler Port mit internem
Pull-up-Widerstand
Bild
3.14. Port 3 als bidirektionaler Port mit Alternate
Functions
Tabelle
3.2. Alternative Funktionen an Port 3
Port
Pin |
Bezeichnung |
Ein-,
Ausgang |
Alternative
Funktionen |
P3.0 |
RxD
|
Eingang |
serieller
Empfang |
P3.1 |
TxD |
Ausgang |
serielles
Senden |
P3.2 |
/INT0 |
Eingang |
Interrupt
0 |
P3.3 |
/INT1 |
Eingang |
Interrupt
1 |
P3.4 |
T0 |
Eingang |
Timer 0 |
P3.5 |
T1 |
Eingang |
Timer
1 |
P3.6 |
/WR |
Ausgang |
externes
Schreibsignal |
P3.7 |
/RD |
Ausgang |
externes
Lesesignal |
Bild
3.15. Blockdiagramm des 8051 - 8051 A
Bild
3.16. Verfeinertes Blockdiagramm des 8051 - 8051 A
Tabelle 3.3.
Verwendete Abkürzungen im verfeinerten Blockbild des 8051
Abkürzung |
Bedeutung
engl. |
Erklärung |
RAM |
Random Access Memory |
Schreib-
und Lesespeicher |
ROM |
Read Only Memory |
Nur-Lesespeicher |
PCH |
Program Counter High Byte |
Programmzähler
höherwertiges Byte |
PCL |
Program Counter Low Byte |
Programmzähler
niederwertiges Byte |
DPH |
Data Pointer High Byte |
Adresszeiger
auf externen Datenspeicher höherwertiges Byte |
DPL |
Data Pointer Low Byte |
Adresszeiger
auf externen Datenspeicher niederwertiges Byte |
IE |
Interrupt
Enable |
Register
für Unterbrechungsfreigabe |
IP |
Interrupt Priority |
Register
für Unterbrechungspriorität |
SCON |
Serial Control |
Register
für Einstellungen des seriellen Interface |
SBUF |
Serial
Buffer |
Speicher
für Senden |
SBUF |
Serial
Buffer |
Speicher
für Empfangen |
TCON |
Timer
Control |
Zeitgeber
Kontrolle |
TMOD |
Timer Mode |
Register
für Zeitgebereinstellungen - Betriebsart |
TL0, TH0 |
Timer 0 Low Byte, Timer 0 High Byte |
Low
Byte, High Byte von Zeitgeber 0 |
TL1, TH1 |
Timer 1 Low Byte, Timer 1 High Byte |
Low
Byte, High Byte von Zeitgeber 1 |
/EA |
External Address |
Bei
Low-Pegel wird auf die externen Adressen zugegriffen |
ALE |
Address Latch Enable |
Signal
für Übernahme der zeitgemultiplexten Adressen |
/PSEN |
Program Storage Enable |
Signal
für Zugriff auf externen Programmspeicher |
RST / VPD |
Reset / Stand By Power |
Rücksetzen
des Prozessors / Leistungsversorgung |
Tabelle
3.4. Port 3 Alternative Funktionen
Pin |
Bedeutung |
RxD
|
serieller
Empfang |
TxD |
serielles
Senden |
/INT0 |
Interrupt 0 |
/INT1 |
Interrupt 1 |
T0 |
Timer 0 |
T1 |
Timer 1 |
/WR |
externes
Schreibsignal |
/RD |
externes
Lesesignal |
Bild
3.17. Klassischer Aufbau eines Digitalrechners
Bild
3.18. Verfeinertes Blockdiagramm des 8051 mit
Zuordnungen zu den Einheiten eines Digitalrechners
Bild
3.19. 80C535 Erweiterungen
Bild
3.20. 80C515 / 80535 Blockdiagramm (grau - zum 8051
zusätzliche Einheiten)
Bild
3.21. Adressbereiche 8051 mit den Befehlen zum
Ansprechen
Bild
3.22. Von-Neumann-Architektur Bild 3.23. Harvard-Architektur
/PSEN |
/RD |
/OE |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
Tabelle 3.5./PSEN
und /RD verknüpft
Bild
3.24. Erzeugen der
Von-Neumann-Architektur
Bild
3.25. Bedeutung der Signalformen
Bild
3.26. Prinzip für Lesen des Programmspeichers
Bild
3.27. Programmspeicher lesen ohne Multiplex-Verfahren
Bild
3.28. Programmspeicher lesen vereinfacht
Bild
3.29. Blockbild für einfache Timingberechnungen
Bild
3.30. Programmspeicher Lesezugriff vollständig
Bild
3.31. Zeitbedingungen für EPROM und 80C535 in einem
Signal-Zeit-Diagramm
Tabelle
3.6. Timing-Werte für Controller 80C535 und EPROM
Symbol |
Parameter |
min 12MHz |
max 12MHz |
Ein- heit |
(tACC) |
Access time Eprom |
|
250 |
ns |
TAVIV |
Adress to valid instruction in |
|
302 |
ns |
(tCE) |
/CE to Output Valid |
|
250 |
ns |
TLLIV |
ALE to valid instruction in |
|
233 |
ns |
(tOE) |
/OE To Output Valid |
|
70 |
ns |
TPLIV |
/PSEN to valid instruction in |
|
150 |
ns |
(tDF) |
Output in High-Z |
|
60 |
ns |
TPXIZ |
Input instruction float after /PSEN |
|
63 |
ns |
Bild
3.32. Vor und nach der Adreßspiegelung
Bild
3.33. Zustand nach dem Einschalten oder Reset
Bild
3.34. Zustand bei Zugriff auf Adresse > 8000H
Bild
3.35. Funktionsweise - Timing für Adressumschaltung
(nicht zeitgetreu)
Bild
3.36. Blockbild für Timingberechnungen am RAM
Bild
3.37. Signal-Zeit Diagramm für Datenspeicher lesen am 80C535
Tabelle 3.7. Wichtigste Timing-Werte für Controller 80C535 externer
Datenspeicher lesen (Datenbuch Siemens 80C535 )
Symbol |
Parameter |
min 12MHz |
max 12MHz |
Ein- heit |
TAVDV |
Adress to valid data in |
|
585 |
ns |
TLLDV |
ALE to valid data in |
|
517 |
ns |
TRLDV |
/RD to valid data in |
|
252 |
ns |
TRHDZ |
DATA float after /RD |
|
97 |
ns |
Tabelle 3.8. Wichtigste
Timing-Werte für den RAM-Speicher 55257 AFL-10 (Baugleich mit 62256A‑10L)
sind ( Daten- buch Toshiba MOS Memory)
Symbol |
Parameter |
min |
max |
Einheit |
(tACC) |
Access time RAM |
|
100 |
ns |
(tCE) |
/CE to Output Valid |
|
100 |
ns |
(tOE) |
/OE To Output Valid |
|
50 |
ns |
(tOD) |
Output in High-Z |
|
50 |
ns |
Bild
3.38. Schaltungsteil zur Erzeugung der
Von-Neumann-Architektur
Bild
3.39. Zustand bei Zugriff auf Adresse >
8000h
Bild
3.40. Signal-Zeit-Diagramm für Datenspeicher
schreiben am 80C535
Tabelle 3.9. Wichtigste
Timing-Werte für Controller 80C535 externer Datenspeicher schreiben (Datenbuch
Siemens 80C535 )
Symbol |
Parameter |
min 12MHz |
max 12MHz |
Einheit |
TAVWL |
Adress valid to /WR |
|
203 |
ns |
TLLWL |
ALE to /WR or /RD |
200 |
300 |
ns |
TQVWH |
Data setup before
/WR |
288 |
|
|
TWHQX |
Data hold after /WR |
13 |
|
|
Tabelle 3.10. Wichtigste
Timing-Werte für den RAM-Speicher 55257 AFL-10 schreiben (Baugleich mit 62256A‑10L) sind (Datenbuch
Toshiba MOS Memory):
Symbol |
Parameter |
min |
max |
Einheit |
(tWC) |
Write Cycle Time |
100 |
|
ns |
(tCW) |
Chip Selection to End of Write |
90 |
|
ns |
(tDS) |
Data Set up Time |
40 |
|
ns |
(tDH) |
Data Hold Time |
0 |
0 |
ns |