STM32 Mikrokontroller

Hier finden sich einige Informationen zu dem von uns verwendeten µC, dem „Gehirn“ der Lichtorgel. Er dient als Steuerzentrale, welche aus einem Tastendruck einen Ton und ein zugehöriges Lichtsignal generiert.

Der Vorteil dieses Controllers ist, dass er vergleichsweise einfach zu programmieren ist, und durch das verbundene Nukleo-Board auch von zu Hause aus daran gearbeitet werden kann. Letzteres war durch die Corona-bedingten Einschränkungen auch bitter nötig. Was die Töne angingt, stellte es sich zwar als etwas schwieriger heraus, da die zugehörigen Signale von zu Hause aus nicht mit einem Oszilloskop überprüft werden konnten – allerdings hat unser cleveres Team hier eine gute Lösung gefunden, mit der wenigstens hohe Töne gut überprüft werden konnten:

Im Labor konnten die verschiedenen Tonfrequenzen mit dem Oszilloskop gut überprüft werden. Auch die Lichter waren schnell eingestellt, hier war der Messaufbau dafür ein bisschen komplexer.

Als erster Schritt wurden verschiedene Oktavbereiche in Form von Frequenzarrays generiert,auf die dann sp ̈ater mittels der beiden zugehörigen Tasten zurückgegriffen werden kann.Weiterhin wurde ein 1-periodiger Sinus mit n = 100 Samples ausgerechnet, welcher später als Wertebereich für den DAC dienen wird.

Nachdem der Versuch, den DAC mittels der prozessorunterstützten HAL-Befehle zu starten (was aufgrund nicht bekannter Umstände Missglückte), konnte er schließlich mithilfe eines DMA-Befehls zum Laufen gebracht werden. Dies geschieht unmittelbar vor dem While-Loop in der main.c, nachdem zuerst der zugehörige Timer gestartet wird. Die Resultate zeigen beinahe ideal verlaufende Signale, die so direkt aus dem Mikrokontroller kommen:

Für die Lichter wurde 3 einfache Timersignale vom Controller ausgegeben, welche zusammen ein RGB-Wert ergeben. Schaut euch gerne einmal unser Video zu den Resultaten auf der Startseite an!