Hallo, ich brauche Hilfe beim programmieren zum senden von Midi-Daten! Meine Schaltung(Testschaltung) besteht aus einem Atmega32, 2 Taster(jeweils ein Pin,wenn gedrückt dann High-Signal) und einem Piezo-Taster(Auch High-Signal auf einem Pinn, wenn gedrückt) Als Software benutze ich Bascom-AVR. Aufgabe der Schaltung ist es, wenn Piezo und Taster 1 gdrückt sind, dann soll z.B. der Ton c ausgegeben werden und wenn Piezo und Taster 2 gedrückt sind, dann soll z.B. ein g ausgegeben werden. Der Piezo soll jeweils die Anschlagstärke angeben. Wie die unterschiedlichen Midi-Befehle ausehen, findet man ja im Internet. Ich habe auch schon zwei Led's durch betätigen der Taster zum leuchten gebracht....also Atmega und Schaltung funktionieren schonmal. Bei der Midi-Ausgabe komme ich aber absolut nicht weiter. Die Themen wie für den Midi-Rekorder haben mir auch nicht weiter geholfen. Ich finde einfach keinen Anfang, da ich nicht durchblicke, wie sowas aus zu sehen hat... Wenn sich jemand mal die Mühe macht und einem Anfänger grob das Vorgehen erklären könnte, oder vieleicht sogar den code für mein Beispiel hier rein schreibt, wäre ich überaus dankbar!!! Liebe Grüße Karsten
Wie du bestimmt weißt, ist MIDI ein serielles Protokoll mit 31,25kBaud. 8 Bit, noParity, 1 Stopbit. >Wie die unterschiedlichen Midi-Befehle ausehen, findet man ja im >Internet. Alles, was du tun mußt: die entsprechenden Befehle über die serielle Schnittstelle senden.
Ja aber wie sieht so ein code zum senden aus? Mir fehlt's da halt an Grundwissen in der AVR-Programmierung...
>Nun, dazu gibts ja das AVR-Tutorial, gleich links oben.
Richtig, aber ich denke er sollte das BASCOM Handbuch mal lesen ;)
AVR Tutorial "UART senden" Die MIDI-Codes stehen im Internet. http://www.midi.org/about-midi/table1.shtml Im Forum steht doch schon einiges darüber, einfach mal nach MIDI suchen!
Hallo, hätte dazu auch noch eine Frage. Kann ich einfach in Bascom die baudrate auf 31250 setzte und die Start Stop sonstwas bits alle deaktiviere und dann das Midi Signal über die UART senden, oder muss ich da sonst noch was ändern?? Bzw geht das dann ganz normal mit dem #print# Befehl ??
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.