Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 1
Mikrocontroller
Computer ohneMaus, Tastatur und
Bildschirm
Göttingen, am 23.07.14
----- http://natec.hawk-hhg.de -----
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 2
Hardware(universell)
Was ist ein Computer?
Software(anwendungsspezifisch)
Computer-Arten?
Personal-Computer Mobile Computer (Tablet, Handy)
Server Spezial-Computer
Technisches System besteht aus:
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 3
Hardware + Software in einem Silizium-Chip
Was ist ein Mikrocomputer?
CPU (Prozessor)
Speicher
Ein- und Ausgabe-Schnittstellen
Digitales Elektronik-System aus Hard- und Software
= Mikrocontroller
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 4
Einsatzgebiete für Mikrocontroller
Konsumgüter-Elektronik (Fernseher, CD/DVD-Player, MP3-Player, Kühl-schrank, Waschmaschine), Heizungssteuerung, Solarwechselrichter
Kommunikationstechnik (Telefon, Fax, Internet, Handy), PC-Technik (Drucker, Scanner, Monitor, Maus, Tastatur), Kopierer
KFZ-Elektronik (Motor-Steuerung, Antiblockier-System - ABS, Automatik-Getriebe, Airbag, Klimaanlage, Autoradio, Wegfahrsperre)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 5
Einsatzgebiete für Mikrocontroller Automatisierungstechnik für industrielle Produktionsmittel (Sensorik,
Steuerungstechnik, Regler, Antriebstechnik)
Labor-Messtechnik
Medizintechnik (Computer-Tomographie, Laser-Behandlung)
Sicherheitstechnik (Zutrittskontroll-Systeme, Krankenkassen-Karte)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 6
Aufbau eines Mikrocontroller-Systems
CPU
Programm-Speicher
Daten-Speicher
Eingangssignale(z.B. Tasten)
Ausgangssignale(z.B. Leuchtdiode)
Takt
CPU: Central Processing Unit (Zentrale Verarbeitungseinheit)Memory: Speicher für Programme und DatenI/O: Input/Output (Ein-/Ausgangssignale)Takt: Geschwindigkeit der Befehlsabarbeitung
Systembus
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 7
Arbeitsweise eines Mikrocontroller-Systems
Programm-Counter = 0
Increment Program-Counter
Befehl holen
Befehl dekodieren
Befehl ausführen
Ablaufsteuerungder CPU
Adress-Bus
Steuer-Bus(RD, WR, CS)
Wort
Daten-Bus
Adresse 1Adresse 0
Aufbau von Speicher- undInput-/Output-Komponenten
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 8
Begriffe der Informatik
Software: Befehle für den Computer
- Befehle zum Laden und Speichern von Daten- Arithmetikbefehle (Grundrechenarten: + - * /)- Logik-Operationen (z. B. UND-Verknüpfung, Negation)- Sprung-Befehle, mit und ohne Bedingungen- Befehle für Unterprogramme- ...
Softwareentwicklung mit Hochsprachen z.B. C, C++, Java oder in As-sembler (Maschinensprache)
Compiler: übersetzt Hochsprachen-Code in Maschinensprache des Prozessors
Editor: Texteingabe oder graphische Programmierung
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 9
Digitaltechnik
Ein Mikrocomputer arbeitet mit digitalen Zahlen. Jede Ziffer kann nur zwei verschiedene Werte haben und wird als Bit bezeichnet.
1 Bit = Low/High (0/1)1 Byte = 8 Bit
z.B.: 1111.0011B = 243D (1111.0011 im binären = 243 im dezimalen Zahlensystem)
Hexadezimales Zahlensystem: Zusammenfassung von vier Ziffern einer Binärzahl zur einer Ziffer mit dem Wertebereich 0;1;2;..9;A;B;C;D;E;F
1111.0011B = 0F3H (auch 0xF3)
Wertebereich von Computer-Variablen: 1 Byte: 0 .. 255 oder -128 .. 127 2 Byte: 0 .. 65535 oder -32768 .. 32767
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 10
Das Mikrocontroller-Software-Entwicklungs-System
Leiterplatte mit PIC-Mikro-controller (Firma: MicrochipTechnology Inc.)
Programmiergerät/Debugger MPLAB PICkit3
PC mit Entwicklungsumgebung Flowcode (Firma: MatrixMultimedia Limited)
Spannungsversorgungüber Steckernetzteil
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 11
Mikrocontroller-System
PIC
18F4
431
Spannungsversorgung
Port B
Port D
Port E
Port A
Port C
8
8
8
8
4
4
Leuchdioden
Taster
Leuchdioden
Taster
Drehpoti
Beeper
Drehpoti
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 12
Software - Programmfluss
Signale einlesen
Befehle im Codespeicher
Berechnungen
Entscheidung
Signale ausgeben
Aktionen
Programmverzweigungen
Sprünge
Schleife = Programmverzweigung + Sprung zurück
ja
nein
Darstellung als Programmfluss-Diagramm
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 13
Software-Darstellung in Flowcode
Unterprogramm (Makro): Blinken
Hauptprogramm
Endlos-Schleife
Verzweigung
Aktionen
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 14
Software-Entwicklung - Schritte
1.Entwicklungsumgebung starten2.Ein neues Projekt anlegen:
Create a new Flowcode flowchart...3.Mikrocontroller auswählen: 18F44314.File/Save as... ---> Festplatte D:
5.Programmfluss bearbeiten,I/O-Komponenten in Panel einfügen
6.Programm übersetzen: Compile to C7.Simulieren: Run oder F58.Download in Mikrocontroller und Test: Compile to chip
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 15
Programmier-Übungen 1
LEDs (Port C) Ein-/Ausschalten per Tastendruck (RB0)
Blinkende LEDs (Delay 200ms) (Beachte: Die Delay-Funktion benötigt einen Parameter > 1)
Lauflicht mit LEDs
Tonausgabe mit Beeper (RB4)(Delay 500μs)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 16
Software – Einfache Rechenoperationen
Zuweisung: Variable1 = Variable2
Arithmetische Operationen: Grundrechenarten +, -, *, /
Beispiel: Variable1 = 2 * Variable2 + Variable3
Logische Operationen: UND, ODER, NICHT
Beispiel: Verzweige wenn Bedingung1 UND Bedingung2 erfüllt sind
Vergleiche: >, <, == (gleich), != (ungleich)
Beispiel: Verzweige wenn Variable1 = Variable2
Verschiebeoperationen: << (links schieben), >> (rechts schieben)
Beispiel: Variable1 = Variable1 >> 2(Verschiebe alle Bits in Variable1 um zwei Stellen nach rechts)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 17
Software - Datenfluss
Signale einlesen
Berechnungen
Entscheidung
Signale ausgeben
ja
nein
Taster = Eingangspegel Pin RB0
Variablen im DatenspeicherBefehle im Codespeicher
Blinkdauer = 50 * Taster + 50
Led_Zeile = Led_Zeile * 2
Port RC = Led_Zeile
Beachte: durch begrenzten Wertebereich von Variablen könnenBerechnungen zu falschen Ergebnissen führen
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 18
Software – Unterprogramme
Zusammenfassung von aufeinanderfolgenden Programmfluss-Ele-menten zu einem Block (Subroutine, Funktion, Prozedur)
Bedingung: nur eine Eintrittsstelle und eine Austrittsstelle
Motivationen:
1. Verbesserung der Übersichtlichkeit wenn der Programmfluss zu lang wird
2. mehrfache Verwendung gleichartiger Programmteile an unter-schiedlichen Stellen im Programmfluss
Definition sinnvoller Schnittstellen möglich (Übergabe- und Rückga-be-Variablen)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 19
Verarbeitung analoger Signale
Physikalische Größen: Temperatur, Helligkeit, Lautstärke, ...
- Wertebereich: 0°C .. 50°C (Analog-Signal)- Sensoren: 0 Volt .. 5 Volt- Analog-Digital-Wandler: 0x00 ... 0xFF
ADC-Takt
AN0AN1AN2AN3AN4
AN12
CHS3:CHS0
CHOLD
Sampling Switch
VDD
VSS
VCFG1:VCFG0
ADCS2:ADCS0 GO/DONE
ADON
ein/aus
Start/Ende
VREF+
VREF-
10 Bit ADC
Takt
ADCRESH / ADCRESLVAIN Ergebnis
Ende ADIF
10
ADFM : :
TACQACQT2:ACQT0
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 20
Programmier-Übungen 2
Drehpoti-Abfrage und Ausgabe auf LEDs
Veränderung LED-Blinkfrequenz über Drehpoti(Delay 100ms – 355ms)
Veränderung Tonausgabe über Drehpoti(Delay 500μs – 755μs)
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 21
Mikrocontroller - Vielfalt
viele Anwendungen = viele Anbieter = viele Architekturen
Microchip:PIC12/PIC16/PIC18/PIC24/dsPIC/PIC32 Atmel:
AVR8/AVR32/8051
Infineon:8051/C166/TriCore
Renesas:RL78/78K0/78K0R/R8C/SuperH/V850/RX
NXP Semiconductors:8051/ARM7/ARM9/Cortex-M0/Cortex-M3
Texas Instruments:MSP430/C2000/Cortex-M3
Faku
ltät N
atur
wis
sens
chaf
ten
und
Tech
nik
Göt
tinge
nH
AWK
– H
ildes
heim
/Hol
zmin
den/
Göt
tinge
n (F
H)
© Heiko Böhmer, Dipl.-Ing. 22
Weitergehende Informationen
www.microchip.com
www.matrixmultimedia.com
www.sprut.de
www.elektor.de
www.reichelt.de
www.conrad.de
www.elv.de
www.pollin.de
www.tigal.com
www.embedded-projects.net
www.myavr.de