3849
Kommentar:
|
4048
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 4: | Zeile 4: |
Zeile 28: | Zeile 29: |
* `ACM-OS <https://r-n-d.informatik.hs-augsburg.de:8080/ferdinand.saufler/acm-os>`_ | * Erweiterungen von `ACM-OS <https://r-n-d.informatik.hs-augsburg.de:8080/ferdinand.saufler/acm-os>`_ |
Zeile 35: | Zeile 36: |
* Menüsteuerung für Mikrocontroller ("MEL/MEX") | |
Zeile 36: | Zeile 38: |
Gnublin ------- |
* Weiterentwicklung des Logikanalysators "USB-TPLE" |
Zeile 39: | Zeile 40: |
Beim Gnublin Projekt http://www.gnublin.org warten viele Bachelorarbeiten. Hier sind ein paar Beispiele: |
- https://r-n-d.informatik.hs-augsburg.de:8080/hubert.hoegl/Logikanalysator |
Zeile 42: | Zeile 42: |
* Barebox Bootloader anpassen (http://barebox.org) * "Gnublin Distribution" überarbeiten. |
|
Zeile 46: | Zeile 43: |
http://wiki.gnublin.org/index.php/Gnublin_Distribution | Alte Hardware schnittstellengetreu durch Neue ersetzen ------------------------------------------------------ |
Zeile 48: | Zeile 46: |
- Bisherige Shell-Skripte in Python neu schreiben. - Update auf neuere Debian Releases mit systemd. |
Die in die Jahre gekommene CPU11 Hardware mit 68HC11 Controller soll durch eine moderne Hardware ersetzt werden, so dass die Baugruppe einfach ausgetauscht werden kann. Das heisst, die Schnittstellen nach aussen sollen unveraendert funktionieren. Es gibt Schnittstellen fuer eine Tastenmatrix, einige LEDs, RS-232, CAN-Bus und ein alphanumerisches 20x4 LCD Display. Die bisherige Anwendung wurde in C auf einem winzigen Multitasker programmiert. Das neue Board soll mit einem Controller mit ARM Cortex M3/M4 Kern ausgestattet werden und unter FreeRTOS oder eCos arbeiten. Ich koennte mir sogar vorstellen, dass ein kleines Embedded Linux Modul auf dem neuen Board sitzt. |
Zeile 51: | Zeile 55: |
Hier sieht man die alte CPU11 Hardware: | |
Zeile 53: | Zeile 57: |
* Aktuellen Linux Kernel für LPC3131 Mikrocontroller anpassen. Im Idealfall die Änderungen in den Mainline-Kernel bringen. |
`<attachment:cpu11v2.jpg>`_ |
Zeile 67: | Zeile 70: |
Alte Hardware schnittstellengetreu durch Neue ersetzen ------------------------------------------------------ Die in die Jahre gekommene CPU11 Hardware mit 68HC11 Controller soll durch eine moderne Hardware ersetzt werden, so dass die Baugruppe einfach ausgetauscht werden kann. Das heisst, die Schnittstellen nach aussen sollen unveraendert funktionieren. Es gibt Schnittstellen fuer eine Tastenmatrix, einige LEDs, RS-232, CAN-Bus und ein alphanumerisches 20x4 LCD Display. Die bisherige Anwendung wurde in C auf einem winzigen Multitasker programmiert. Das neue Board soll mit einem Controller mit ARM7 Kern ausgestattet werden und unter FreeRTOS oder eCos arbeiten. Ich koennte mir sogar vorstellen, dass ein kleines Embedded Linux Modul auf dem neuen Board sitzt. Hier sieht man die alte CPU11 Hardware: `<attachment:cpu11v2.jpg>`_ |
|
Zeile 95: | Zeile 77: |
einer Gemeinde aus dem Internet weiterentwickelt. Hier sind einige | einer Gemeinde im Internet weiterentwickelt. Hier sind einige |
Zeile 123: | Zeile 105: |
Gnublin ------- Beim Gnublin Projekt http://www.gnublin.org warten viele Bachelorarbeiten. Hier sind ein paar Beispiele: * Barebox Bootloader anpassen (http://barebox.org) * "Gnublin Distribution" überarbeiten. http://wiki.gnublin.org/index.php/Gnublin_Distribution - Bisherige Shell-Skripte in Python neu schreiben. - Update auf neuere Debian Releases mit systemd. * Aktuellen Linux Kernel für LPC3131 Mikrocontroller anpassen. Im Idealfall die Änderungen in den Mainline-Kernel bringen. |
Ausschreibung von Bachelor- und Masterarbeiten
Prof. Dr. Hubert Högl, <Hubert.Hoegl@hs-augsburg.de>
URL: http://elk.informatik.hs-augsburg.de/hhwiki/BaMaArbeitenNeu
Inhalt
1 Verschiedenes
Ansteuern eines "SPBTLE" Bluetooth 4.1 Moduls mit STM32Cube und der BlueMicrosystem Bibliothek (Jan 2017).
Programmierung eines Event Recorders fuer STM32.
uLan Kommunikation zwischen Embedded Linux Rechner und Mikrocontrollern (AVR, STM32, ...)
Erweiterungen von ACM-OS (RTOS fuer Cortex-M Mikrocontroller)
- GDB Unterstuetzung
- Scheduling mit Prioritaeten
- Sonstige interessante Erweiterungen
Menüsteuerung für Mikrocontroller ("MEL/MEX")
Weiterentwicklung des Logikanalysators "USB-TPLE"
2 Alte Hardware schnittstellengetreu durch Neue ersetzen
Die in die Jahre gekommene CPU11 Hardware mit 68HC11 Controller soll durch eine moderne Hardware ersetzt werden, so dass die Baugruppe einfach ausgetauscht werden kann. Das heisst, die Schnittstellen nach aussen sollen unveraendert funktionieren. Es gibt Schnittstellen fuer eine Tastenmatrix, einige LEDs, RS-232, CAN-Bus und ein alphanumerisches 20x4 LCD Display. Die bisherige Anwendung wurde in C auf einem winzigen Multitasker programmiert. Das neue Board soll mit einem Controller mit ARM Cortex M3/M4 Kern ausgestattet werden und unter FreeRTOS oder eCos arbeiten. Ich koennte mir sogar vorstellen, dass ein kleines Embedded Linux Modul auf dem neuen Board sitzt.
Hier sieht man die alte CPU11 Hardware:
3 GDB Debug Stub für ARM7/Cortex M3
Ich möchte die früher häufiger verwendete Technik wieder aufleben lassen, den Debugger gdb über die serielle Schnittstelle an einen Mikrocontroller anzuschliessen. Dazu braucht man einen "Debug Stub" der in dieser Arbeit anzufertigen ist. Die entstehende Software soll portabel sein und für die gängigen ARM7/Cortex M3 Kerne funktionieren.
4 Open On-Chip Debugger
Der OpenOCD ist ein JTAG Debugger für alle Mikrocontroller die einen ARM-Kern haben (http://www.arm.com). Er entstand aus einer Diplomarbeit, die ich vor ein paar Jahren betreut habe. Mittlerweile wird das Projekt aktiv von einer Gemeinde im Internet weiterentwickelt. Hier sind einige mögliche Themen:
- Integration der Skriptsprache Python (neben der bestehenden Skriptsprache Jim Tcl).
- Tutorien schreiben
- Thread-Unterstuetzung fuer FreeRTOS und eCos einbauen
- CPLD/FPGA Programmierung
- Boundary Scan Test
- Tracing
- Integration neuer Prozessoren
Hier sind ein paar weiterführende Links:
- Homepage http://openocd.org
- Online Doku http://openocd.org/documentation
5 Offene Heizungssteuerung
Die unter
http://hhoegl.informatik.hs-augsburg.de/doc/die-steuerung
vorgestellte Heizungssteuerung hat noch viele unerledigte Arbeitspakete. Wenn Sie in diesem Bereich etwas machen wollen, dann kann ich gerne eine oder mehrere Bachelorarbeiten nach Mass ausschreiben.
6 Gnublin
Beim Gnublin Projekt http://www.gnublin.org warten viele Bachelorarbeiten. Hier sind ein paar Beispiele:
Barebox Bootloader anpassen (http://barebox.org)
"Gnublin Distribution" überarbeiten.
http://wiki.gnublin.org/index.php/Gnublin_Distribution
- Bisherige Shell-Skripte in Python neu schreiben.
- Update auf neuere Debian Releases mit systemd.
Aktuellen Linux Kernel für LPC3131 Mikrocontroller anpassen. Im Idealfall die Änderungen in den Mainline-Kernel bringen.