kramann.info
© Guido Kramann

Login: Passwort:










Mikrocontroller
1 Einfuehrung
..1.1 Entwicklungsgeschichtliches
..1.2 Maschinensprache
..1.3 Assemblerbeispiel
..1.4 Sprachwahl
..1.5 Praxis
....1.5.1 Digital_IO
....1.5.2 Byteoperationen
....1.5.3 AVR_Studio
....1.5.4 Testboard
....1.5.5 Aufgaben
....1.5.6 Do_it_yourself
......1.5.6.1 Ampel
......1.5.6.2 Programmierer
..1.6 Literatur
..1.7 Programmierer
....1.7.1 Bauverlauf
....1.7.2 KurzreferenzLow
....1.7.2 Kurzreferenz_16PU
..1.8 Uebung1
..1.9 BoardAtHome
....1.9.1 Software
....1.9.2 Hardware
....1.9.3 Knoppix
....1.9.4 Aufbau
....1.9.5 LED
2 Oszillator
..2.1 Assembler
..2.2 Interner_RC
..2.3 Quarz
..2.4 Taktgenerator
3 DigitalIO
..3.1 Elektrische_Eigenschaften
..3.2 Pullup_Widerstaende
..3.3 Bitmasken_Eingang
..3.4 Bitmasken_Ausgang
..3.5 Tic_Tac_Toe
....3.5.1 DuoLEDs
....3.5.2 Schaltplan
....3.5.3 Spielfeld
....3.5.4 Anwahl
....3.5.5 Kontrolle
..3.6 Laboruebung2
..3.7 Laboruebung2_alt
4 PWM
..4.1 Prinzip
..4.2 Nutzen
..4.3 Generierung
..4.4 Programmierung
..4.5 Servos
..4.7 Laboruebung3
..4.8 LoesungUE3
..4.9 Uebung6
5 LichtKlangKugeln
..5.1 LED
..5.2 RGB
..5.3 Sensoren
..5.4 lautsprecher
..5.5 tonerzeugung
6 UART
..6.1 Bussysteme
..6.2 UART
..6.3 RS232
..6.4 Hardware
..6.5 Senden
..6.6 Hyperterminal
..6.7 Empfangen
..6.8 Broadcast
..6.9 Uebung4
7 Infrarot
..7.1 schalten
..7.2 seriell
..7.3 Uebung
8 OOP
..8.1 Probleme
..8.2 Konzept
..8.3 Statisch
..8.4 Datentypen
..8.5 RS232
....8.5.1 Prozedural
....8.5.2 Analyse
....8.5.3 Umsetzung
....8.5.4 Vererbung
....8.5.5 Statisch
....8.5.6 Performance
..8.6 Fahrzeug
9 ADW
..9.1 ADW
..9.2 Zaehler
10 Peripherie
..10.1 RS232Menue
..10.2 ASCIIDisplay
..10.3 Tastenmatrix
..10.4 Schrittmotor
..10.5 Zaehler
..10.6 Uebung7
11 SPI
..11.1 Testanordnung
..11.2 Register
..11.3 Test1
..11.4 Test2_Interrupt
..11.5 Test3_2Slaves
..11.6 Laboruebung
12 EEPROM
13 I2C
..13.1 MasterSendByte
..13.2 MasterSend2Bytes
..13.3 MasterReceiveByte
..13.4 MasterReceive2Bytes
14 Anwendungen
..14.1 Mechatroniklabor
....14.1.1 Biegelinie
....14.1.2 Ausbruchsicherung
....14.1.3 Einachser
....14.1.4 AV
....14.1.5 Vierradlenkung
....14.1.6 Kommunikation
..14.2 Sinuserzeugung
....14.2.1 Variante1
....14.2.2 Variante2
....14.2.3 Variante3
....14.2.4 Variante4
..14.3 Laboruebung8
..14.4 Loesung_Ue8
..14.5 SPI_Nachtrag
20 Xubuntu

10 Peripherie

  • Es soll im folgenden für einige weitere externe Komponenten aufgezeigt werden, wie sie durch den Mikrocontroller ATmega32 angesteuert werden können.
  • Die Beispiele werden an das Testboard angeschlossen.
  • Die serielle Schnittstelle erlaubt es über eine Verbindung zum PC eine komfortable Testumgebung für die einzelnen Komponenten herzustellen.
  • Das erste Unterkapitel dient deshalb zunächst zur Besprechung der Testumgebung.
  • Insbesondere soll in der Klasse RS232 nun eine komfortable Methode implementiert werden, die es auch erlaubt beliebige ASCII-Zeichenketten an den Mikrocontroller zu senden und so gemeinsam mit der umgekehrten Methode den Aufbau von Benutzermenüs aufzubauen.
  • Folgende Beispiele werden behandelt:
  1. Alphanumeric Intelligent Display
  2. Nummernblock
  3. Motortreiber und Schrittmotor (als Übung 7)
  • Typischerweise ist die Ansteuerlogik bei den meisten Peripherien auf den 5Volt TTL-Pegel abgestimmt.
  • Das bedeutet, dass die digitalen I/O-Leitungen des Mikrocontrollers direkt an die Peripherie angeschlossen werden können.
  • Um die Ansteuerung erfplgreich durchführen zu können, spielen zwei Aspekte eine wichtige Rolle:
  • 1. Die Bedeutung der Pins, 2. Das zeitliche Abfolgeprotokoll für die Ansteuerung.
  • Beispielsweise werden wir eine Anzeige mit drei ASCII-Anzeigeelementen kennenlernen.
  • Es gibt dazu Auswahlleitungen, um eines der Elemente anzuwählen und Datenleitungen, um das ASCII-Zeichen auszuwählen.
  • Die Auswahl muß hier natürlich VOR dem Schalten der Datenleitungen erfolgen.
  • Schrittmotoren benötigen ein zeitlich veränderliches Bitmuster als Ansteuerung usw.

Praktisches Vorgehen

  1. Entnehmen Sie dem Datenblatt zunächst, ob die Peripherie bzgl. erforderlicher Spannung und Leistung geeignet ist, um direkt an den Mikrocontroller angeschlossen werden zu können, oder ob ein Treiber zwischengeschaltet werden muß.
  2. Wählen Sie dann geeignete Verbindungen mit dem Mikrocontroller aus. Bei einem Platinenlayout wird man eher Leitungskreuzungen vermeiden und nötigenfalls auf eine logisch naheliegende Verbindungsweise verzeichten (z.B. nur einen Port verwenden, oder eine korrespondierende Bitreihenfolge wählen).
  3. Schließlich wird der zeitliche Ablauf der Ansteuerung analysiert und zunächst Teilfunktionen mit einfachen Programmen getestet, um ein Verständnis für die erforderlichen Maßnahmen in einer vollständigen Anwendung zu gewinnen.
  4. Um die Kombination mit anderen Programmkomponenten zu erleichtern, sollte das Ansteuerprogramm schließlich in einer Funktion oder Klasse gekapselt werden. Die Kapselung in einer Klasse hat den Vorteil, dass auch Methoden zur Konfiguration mit angeboten werden können, deren Zugehörigkeit zum Ansteuerprogramm eindeutig ist.