Mikroprozessortechnik: Elektronik 5 (eBook) - Helmut Müller, Lothar Walz
Fotogalerie Fotogalerie Fotogalerie Fotogalerie Fotogalerie
Fotogalerie Fotogalerie Fotogalerie Fotogalerie Fotogalerie
Fotogalerie Fotogalerie

Lothar Walz Helmut Müller 

Mikroprozessortechnik: Elektronik 5 (eBook)

eBook
 
Ob und wann dieser Artikel wieder vorrätig sein wird, ist unbekannt
Nicht lieferbar
Bewerten Empfehlen Merken Auf Lieblingsliste


Mikroprozessortechnik: Elektronik 5 (eBook)

Anhand des Mikrocontrollers 80C537 werden Aufbau, Arbeitsweise und die Programmierung von Mikrocomputern beschrieben. Die vermittelten Kenntnisse der einzelnen Kapitel lassen sich in Lernziel-Testfragen kontrollieren.

- Baugruppen und Programmierung eines Mikrocomputers
- Hardware des 8051-Mikrocontrollers
- Maschinenprogrammierung des 80C537
- E/A-Baugruppen
- Programmierung in C
- Sicherheitsmaßnahmen und Energieeinsparung
- Multiplizier-Dividier-Einheit
- Weitere Prozessor-Architekturen
- Entwicklungshilfsmittel
- Schaltungsbeispiele und Special Function Register



Produktinformation

  • Deutsch
  • ISBN-13: 9783834360328
  • ISBN-10: 3834360325
  • Best.Nr.: 26379902

Leseprobe zu "Mikroprozessortechnik: Elektronik 5 (eBook)"

9 Sicherheitsmaßnahmen und Energieeinsparung (S. 289-290)

Da Steuerungen oft in einer elektrisch stark gestörten Umgebung einwandfrei arbeiten müssen, etwa neben großen Elektromotoren oder in Schaltschränken, muß Vorsorge getroffen werden, daß bei einem Programmabsturz – sei es durch Störimpulse oder durch Softwarefehler – die Steuerung nicht außer Kontrolle gerät, was evtl. großen Schaden anrichten könnte. Hardwareseitig kann die Störfestigkeit durch metallische Gehäuse, HF-dichte Durchführungen für Stecker, Filter in allen Signalleitungen und den Spannungsanschlüssen, also EMV-gerechtes Design, erhöht werden. Softwareseitig gibt es Zähler (Watchdog-Timer), die vom Programm, falls es korrekt arbeitet, periodisch zurückgesetzt werden. Unterbleibt wegen eines Programmabsturzes das Rücksetzen, läuft der Zähler über und löst einen Reset und damit einen Programmneustart aus. Maßnahmen zur Energieeinsparung sind bei batteriebetriebenen Geräten wichtig, um die Betriebsdauer zu erhöhen. Beim 80C537 gibt es drei Betriebsarten, die den Stromverbrauch vermindern.

Sicherheitsmaßnahmen und Energieeinsparung schließen sich zum Teil gegenseitig aus, bei hohen Sicherheitsanforderungen sollte das Umschalten in Stromsparmodi unterbleiben, da die Reaktivierung Zeit kostet und für Störungen anfälliger ist als der Normalbetrieb. Aus diesem Grund gibt es einen externen Steueranschluß (PE#/SWD, Power saving enable/Start watchdog timer), der das Einschalten von energiesparenden Betriebsarten verhindert und das Starten des Watchdog-Timers erzwingt. PE#/SWD =H Alle energiesparende Betriebsarten sind gesperrt. Maschinenbefehle, die sonst eine dieser drei Betriebsarten aktivieren können, haben keine Wirkung. Ist PE#/SWD gleich High während eines Reset, wird unmittelbar nach Reset der Watchdog Timer gestartet. PE#/SWD = L Jede der energiesparenden Betriebsarten kann durch Maschinenbefehle eingeschaltet werden. Der Watchdog-Timer muß, wenn gewünscht, durch Maschinenbefehle gestartet werden. Ist PE#/SWD nicht beschaltet, wird er durch einen hochohmigen Pull-up-Widerstand nach +5 V gezogen – als zusätzliche Sicherheit bei einem Drahtbruch an diesem Anschluß. Durch diese Maßnahmen wird mit sehr hoher Wahrscheinlichkeit ein versehentliches Einschalten der energiesparenden Betriebsarten verhindert. Der Steueranschluß PE#/SWD darf auch während des Betriebs umgeschaltet werden.

9.1 Watchdog (Fail Save)

Der 80C517 besitzt zwei Einheiten, die den Programmfluß überwachen und bei Hardwaredefekten oder bei Programmaufhängern einen Reset auslösen:

- ,den programmierbaren Watchdog-Timer (WDT) mit variabler Time-out-Periode von 512 μs bis etwa 1,1 s (bei fOSZ = 12 MHz),

- ,den Oszillator-Watchdog (OWD), der den Oszillator überwacht und bei Fehlern einen Reset auslöst.

9.1.1 Programmierbarer Watchdog-Timer

Ein Watchdog-Timer wird vom Oszillatortakt hochgezählt. Ein Überlauf löst einen internen Reset aus, der das Programm neu startet. Um den Überlauf des Watchdog-Timers zu verhindern, muß er durch das Anwenderprogramm periodisch innerhalb einer bestimmten Zeit zurückgesetzt werden. Der Watchdog-Timer nach Bild 9.1 besteht aus einem 15 Bit langen Zähler (WDTL und WDTH), der alle 2 oder alle 32 Maschinenzyklen einen Zählimpuls erhält (ein Maschinenzyklus benötigt 12 Oszillatortakte). Unmittelbar nach dem Start des Watchdog-Timers wird der Inhalt des Watchdog-Timer-Reload-Registers (WDTREL.0 - WDTREL.6) in den Watchdog- Timer geladen und bestimmt damit die Zeit zwischen zwei Überläufen. Zwischen Laden und Überlauf ergeben sich die in Tabelle 9.1 aufgeführten Zeiten. Nach einem Hardware-, Hardware-Power-down-, Oszillator-Power-on- oder einem Watchdog- Timer-Reset wird WDTREL gelöscht. Die niederwertigen 7 Bits von WDTREL können jederzeit durch einen Maschinenbefehl mit einem Wert geladen werden.

Inhaltsangabe

1;Vorwort;5 2;Inhaltsverzeichnis;7 3;1 Einführung;15 3.1;1.1 Prinzip der Datenverarbeitung;15 4;2 Baugruppen eines Mikrocomputers;29 4.1;2.1 Systembus;29 4.2;2.2 Zentraleinheit (CPU, Central Processing Unit);44 4.3;2.3 Zentralspeicher;50 5;3 Programmierung von Mikrocomputern;67 5.1;3.1 Maschinenbefehle;67 6;4 Hardware des 8051-Mikrocontrollers;75 6.1;4.1 Blockschaltbild 80C537;75 6.2;4.2 Anschlußtechnik bei 80C537-Systemen;77 7;5 Maschinenprogrammierung des 80C537;85 7.1;5.1 Speichermodell;85 7.2;5.2 Transportbefehle;88 7.3;5.3 Bearbeitung von Daten;101 7.4;5.4 Programmsteuerbefehle;117 8;6 E/A-Baugruppen Teil 1;165 8.1;6.1 Parallelports;165 8.2;6.2 Analog-Digital-Umsetzung (ADU);168 9;7 Programmierung in C;179 9.1;7.1 Warum eine höhere Programmiersprache verwenden?;179 9.2;7.2 Grundlagen von C;180 9.3;7.3 Bestandteile eines C-Quelltextes;187 9.4;7.4 Strukturierte Programmierung in C;191 9.5;7.5 Funktionen;207 9.6;7.6 Zeiger (Pointer);219 9.7;7.7 Strukturen;226 9.8;7.8 Interrupt in C;231 9.9;7.10 Lernziel-Test;233 10;8 E/A-Baugruppen Teil 2;235 10.1;8.1 Serielle Schnittstelle;235 10.2;8.2 Timer, Counter (Zeitgeber, Zähler);255 10.3;8.3 Timer 0 und Timer 1;257 10.4;8.4 Compare/Capture Unit (CCU);265 11;9 Sicherheitsmaßnahmen und Energieeinsparung;289 11.1;9.1 Watchdog (Fail Save);289 11.2;9.2 Energiesparende Betriebsarten (Power-Saving);292 11.3;9.3 Lernziel-Test;295 12;10 Multiplizier-Dividier-Einheit;297 12.1;10.1 Programmierung der MDU;297 12.2;10.2 Steuerregister ARCON (Arithmetic Unit Control);299 12.3;10.3 Schieben und Normalisieren;299 13;11 Programmbeispiele;301 13.1;11.1 Ansteuerung einer Flüssigkristallanzeige (LCD);302 13.2;11.2 Balkenanzeige;307 13.3;11.3 Centronics-Schnittstelle;308 13.4;11.4 Zweipunktregler;312 13.5;11.5 Abfrage eines Tastenfeldes;315 13.6;11.6 Erzeugung sinusförmiger Signale mit PWM;321 13.7;11.7 I2C-Bus;327 14;12 Weitere Prozessor-Architekturen;341 14.1;12.1 Signalprozessoren;341 15;13 Entwicklungshilfsmittel;373 15.1;13.1 Schritte bei der Programmentwicklung;373 15.2;13.2 Editor;374 15.3;13.3 Assembler (Assemblierer);374 15.4;13.4 Compiler, Kompilierer;380 15.5;13.5 Linker;381 15.6;13.6 Simulator (Debugger);381 15.7;13.7 Programmtest im Zielsystem;382 15.8;13.8 Entwicklungsumgebung (EU) Ride;383 15.9;13.9 Optionseinstellungen;387 15.10;14 Anhang;389 16;14 Anhang;389 16.1;14.1 Schaltungsbeispiele;389 16.2;14.2 Ablaufsteuerung;398 16.3;14.3 Befehlslisten;406 16.4;14.5 Zusammenfassung der Special Function Register;413 16.5;14.6 Anschlußbelegung;416 16.6;14.7 Intel-Hex-Format;418 16.7;14.8 Zeichensatz PC 850;419 17;15 Lösungen von Aufgaben der Lernziel-Tests;421 18;Literaturverzeichnis;431 19;Stichwortverzeichnis;433