Polyphonic Ton mit STM32F103

OP #5599196
Ich würde gerne für eine (Weihnachtsbastelei) mittels einer Bluepill 
(die auf eine eigene Projekt-PCB dann geroutet werden soll) eine "Sound" 
Unterstützung haben.

Und diese sollte mehrstimmig sein.

Jetzt hat es hier jemand geschafft, so etwas mittels AVR zu machen (das 
mich schon vor ein paar Jahren begeistert hat):

https://www.mikrocontroller.net/articles/AVR-Synthesizer

So etwas hätte ich nun gerne auch für einen STM32. Leider mag ich die 
AVR der Assemblerteile wegen nicht wirklich auf einen STM32 portieren 
(vor allen Dingen denke ich würde das zu lange dauern).

Genial wäre, würden MIDI-Dateien in ein Array konvertiert werden können, 
die dann ein STM32 mittels PWM abspielt.

Alles was ich im Netz finde sind Synthesizer, die eben Töne produzieren 
können, aber keine Lieder abspielen können (und leider bin ich in der 
Musiktheorie nicht wirklich bewandert).

So etwas wie auf youtube wäre genial:

https://www.youtube.com/watch?v=PdPEE6Jw4Yk

Nur leider hat der Autor seinen Quellcode nicht veröffentlicht.

Kennt jemand evtl. eine Seite (die mir entgangen ist), wo so etwas 
vorgestellt wird (vorzugsweise ohne das STM32duino, perfekterweise mit 
LIBOPENCM3 ... eine HAL würde aber auch gehen).

Gruß,

Ralph

PS: aus eigener Kraft kann ich leider nur einen stumpfen Sinuston 
erzeugen
Ralph S. schrieb:
> https://www.mikrocontroller.net/articles/AVR-Synthesizer
>
> So etwas hätte ich nun gerne auch für einen STM32. Leider mag ich die
> AVR der Assemblerteile wegen nicht wirklich auf einen STM32 portieren
> (vor allen Dingen denke ich würde das zu lange dauern).

Dann würde das Portieren von z.B. FluidSynth oder TiMidity noch länger 
dauern.

Ich empfehle den VS1053B, dann kannst du den STM32 weglassen ...
OP
... komm schon Stefan... einfach den DFPlayer anschließen, Tasten 
simulieren... ist nicht so prickelnd... und eine SD Karte brauchts auch. 
Im Moment leß ich mich in Tönetheorie ein... in Wavetables und 
Sequenzer... Das ganze soll ja ohne externe, intelligente Hardware 
funktionieren. Aktiven TP an den PWM und ein kleiner NF Verstärker... 
Hrmpf... bis Weihnachten wohl nicht... aber Ehrgeiz ist geweckt. Evtl. 
doch das AVR Projekt portirren
Ralph S. schrieb:
> Nur leider hat der Autor seinen Quellcode nicht veröffentlicht.

Wozu auch? Den Mixer Code kann man sich doch aus LibMikMod 
rausoperieren.

Ich habe hier noch ein paar alte .MOD Dateien (1993 und älter) 
rumfliegen, die würden größtenteils in einen 512KB Flash reinpassen. Der 
128KB STM32 wäre für die besser klingenden allerdings zu knapp.


Den (einfachen) Mixer Code findet man in libmikmod/playercode/virtch.c 
aber da gehört natürlich auch noch der Code zur Auswertung der Noten 
Pattern hinzu.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 8 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.