Quellcode

Die Software dieses Projektes steht als Download zur Verfügung.

Download Quellcode 

Folgende Funktionen sind in der Software abgedeckt:

- Grafikoberfläche mit Toucheingabe
- Manuelles Verfahren des Schlittens (links/rechts)
- Setzen von virtuellen Endpunkten
- Automatisches Pendeln zwischen Endpunkten (virtuelle Endpunkte oder Endschalter)

Um ein "Flackern" der Bedienoberfläche bei geringer Schrittmotorfrequenz zu vermeiden, wird die Weiterschaltung der Motorschritte durch einen Timer-Interrupt getriggert. Somit kann die Visualisierung auch während der Wartezeit zwischen zwei Motorschritten mit einer hohen Bildwiederholfrequenz (größer als 30 Bilder/Sekunde) aktualisiert werden.

Bei der Verwendung einer Delay/Sleep Funktion würde das Programm für die Wartezeit zwischen zwei Schritten blockiert werden und die Bildwiederholfrequenz könnte nicht gewährleistet werden.

Da bei der manuellen Bewegung des Motors der Touch dauerhaft gedrückt werden muss, wird laufend ein Interrupt durch den Touchscreen erzeugt. Damit der Schrittmotor trotzdem die volle Geschwindigkeit erreicht, werden die Motorfunktionen aus der Timer-Interrupt-Service-Routine aufgerufen. Somit ist sichergestellt, dass nach einem Triggern des nächsten Motorschrittes, dieser auch ausgeführt wird.

 

Zur Erstellung des Quellcodes wurden folgende Hilfsmittel verwendet:

1. Entwicklungsumgebung (IDE): System Workbench for STM32F7 von ST (basierend auf Eclipse)
http://www.st.com/en/development-tools/sw4stm32.html

2. Konfigurationstool: STM32 Cube MX von ST
http://www.st.com/en/development-tools/stm32cubemx.html

3. Grafikbibliothek: STemWin von ST und Seeger Microcontroller GmbH
http://www.st.com/en/embedded-software/stemwin.html