Forum: Mikrocontroller und Digitale Elektronik MIDI Protokoll mit µC empfangen


von Carlos S. (newmicro)


Lesenswert?

Hallo zusammen!!
Würde gerne auf nem µController das MIDI Protokoll empfangen.
Nun ist meine Frage was für eine Elektronik davor muss und wie ich das 
auf dem µController auslese und in ein Register schreiben kann.
Gibt es auch Bücher(wenn möglich auf deutsch)welche mir weiter helfen?

von Skua (Gast)


Lesenswert?


von Carlos S. (newmicro)


Lesenswert?

Danke für die Info,
gibt es noch Bücher die hierfür Sinn machen??
Desweiteren noch die Frage wie errechnet man den Optokoppler und dessen 
Widerstand?
Wo finde ich den Teil zum auslesen?
Vielen Dank schonmal!!

von Karl H. (kbuchegg)


Lesenswert?

Florian S. schrieb:
> Danke für die Info,
> gibt es noch Bücher die hierfür Sinn machen??
> Desweiteren noch die Frage wie errechnet man den Optokoppler und dessen
> Widerstand?
> Wo finde ich den Teil zum auslesen?
> Vielen Dank schonmal!!

Fragen wir mal was anderes:
Welche Vorkentnisse bringst du mit?

Deine Fragen klingen allesamt danach, als ob so ein Projekt noch 
mindestens 5 Nummern zu groß für dich ist.

von Carlos S. (newmicro)


Lesenswert?

Stimmt mein vorwissen ist leider nicht sehr groß.
Kann ein bissle Assembler programmieren und damit kleine Programme auf 
dem µC zum laufen bringen.
Würde es aber eben gerne können.Habe Synths und wollte eben auslesen was 
diese über das Protokoll auswerfen...mir quasi ein Monitor erstellen.
Sicher kann es sein das dieses Projekt für mich nicht einfach ist,
daher helft mir bitte und schreibt mir welche Bücher mir weiterhelfen um 
mich einzulesen...oder Vorprojekte welche Sinn machen.
Wie lernt man am besten das zu können??
Nochmals vielen Dank!!

von Karl H. (kbuchegg)


Lesenswert?

Florian S. schrieb:

> Würde es aber eben gerne können.Habe Synths und wollte eben auslesen was
> diese über das Protokoll auswerfen...mir quasi ein Monitor erstellen.
> Sicher kann es sein das dieses Projekt für mich nicht einfach ist,
> daher helft mir bitte und schreibt mir welche Bücher mir weiterhelfen um
> mich einzulesen...oder Vorprojekte welche Sinn machen.

MIDI ist in erster Linie einfach nur RS232 auf einer Leitung.
D.h. einer deiner ersten Schritte ist es eine funktionierende RS232 
Kommunikation hinzukriegen. Und zwar nicht einfach nur auf Zeichenebene, 
sondern auf Nachrichteneben. D.h. mehere Zeichen empfangen und zu einer 
Nachricht zusammenzusetzen. Für das erste Zwischenziel ist die Nachricht 
noch uninteressant. Das kommt dann später, wenn man die Zeichen schon 
mal wo empfangen hat und sie irgendwo anzeigt. Dann ist es auch viel 
einfacher, sich mit einer MIDI Doku hinzusetzen und einfach mal zu 
sehen, wie sich das auf der Anzeige angezeigte in der Doku widerfindet. 
Die abstrakte Doku erwacht dann plötzlich zu Leben.

Allerdings würde ich sowas dann nicht mehr in Assembler machen, sondern 
in C. Kommt aber auch darauf an, wie gut du in Assembler bist.

> Wie lernt man am besten das zu können??

Üben, üben, üben.
Da führt kein Weg drann vorbei. Ist wie Radfahren. Die kannst 
haufenweise Bücher darüber lesen, deswegen kannst du noch lange nicht 
fahren. Sinnvollerweise wird man allerdings nach seinem ersten Tag am 
Rad nicht gleich eine Alpenüberquerung in Angriff nehmen, sondern erst 
mal kleine Brötchen backen.

Du willst mitloggen. Das bedingt, dass du ein Ausgabemedium hast. zb ein 
LCD. Kannst du das schon ansteuern und dort Ausgaben machen?

(Hintergrund: Es ist bei Projekten immer gut, wenn man mit dem 
Ausgabemedium anfängt. Denn dann hat man etwas, auf dem man 
Zwischenergebnisse oder Variableninhalte mitprotokollieren kann und so 
das gefürchtete 'Stochern im Nebel' gleich von vorne herein im Keim 
erstickt. Ohne Ausgabe muss man teilweise raten, was im Programm 
wirklich vor sich geht. Mit Ausgabe, kann man sich das anzeigen lassen.)

von Loonix (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> Deine Fragen klingen allesamt danach, als ob so ein Projekt noch
> mindestens 5 Nummern zu groß für dich ist.

Sowas war mein allererstes Projekt(schon ein paar Jährchen her) und ich 
muss sagen, es war nicht wirklich schwer zu bewältigen. Es gibt da ein 
paar schöne Beispiele im Netz, weitere Literatur braucht es da nicht 
unbedingt. Suchen soll newmicro aber schon selbst, sonst wirds zu 
einfach.

Man muss auch Anfänger wirklich nicht vor jeder Anforderung, die über 
eine einzelne LED hinausgeht, warnen. Wenn er es nicht gleich hinkriegt, 
tuts auch keinem weh, oder?

von Carlos S. (newmicro)


Lesenswert?

Hey vielen Dank für eure antworten!!
So werde jetzt mal ein bissle programmieren um weiter zu üben.
Ja was man selbst heruasfindet gibt einem sicher ein größeres 
Erfolgserlebnis ;-).
@ Karl Heinz:
C kann ich halt gar nichts....Wenn ich dich richtig versteh sollte ich 
erstmal anzufangen den µController auslesen so das ich am PC zum 
Beispiel sehe was er an der RSR232 Schnittstelle ausgibt??(Denke da z.B. 
an Hyperterminal)
Grüßle und Danke an alle!!

von Karl H. (kbuchegg)


Lesenswert?

Loonix schrieb:

> Man muss auch Anfänger wirklich nicht vor jeder Anforderung, die über
> eine einzelne LED hinausgeht, warnen. Wenn er es nicht gleich hinkriegt,
> tuts auch keinem weh, oder?

Nein, überhaupt nicht. Ganz im Gegenteil. Fehler zu machen, gehört in 
der Programmierung dazu.

> Suchen soll newmicro aber schon selbst, sonst wirds zu einfach.

Genau darum gehts.
Als du dein Projekt durchgezogen hast, hast du dich wahrscheinlich 
hingesetzt, hast im Netz nach Vorlagen gesucht (sowohl Hardware als auch 
Software) und hast einfach mal angefangen. Bei Problemen bist du am Ball 
geblieben. Du hast dich selber aus dem Sumpf herausgezogen.

Wenn ich hier aber ein Posting sehe:
Ich will xyz bauen
Ich hab keine Ahnung wie die Hardware aussehen muss
Ich hab keine Ahnung wie die Software aussehen muss

UND wenn dann jemand einen Link auf etwas ähnliches postet, das als 
Ausgangspunkt für zb die Hardware dienen kann bzw. man sich dort schon 
so einiges ansehen kann

UND der Fragesteller dann auch noch nachhakt: Aus der Software, wo finde 
ich dort die für mich relevanten Teile

DANN ist ist für mich klar, dass er wenig bis gar keine Eigeninitiative 
aufbringt, sondern an der Hand genommen werden will. Dann will nicht er 
das Projekt machen, sondern (überzogen ausgedrückt) er will zusehen, wie 
ein anderer das Projekt für ihn macht, bzw. mit der Nase auf jedes 
kleinste Detail gestossen werden.

Es ist ja nicht so, dass ich ihm abrate. Ich versuch nur, ihm einen 
sinnvollen Weg aufzuzeigen, in welcher Reihenfolge er sich das 
notwendige Wissen beibringen muss.
Für mich ist eine sinnvolle Reihenfolge
* erst mal ein Ausgabemedium
* dann RS232 empfangen (was wiederrum einfcher geht, wenn man erst mal
  senden kann. Stichwort: Stochern im Nebel. Beim Senden an einen PC
  sehe ich, ob das klappt oder ob an der Hardware noch Einstellungen
  vorgenommen werden müssen - Stichwort Taktfrequenz
* zum Testen vom PC einzelne Zeichen an den µC schicken und die anzeigen
  lassen. Sonst kann es sein, dass einem das MIDI Gerät ganz einfach
  überfährt, indem es zuviel sendet
* dann das MIDI Gerät anhängen, Zeichen empfangen. MIDI Doku durchsehen
  und den Sinn in den Zeichen verstehen lernen
* dann die MIDI Nachrichten dekodieren und anzeigen


Ich hab von MIDI Details auch keine Ahnung. Aber so in etwa wäre mein 
Fahrplan.

von Carlos S. (newmicro)


Lesenswert?

ok, hast echt recht sollte vielleicht mal mehr suchen.Und testen was da 
so geht.Sonst könnte ich mir swas auch fertig kaufen g.
Werde den Thread bald löschen aber nochmals Danke an alle!!!

von Loonix (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> DANN ist ist für mich klar, dass er wenig bis gar keine Eigeninitiative
> aufbringt, sondern an der Hand genommen werden will. Dann will nicht er
> das Projekt machen, sondern (überzogen ausgedrückt) er will zusehen, wie
> ein anderer das Projekt für ihn macht.

Versteh ich schon, dass dich das nicht "aufbaut". Respekt, dass du 
deinen Standpunkt hier nochmal ausführlich dargelegt hast - ich wollte 
dich keineswegs dazu provozieren.

Florian S. schrieb:
> Ja was man selbst heruasfindet gibt einem sicher ein größeres
> Erfolgserlebnis ;-).

Richtig, dabei wünsche ich viel Spaß. Und nur keine Angst vor C, den 
Teil der Sprache den du am Anfang brauchst, kann man an einigen Tagen 
schon erlernen. Learning by Doing - das lässt C ohne Weiteres zu.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Florian S. schrieb:
> Habe Synths und wollte eben auslesen was
> diese über das Protokoll auswerfen...mir quasi ein Monitor erstellen.

Da Du ja einen Computer hast, hast Du vielleicht sogar eine Soundkarte 
mit MIDI-Anschluss. Dann könnte Dir

http://www.midiox.com/

helfen. Im Allgemeinen kommen die MIDI-Daten auch so schnell und in 
einer Vielzahl von Bytes, dass Dein Hardware-"Monitor" ein ziemlich 
grosses Display bräuchte, um das alles vernünftig anzuzeigen. Ausserdem 
sollst Du mit den Synths Musik machen und Dir nicht die Daten angucken 
;-)

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
Noch kein Account? Hier anmelden.