Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
microcontrollertechnik:start [2020/06/21 17:27]
tfischer [Zeitplan]
microcontrollertechnik:start [2024/09/19 02:34] (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 ("Mikrocontroller") Leben einhaucht. Dabei wird die Software im Folgenden in der Programmiersprache C programmiert. Im Gegensatz zu der im 1. und 2. Semester im Kurs Informatik dargestellten Sprachkomponenten und Algorithmen wird hier Wert auf die Eigenheiten durch die Hardware-nähe gelegt.  Die Mikrocontroller-Technik befasst sich damit, wie man einem programmierbaren Bauteil ("Mikrocontroller") Leben einhaucht. Dabei wird die Software im Folgenden in der Programmiersprache C programmiert. Im Gegensatz zu der im 1. und 2. Semester im Kurs Informatik dargestellten Sprachkomponenten und Algorithmen wird hier Wert auf die Eigenheiten durch die Hardware-nähe gelegt. 
 +Es wird auf die Kenntnisse folgender Fächer zurückgegriffen:
 +
 +  * Informatik I und II
 +
 +**Wichtig:**
 +
 +  * 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!
  
 ~~PAGEBREAK~~ ~~CLEARFIX~~ ~~PAGEBREAK~~ ~~CLEARFIX~~
-<panel type="warning" title="Achtung"> 
-Die Veranstaltung ist dieses Semester __nicht__ mit dem Elektronik-Labor kombiniert.  
-<wrap hide>Details zum Ablauf finden Sie beim [[elektronik_labor:start|EST Labor]].</wrap> 
-</panel> 
  
-===== Zeitplan ===== 
  
-  * 03.07 Abgabe der ersten Software-Version: +===== Links zur Vorlesung =====
-    * Diese Software soll bereits lauffähig sein.  +
-    * Die Software darf auskommentierte, nicht lauffähige Komponenten enthalten +
-  * 24.07 Abgabe der finalen Software-Version \\ Diese Software soll den Anforderungen (siehe [[Tipps fürs Programmieren]]) genügen +
-  * 31.07 Abgabe der (finalen) Präsentation \\ Für die Präsentation sind weitere Tipps unter [[Präsentation]] zu finden+
  
-===== Abgabe ===== +^Thema^Beschreibung^Sprache^ 
-  * Bitte geben Sie folgenden Komponenten ab+|Tutorial|Eine schöne Einführung in die Embedded Softwareentwicklung ist im Buch [[https://link.springer.com/content/pdf/10.1007%2F978-3-658-18386-8.pdf|Sensornetzwerke in Theorie und Praxis - Embedded Systems-Projekte erfolgreich realisieren]] von Kollegen Meroth und Sora zu finden. Dort wird der Einstieg in das Feld die (in Hardware) eingebettete Softwareentwicklung erklärt. Aus dem Hochschulnetz bzw. mit VPN können Sie dieses direkt bei Springer Link betrachten.|Deutsch| 
-    * Projektordner aus ATMEL Studio (bitte ohne nicht notwendige files, d.hlassen Sie alte, nicht eingebundene Files und alte Versionen weg, sofern Sie solche angelegt haben) +|Tutorial|Empfehlenswertes Tutorial von [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial| mikrocontroller.net]]|Deutsch| 
-    * Eine Simulide Datei (auch hier alte Versionen weglassen)+|Tutorial|Also the AVR itself has a nice introduction into C programming on the AVR plattform as [[https://www.youtube.com/watch?v=UMi6lg563BA&index=3&list=PLtQdQmNK_0DRhBWYZ32BEILOykXLpJ8tP|Video]] and [[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/8-bit-avr/|textual Developer Help]] |English| 
 +|Datenblatt| Das [[https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48_88_168_megaAVR-Data-Sheet-40002074.pdf|Data Sheet]] des Atmega88 ist ebenfalls ein gutes Nachschlagewerk |English| 
 +|Datenblatt| Das Datenblatt des Atmega88 wurde auch auf Deutsch übersetzt: [[https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/ATmegaX8.chm/|Online Datenblatt ATmega88]] |English| 
 +|C-Support| Ein [[http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html|Rechner für Interrupt Timer und PreScaler]] |English| 
 +|C-Support|[[https://www.nongnu.org/avr-libc/user-manual/modules.html|Dokumentation der AVR Compilerbibliotheken]] (z.B. stdlib|English|
  
-===== Links ===== 
  
-=== Resourcen für embedded Programmierung === +===== weiterführende Links =====
-  * [[1._hello_blinking_world|AVR Programmierung für Dummies]]: ein schönes Video für den Start. +
-  * Sehr zu empfehlen ist das [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial| AVR-C-Tutorial]] auf mikrocontroller.net +
-  * Eine schöne Einführung in die Embedded Softwareentwicklung ist im Buch [[https://link.springer.com/content/pdf/10.1007%2F978-3-658-18386-8.pdf|Sensornetzwerke in Theorie und Praxis - Embedded Systems-Projekte erfolgreich realisieren]] von Kollegen Meroth und Sora zu finden. Dort wird der Einstieg in das Feld die (in Hardware) eingebettete Softwareentwicklung erklärt. Aus dem Hochschulnetz bzw. mit VPN können Sie dieses direkt bei Springer Link betrachten. Eine andere schöne Einführung findet sich auf [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial|Mikrocontroller.net]]. +
-  * [[https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/ATmegaX8.chm/|deutsche Übersetzung der ATmega88 Anleitung]] +
-  * [[http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html|Rechner für Interrupt Timer und PreScaler]]+
  
 === C Programmierung === === C Programmierung ===
   * schönes Online [[https://de.wikibooks.org/wiki/C-Programmierung|Open Source Buch]] zum Erlernen der Programmiersprache C   * schönes Online [[https://de.wikibooks.org/wiki/C-Programmierung|Open Source Buch]] zum Erlernen der Programmiersprache C
   * [[https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf|C Code Referenz Card]] ("C Cheatsheet")   * [[https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf|C Code Referenz Card]] ("C Cheatsheet")
 +
 +=== Embedded Systems Engineering und Hardware/Software Co-Design===
 +  * [[https://www.in.tu-clausthal.de/uploads/media/Embedded_Systems_Engineering_Handbuch_V0_61a.pdf| Handbuch Embedded Systems Engineering]] der TU Clausthal / FH Nordhausen: Sehr ausführliches und tiefgehendes Buch 
 +  * Auch das Buch [[https://sourceforge.net/projects/qpc/files/doc/PSiCC2.pdf/download|Practical UML Statecharts in C/C++, 2nd Edition: Event-Driven Programming for Embedded Systems]] eignet sich als ausführliches Nachschlagewerk \\ [[http://sourceforge.net/projects/qpc/files/doc/PSiCC2-CN.pdf/download|中国語の翻訳]]
  
 === sonstiges === === sonstiges ===
   * [[https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange#Zusammensetzung|Tabelle der ASCII Zeichen]]   * [[https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange#Zusammensetzung|Tabelle der ASCII Zeichen]]
   * [[https://www.mikrocontroller.net/attachment/74100/Bauanleitung_AVR-USB-PROGI.pdf|Bauanleitung des Mexle AVR-Proggis]]   * [[https://www.mikrocontroller.net/attachment/74100/Bauanleitung_AVR-USB-PROGI.pdf|Bauanleitung des Mexle AVR-Proggis]]