Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
microcontrollertechnik:start [2020/03/03 13:03] tfischer |
microcontrollertechnik:start [2024/01/22 13:37] (aktuell) mexleadmin |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Mikrocontroller-Technik ====== | ====== Mikrocontroller-Technik ====== | ||
+ | |||
+ | ===== Einführung und Einordnung ===== | ||
<WRAP right> | <WRAP right> | ||
Zeile 7: | Zeile 9: | ||
Die Mikrocontroller-Technik befasst sich damit, wie man einem programmierbaren Bauteil (" | Die Mikrocontroller-Technik befasst sich damit, wie man einem programmierbaren Bauteil (" | ||
+ | Es wird auf die Kenntnisse folgender Fächer zurückgegriffen: | ||
- | Die Veranstaltung ist mit dem EST Labor kombiniert. Details zum Ablauf finden Sie beim [[elektronische_schaltungstechnik_labor|EST Labor]]. | + | * Informatik I und II |
- | --> 1. Hello Blinking World # | + | **Wichtig: |
- | <WRAP group> | + | |
- | ===== 1. Hello Blinking World ===== | + | |
- | <WRAP half column> | + | |
- | ==== Ziele ==== | + | * Bleiben Sie mit uns in Kontakt! Trotzdem es zeitweise Wochen mit eigenständigen Bearbeitung gibt, ist der Austausch wichtig, damit zu den jeweiligen Abgaben ein sinnvolles Ergebnis abgeliefert wird. |
+ | * Suche Sie den Austausch mit den anderen Studierenden. Meistens haben Sie die Lösung, zum Problem eines anderen und umgekehrt. | ||
+ | * Wenn Sie erst eine Woche vor der Abgabe mit dem Programmieren beginnen, wird es in der Regel eng. Besonders, wenn es Unklarheiten und Nachfragen gibt. Beginnen Sie frühzeitig. | ||
+ | * Versuchen Sie Spaß am Programmieren zu finden. Es ist wie Puzzeln, nur dass Sie selbst das Bild bestimmen! | ||
- | Nach dieser Lektion sollten | + | ~~PAGEBREAK~~ ~~CLEARFIX~~ |
+ | <panel type=" | ||
+ | Details zum Ablauf finden | ||
+ | </ | ||
- | - x | ||
- | </ | ||
- | ==== Video ==== | ||
- | LED Blinken und Bit-Manipulation | + | ===== Abgabe |
- | {{youtube> | + | * Zur Abgabe |
- | </ | + | * Bitte geben Sie folgenden Komponenten ab: |
- | + | * Projektordner aus Microchip Studio | |
- | <-- | + | * Eine Simulide Datei |
- | + | * Bitte entfernen Sie nicht notwendige Files, d.h. lassen | |
- | --> 2. Sound und Timer # | + | * Die Abgabe erfolgt per redmine |
- | <-- | + | * Zur Abgabe der Präsentation |
- | + | * Diese erfolgt über einen Link, welcher in [[https://ilias.hs-heilbronn.de/goto.php?target=frm_229245_6864&client_id=iliashhn|ILIAS]] zu finden ist | |
- | --> 3. Logische Funktionen # | + | * Gerne können |
- | <-- | + | |
- | + | ||
- | --> 4. Up/Down Counter # | + | |
- | <-- | + | |
- | + | ||
- | --> 5. Menüführung | + | |
- | <-- | + | |
- | + | ||
- | --> 6. Würfel und Zufall # | + | |
- | <-- | + | |
- | + | ||
- | --> 7. Uhr und Zeitraster # | + | |
- | <-- | + | |
- | + | ||
- | --> 8. Temperatur und Analog-Digital-Wandler # | + | |
- | <-- | + | |
- | + | ||
- | + | ||
- | --> 9. UART und Terminal # | + | |
- | < | + | |
- | ===== 9. UART und Terminal | + | |
- | + | ||
- | Bei der Programmierung wünscht man sich häufig die Möglichkeit Daten des Mikrocontrollers irgendwo darzustellen. | + | |
- | Mit Hilfe des Freeware Programms [[https:// | + | |
- | + | ||
- | - [[https:// | + | |
- | - [[https:// | + | |
- | - [[https:// | + | |
- | </ | + | |
- | <-- | + | |
- | + | ||
- | --> 10. I2C Schnittstelle # | + | |
- | + | ||
- | <WRAP group> | + | |
- | ===== 10. I2C Schnittstelle ===== | + | |
- | <WRAP half column> | + | |
- | + | ||
- | ==== Ziele ==== | + | |
- | + | ||
- | Nach dieser Lektion sollten | + | |
- | + | ||
- | - wissen wie die Kommunikation zwischen I2C Master | + | |
- | + | ||
- | + | ||
- | </ | + | |
- | + | ||
- | + | ||
- | </ | + | |
- | + | ||
- | ==== Dokumentation von Atmel ==== | + | |
- | + | ||
- | * [[https:// | + | |
- | * [[https://www.microchip.com/ | + | |
- | + | ||
- | \\ | + | |
- | ==== Beschreibung ==== | + | |
- | + | ||
- | ++++ Statemachine der I2C Kommunikation | === Statemachine der I2C Kommunikation === | + | |
- | + | ||
- | <uml> | + | |
- | keine_Kommunikation : - | + | |
- | Datenausgabe1 : Datenbit = 1 | + | |
- | Datenausgabe0 : Datenbit = 0 | + | |
- | + | ||
- | [*] --> keine_Kommunikation | + | |
- | keine_Kommunikation -> keine_Kommunikation : !SCL || !SDA | + | |
- | keine_Kommunikation --> Warten_auf_Clock_Lo : SCL && SDA | + | |
- | Warten_auf_Clock_Lo -> Warten_auf_Clock_Lo : !SCL || SDA | + | |
- | Warten_auf_Clock_Lo --> Bits_lesen_aktiv | + | |
- | Bits_lesen_aktiv | + | |
- | Bits_lesen_aktiv | + | |
- | Warten_auf_Clock_Hi -> Warten_auf_Clock_Hi : !SCL | + | |
- | Warten_auf_Clock_Hi --> Datenausgabe0 | + | |
- | Datenausgabe0 | + | |
- | Datenausgabe0 | + | |
- | Datenausgabe0 | + | |
- | Warten_auf_Clock_Hi -> Datenausgabe1 | + | |
- | Datenausgabe1 | + | |
- | Datenausgabe1 | + | |
- | Datenausgabe1 | + | |
- | + | ||
- | </ | + | |
- | ++++ | + | |
- | + | ||
- | === Zeitverlaufsdiagramm === | + | |
- | < | + | |
- | {name: ' | + | |
- | node: ' | + | |
- | data: [' | + | |
- | | + | |
- | }, | + | |
- | {name: ' | + | |
- | node: ' | + | |
- | }, | + | |
- | ]} </ | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | <-- | + | |
- | + | ||
- | --> 11. SPI-Schnittstelle # | + | |
- | + | ||
- | <WRAP group> | + | |
- | ===== 11. SPI-Schnittstelle | + | |
- | <WRAP half column> | + | |
- | + | ||
- | ==== Ziele ==== | + | |
- | + | ||
- | Nach dieser Lektion sollten | + | |
- | + | ||
- | - wissen, welche wie man theoretisch mehrere Slaves mit einem Master verbindet. | + | |
- | - die Namen der 4 Leitungen | + | |
- | - die Abkürzungen SDI, SDO, MOSI, MISO, CS, SS, SCK kennen | + | |
- | - die Vorteile von einer synchronen im Vergleich zu einer asynchronen Schnittstelle erklären können. | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ==== Video ==== | + | |
- | + | ||
- | Theorie zum SPI | + | |
- | {{youtube> | + | |
- | + | ||
- | Beispiel für SPI mittels Arduino | + | |
- | {{youtube> | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | <-- | + | |
- | + | ||
- | ===== Tipps ===== | + | |
- | * Nutzen Sie die Anzeige von Zeilennummern: | + | |
===== Links ===== | ===== Links ===== | ||
- | | + | === Resourcen für embedded Programmierung === |
- | * schönes Online | + | |
+ | * There is also a nice introduction into C programming on the AVR plattform with [[https://www.youtube.com/watch? | ||
* Eine schöne Einführung in die Embedded Softwareentwicklung ist im Buch [[https:// | * Eine schöne Einführung in die Embedded Softwareentwicklung ist im Buch [[https:// | ||
* [[https:// | * [[https:// | ||
- | * [[https:// | ||
* [[http:// | * [[http:// | ||
- | * [[Atmel Studio Tipps]] | ||
+ | === C Programmierung === | ||
+ | * schönes Online [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | === Embedded Systems Engineering und Hardware/ | ||
+ | * [[https:// | ||
+ | * Auch das Buch [[https:// | ||
+ | |||
+ | === sonstiges === | ||
+ | * [[https:// | ||
* [[https:// | * [[https:// |