#format rst #language de Embedded Systems II (WS22/23) ============================= Wir sind immer am Mittwoch ab 14 Uhr im **W3.21**. Ab 15:40 wechseln wir dann zum Praktikum in den G2.16. Die Einteilung der Gruppen für das Praktikum folgt noch. Wir werden Teams 10, 11, 12 und Teams 20, 21, 22 bilden. Die Teams 1x sind ab 19.10. im Praktikum, die Teams 2x ab 26.10. (zweiwöchig). Moodle Kurs: https://moodle.hs-augsburg.de/course/view.php?id=6224 Repositories auf Gitlab für die Abgabe: https://gitlab.informatik.hs-augsburg.de/es2/ws22 (VPN nötig von ausserhalb der Hochschule) Skript: https://hhoegl.informatik.hs-augsburg.de/es2/skript/index.html Zusammenstellung diverser Dokumente: https://hhoegl.informatik.hs-augsburg.de/hhwiki/EmbeddedSystemsDocs Anleitungen: https://hhoegl.informatik.hs-augsburg.de/hhwiki/EmbeddedSystemsFAQ Frühere Kurse: ``_ Klausurvorbereitung: https://hhoegl.informatik.hs-augsburg.de/hhwiki/Es2Klausurvorbereitung .. Sphinx Anleitung: https://www.hs-augsburg.de/homes/hhoegl/sphinxbericht/ Sphinx Gerüst für Praktikumsbericht: https://gitlab.informatik.hs-augsburg.de/es2/bericht_vorlage Anleitungen https://hhoegl.informatik.hs-augsburg.de/hhwiki/EmbeddedSystemsFAQ .. contents:: Inhalt .. sectnum:: Termine ------- :: #1 12.10.22 W3.21 14 Uhr #2 19.10.22 W3.21 + Labor Teams 1x, V1 #3 26.10.22 W3.21 + Labor Teams 2x, V1 #4 2.11.22 W3.21 + Labor Teams 1x, V2 #5 9.11.22 W3.21 + Labor Teams 2x, V2 #6 16.11.22 W3.21 + Labor Teams 1x, V3 #7 23.11.22 W3.21 + Labor Teams 2x, V3 #8 30.11.22 W3.21 + Labor Teams 1x, V4 #9 7.12.22 W3.21 + Labor Teams 2x, V4 #10 14.12.22 W3.21 + Labor Teams 1x, V5 #11 21.12.22 W3.21 + Labor Teams 2x, V5 Vorbereitung ------------ Sie brauchen einige Werkzeuge. Man kann entweder die virtuelle Maschine nehmen oder die nötigen Werkzeuge von Hand installieren. * Virtuelle Maschine ... - https://ti-wiki.informatik.hs-augsburg.de/doku.php?id=rt-labor_rtvm (aus dem Intranet der Hochschule bzw. über VPN) - Siehe unter https://hhoegl.informatik.hs-augsburg.de/hhwiki/EmbeddedSystemsAnleitungen den Abschnitt "Test der virtuellen Maschine". * ... oder manuelle Installation auf Linux https://gitlab.informatik.hs-augsburg.de/es2/doc/-/blob/main/Installation.md * Hausaufgabe bis 19.10. - Ein `Nucleo STM32L476 `_ in Empfang nehmen - Rechner/Notebook mit Linux startklar machen für die Veranstaltung, z.B. obige virtuelle Maschine installieren. Das in der heutigen Veranstaltung gezeigte "starter" Beispiel sollte bei allen funktionieren. https://gitlab.informatik.hs-augsburg.de/es2/es2-nucl476/starter - Einarbeiten in Gitlab (https://gitlab.informatik.hs-augsburg.de/help) - Öffentlichen ssh Schlüssel in Gitlab anlegen: https://hhoegl.informatik.hs-augsburg.de/hhwiki/GitSpicker#git-im-www-gitlab .. - Einarbeiten in Sphinx (https://www.sphinx-doc.org/en/master) - Sphinx Demobericht klonen, kompilieren nach HTML, lesen https://r-n-d.informatik.hs-augsburg.de:8080/hubert.hoegl/sphinxbericht https://hhoegl.informatik.hs-augsburg.de/dva/sphinxbericht - Die Sphinx Vorlage "bericht_vorlage" für Ihr Team anpassen und in das Team Repository aufnehmen. https://gitlab.informatik.hs-augsburg.de/es2/bericht_vorlage - Die mit Sphinx erzeugten HTML Seiten auf das RZ WWW Home eines Team-Mitglieds übertragen. Praktikumsversuche ------------------ Die fünf Praktikumsversuche finden Sie in den folgenden Repositories. In jedem finden Sie einen Aufgabentext im Markdown Format. Sie sollten alle Versuche in ihr Team-Repository kopieren. Zum Beantworten der Aufgaben editieren sie direkt den Text im Markdown Format. 1\. Versuch (V1) Der erste Versuch ist hier hier: https://gitlab.informatik.hs-augsburg.de/es2/v1 2\. Versuch (V2) CMSIS und Interrupts https://gitlab.informatik.hs-augsburg.de/es2/v2 3\. Versuch (V3) ST Micro "Cube" Bibliothek https://gitlab.informatik.hs-augsburg.de/es2/v3 4\. Versuch (V4) Echtzeitbetriebssystem FreeRTOS https://gitlab.informatik.hs-augsburg.de/es2/v4 5\. Versuch (V5) Low-Power Programmierung https://gitlab.informatik.hs-augsburg.de/es2/v5 Hinweise: 1. Bei allen Versuchen können wir den GNU Debugger GDB verwenden. Es gibt eine GDB Anleitung/Übung unter https://gitlab.informatik.hs-augsburg.de/es2/es2-nucl476/gdb-uebung, siehe darin die Datei `Aufgaben.rst`. Nuetzlich sind auch die beiden folgenden Texte zum GDB: - GDB Quickref für ES2: https://hhoegl.informatik.hs-augsburg.de/es2/gnu/gdb-quickref-es2.pdf - GNU Debugger Text User Interface `main.svg `_ | `main.pdf `_ .. `quickref.txt `_, `quickref.pdf `_ - GNU Debugger Text User Interface `main.svg `_ | `main.pdf `_ Ausserdem werden wir den "Tags" Mechanismus zum Navigieren im Quelltextbaum verwenden. Wie das mit Vim geht zeige ich in der Veranstaltung. Ein Vim Quickref mit den wichtigsten Kommandos ist hier: https://hhoegl.informatik.hs-augsburg.de/pub/vim/vim-quickref/vim-quickref.pdf 2. Für alle Aufgaben die mit Exceptions zu tun haben, ist diese Übersicht hilfreich: - SVG https://hhoegl.informatik.hs-augsburg.de/es2/exceptions/stm32_exc_proc/stm32_exc_proc.svg - PDF https://hhoegl.informatik.hs-augsburg.de/es2/exceptions/stm32_exc_proc/stm32_exc_proc.pdf 3. Die Dokumente, auf die in den Aufgabentexten verwiesen wird, findet man nochmal übersichtlich zusammengestellt unter https://hhoegl.informatik.hs-augsburg.de/hhwiki/EmbeddedSystemsDocs Buecher zum Thema ----------------- * Joseph Yiu, The Definitive Guide to ARM® Cortex®-M3 and Cortex®-M4 Processors, 3rd Edition, Newnes 2013, 864 S. https://learning.oreilly.com/library/view/the-definitive-guide/9780124080829/ * Daniele Lacamera, Embedded Systems Architecture, Packt Publishing 2018, 324 S. https://learning.oreilly.com/library/view/embedded-systems-architecture/9781788832502/