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 [2019/05/26 00:18]
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 ("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:
  
-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 |===== 1. Hello Blinking World  =====+**Wichtig:**
  
-<WRAP group> <WRAP half column>+  * 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!
  
-==== Ziele ====+~~PAGEBREAK~~ ~~CLEARFIX~~ 
 +<panel type="warning" title="Achtung"> 
 +Details zum Ablauf finden Sie beim [[elektronik_labor:start|EST Labor]]. 
 +</panel>
  
-Nach dieser Lektion sollten Sie: 
  
-  - x 
-</WRAP> <WRAP half column> 
  
-==== Video ====+===== Abgabe ===== 
 +  * Zur Abgabe der Softwarekomponenten: 
 +    * Bitte geben Sie folgenden Komponenten ab: 
 +      * Projektordner aus Microchip Studio  
 +      * Eine Simulide Datei 
 +    * Bitte entfernen Sie nicht notwendige Files, d.h. lassen Sie alte, nicht eingebundene Files und alte Versionen weg, sofern Sie solche angelegt haben 
 +    * 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 
 +    * Gerne können Sie auch Ihr Video per digitale (soziale) Medien teilen. Es schadet nie etwas Werbung für interessante Themen und für Ihre Hochschule zu machen. Falls das Medium öffentlich zugänglich ist, ist es ausreichend eine Textdatei mit Link abzugeben.
  
-LED Blinken und Bit-Manipulation  +===== Links =====
-{{youtube>2VPM2Q0JtxI}}+
  
 +=== Resourcen für embedded Programmierung ===
 +  * Sehr zu empfehlen ist das [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial| AVR-C-Tutorial]] auf mikrocontroller.net
 +  * There is also a nice introduction into C programming on the AVR plattform with [[https://www.youtube.com/watch?v=UMi6lg563BA&index=3&list=PLtQdQmNK_0DRhBWYZ32BEILOykXLpJ8tP|multiple videos from ATMEL]]
 +  * 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 ===
 +  * 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")
  
-++++ +=== 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  
-++++ 6. SPI-Schnittstelle |===== 6. SPI-Schnittstelle  ===== +  * 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|中国語の翻訳]]
- +
-<WRAP group> <WRAP half column> +
- +
-==== Ziele ==== +
- +
-Nach dieser Lektion sollten Sie: +
- +
-  wissen, welche wie man theoretisch mehrere Slaves mit einem Master verbindet. +
-  - die Namen der 4 Leitungen und deren Funktionen kennen, welche jeweils an einem Slave enden. +
-  - 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. +
- +
-</WRAP> <WRAP half column> +
- +
-==== Video ==== +
- +
-Theorie zum SPI +
-{{youtube>7uDo_Du5d9g}} +
- +
-Beispiel für SPI mittels Arduino +
-{{youtube>dmpgx7F-VlI}} +
-</WRAP> </WRAP> +
- +
- +
-++++ +
- +
- +
-===== Links ===== +
- +
-[[AVR Programmierung für Dummies]] +
- +
-[[https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange#Zusammensetzung|ASCII Tabelle]]+
  
 +=== sonstiges ===
 +  * [[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]]