Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
microcontrollertechnik:start [2026/03/15 08:49] – [Table] mexleadminmicrocontrollertechnik:start [2026/09/17 17:12] (current) – old revision restored (2025/03/12 01:58) mexleadmin
Line 1: Line 1:
-====== Microcontroller Programming ======+====== Mikrocontroller-Technik ======
  
-===== Introduction and Context =====+===== Einführung und Einordnung =====
  
 <WRAP right> <WRAP right>
 {{codeoflife.jpg?200|}} {{codeoflife.jpg?200|}}
-\\ <fs 70%>Source: own photo ([[https://creativecommons.org/publicdomain/zero/1.0/deed.en|CC0 1.0]])</fs>+\\ <fs 70%>Source: eigenes Foto ([[https://creativecommons.org/publicdomain/zero/1.0/deed.en|CC0 1.0]])</fs>
 </WRAP> </WRAP>
  
-Microcontroller technology deals with how to bring a programmable component ("microcontroller"to lifeIn the following, the software is programmed in the programming languageIn contrast to the language components and algorithms presented in the Computer Science course in the 1st and 2nd semester, the focus here is on the special characteristics resulting from the close connection to hardware+Die Mikrocontroller-Technik befasst sich damit, wie man einem programmierbaren Bauteil ("Mikrocontroller"Leben einhauchtDabei wird die Software im Folgenden in der Programmiersprache programmiertIm 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.  
-The course builds on knowledge from the following subjects:+Es wird auf die Kenntnisse folgender Fächer zurückgegriffen:
  
-  * Computer Science I and II (Informatik I und II)+  * Informatik I und II
  
-**Important:**+**Wichtig:**
  
-  * Stay in contact with usEven though there may be weeks of independent workcommunication is important so that a meaningful result can be submitted for the respective deadlines+  * Bleiben Sie mit uns in KontaktTrotzdem es zeitweise Wochen mit eigenständigen Bearbeitung gibtist der Austausch wichtig, damit zu den jeweiligen Abgaben ein sinnvolles Ergebnis abgeliefert wird
-  * Exchange ideas with the other studentsIn most casesyou have the solution to someone else's problem, and vice versa+  * Suche Sie den Austausch mit den anderen StudierendenMeistens haben Sie die Lösungzum Problem eines anderen und umgekehrt
-  * If you only start programming one week before the submission deadlinethings will usually get tightEspecially if there are uncertainties and questionsStart early+  * Wenn Sie erst eine Woche vor der Abgabe mit dem Programmieren beginnenwird es in der Regel engBesonders, wenn es Unklarheiten und Nachfragen gibtBeginnen Sie frühzeitig
-  * Try to find enjoyment in programmingIt is like doing a puzzleexcept that you decide what the picture looks like!+  * Versuchen Sie Spaß am Programmieren zu findenEs ist wie Puzzelnnur dass Sie selbst das Bild bestimmen!
  
 ~~PAGEBREAK~~ ~~CLEARFIX~~ ~~PAGEBREAK~~ ~~CLEARFIX~~
  
  
-===== Links to the Lecture =====+===== Links zur Vorlesung =====
  
-Topic      Description                                                                                                                                                                                                                                                                                                                                                                                                                                                            Language  +Thema Beschreibung Sprache 
-| Tutorial   A good introduction to embedded software development can be found in the book "Sensor Networks in Theory and Practice Successfully Realizing Embedded Systems Projectsby Prof. Meroth and Mr. Sora. It explains how to get started in the field of software development embedded in hardwareFrom within the university network or via VPN, you can access it directly on [[https://link.springer.com/content/pdf/10.1007/978-3-658-39576-6.pdf|Springer Link]].  English   +| Tutorial | Eine schöne Einführung in die Embedded Softwareentwicklung ist im Buch "Sensornetzwerke in Theorie und Praxis - Embedded Systems-Projekte erfolgreich realisierenvon Prof. Meroth und Herrn Sora zu findenDort wird der Einstieg in das Feld die (in Hardware) eingebettete Softwareentwicklung erklärtAus dem Hochschulnetz bzw. mit VPN können Sie dieses direkt bei [[https://link.springer.com/book/10.1007/978-3-658-31709-6|Springer Link]] betrachten. |Deutsch
-| :::        | The above-mentioned book is also available in German. From the university network or via VPNyou can access it directly on [[https://link.springer.com/book/10.1007/978-3-658-31709-6|Springer Link]].                                                                                                                                                                                                                                                                German    +|:::| The above-mentioned book is as "Sensor networks in theory and practice" also available in English. It is the accompanying book of Prof. Meroth and Mr. Sora. It explains how to get started in the field of (hardware) embedded software development. From the university network or with VPN you can view this directly at [[https://link.springer.com/content/pdf/10.1007/978-3-658-39576-6.pdf|Springer Link]].|English
-| Tutorial   Recommended tutorial from [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial|mikrocontroller.net]]                                                                                                                                                                                                                                                                                                                                                            German    +| Tutorial | Empfehlenswertes Tutorial von [[https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial| mikrocontroller.net]]|Deutsch
-| Tutorial   The AVR itself also provides good introduction to C programming on the AVR platform as [[https://www.youtube.com/watch?v=UMi6lg563BA&index=3&list=PLtQdQmNK_0DRhBWYZ32BEILOykXLpJ8tP|video]] and as [[https://developerhelp.microchip.com/xwiki/bin/view/products/mcu-mpu/8-bit-avr/|textual Developer Help]]                                                                                                                                                      | English   +| Tutorial |Also the AVR itself has nice introduction into C programming on the AVR platform 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| 
-Datasheet  The [[https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48_88_168_megaAVR-Data-Sheet-40002074.pdf|data sheet]] of the ATmega88 is also a good reference work                                                                                                                                                                                                                                                                                                      | English   +|DatenblattDas [[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| 
-| C Support  [[http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html|calculator for interrupt timers and prescalers]]                                                                                                                                                                                                                                                                                                                                                   | 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  | [[https://www.nongnu.org/avr-libc/user-manual/modules.html|Documentation of the AVR compiler libraries]] (e.g. stdlib)                                                                                                                                                                                                                                                                                                                                                 | 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|
  
  
-===== Further Links =====+===== weiterführende Links =====
  
-=== C Programming === +=== C Programmierung === 
-  * Nice online [[https://de.wikibooks.org/wiki/C-Programmierung|open source book]] for learning the programming language +  * schönes Online [[https://de.wikibooks.org/wiki/C-Programmierung|Open Source Buch]] zum Erlernen der Programmiersprache 
-  * [[https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf|C Code Reference Card]] ("cheatsheet")+  * [[https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf|C Code Referenz Card]] ("Cheatsheet")
  
-=== Embedded Systems Engineering and Hardware/Software Co-Design === +=== Embedded Systems Engineering und Hardware/Software Co-Design=== 
-  * [[https://www.ifi.tu-clausthal.de/fileadmin/IFI/Abteilungen/Energieinformationsnetze_und_Systeme/Embedded_Systems_Engineering_Handbuch_V0_61a.pdf|Embedded Systems Engineering Handbook]] from TU Clausthal / FH Nordhausen: very detailed and in-depth book +  * [[https://www.ifi.tu-clausthal.de/fileadmin/IFI/Abteilungen/Energieinformationsnetze_und_Systeme/Embedded_Systems_Engineering_Handbuch_V0_61a.pdf| Handbuch Embedded Systems Engineering]] der TU Clausthal / FH Nordhausen: Sehr ausführliches und tiefgehendes Buch  
-  * The book [[https://sourceforge.net/projects/qpc/files/doc/PSiCC2.pdf/download|Practical UML Statecharts in C/C++, 2nd Edition: Event-Driven Programming for Embedded Systems]] is also suitable as a detailed reference work \\ [[http://sourceforge.net/projects/qpc/files/doc/PSiCC2-CN.pdf/download|Chinese translation]]+  * 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|中国語の翻訳]]
  
-=== Miscellaneous === +=== sonstiges === 
-  * [[https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange#Zusammensetzung|Table of ASCII characters]] +  * [[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|Assembly instructions for the Mexle AVR programmer]]+  * [[https://www.mikrocontroller.net/attachment/74100/Bauanleitung_AVR-USB-PROGI.pdf|Bauanleitung des Mexle AVR-Proggis]]