Ich habe gerade einen Synthesizer bzw. einen Sequenzer in Planung.
Es soll so etwas wie der hier werden:
Da der Arduino Mega allerdings nur 16 analoge inputs hat, wollte ich mich gerne auf 14 steps beschränken, da ich noch gerne einen Poti für die Geschwindigkeit und einen Für die Lautstärke hätte, der Ausgang soll über einen klinker Jack gehen, also es soll ein Wave signal ausgegeben werden.
Die lauflichter sind natürlich pflicht und ich hätte noch gerne an und aus-schalter für die einzelnen Steps also das man entscheiden kann "bei dem step, kein Ton" oder so ähnlich und die Potis pro Step sollen auch nur den die Tonhöhe bestimmen.
Was jetzt eigentlich unwichtig ist, ich wollte anschließend noch in das selbe Gehäuse mit einem weiteren Arduino (duemilanove) einen Synthesizer bauen, den man dann auf den selben ausgang dazu regeln kann, hierfür werde ich den Auduino (Google Code Archive - Long-term storage for Google Code Project Hosting.) nehmen.
Mein Problem ist jetzt allerdings, dass ich noch kaum programierkenntnisse habe, was ein ziemliches Problem bei einem solchen Projekt ist, daher meine frage, könnt ihr mir ein paar tipps, ratschläge, kurse, programmbauteile oder ähnliches vorschlagen? [smile]
Ich bin für alles dankbar was mir weiterhelfen könnte und ich versuche es natürlich auch selbst hinzukriegen [smile]
Soo, das wars erstmal von meiner Seite, ich hoffe ihr könnt mit meinen Beschreibungen etwas anfangen und jetzt viel spass beim mich zubombadieren mit Tipps, Ratschlägen und Mäkeln
Ein Potentiometer kannst du nicht anschließen, aber einen Inkrementalgeber. Angeschlossen an zwei Digitale Eingänge kannst du dann einen Wert hoch und runterzählen. Musst mal googeln, gibt da schon was für den Arduino.
Ich bin auch dabei einen Step Sequenzer mit angeschlossenem SID zu entwerfen, hab mich für Inkrementalgeber entschieden.
Und was soll man dann mit diesen Inkrementalgebern ? ...wozu genau verwendest du den SID in deinem Projekt? wenn du fertig bist, könntest du ja mal ein paar details hochstellen
Nun ja, du nutzt ja die analogen Eingänge um irgendwelche Variablen einzustellen. Meist über einen Spannungsteiler, wobei dein Poti am analogen Eingang angeschlossen ist. Der analoge Wert wird dann in digitale Werte von 0 bis 1024 (hier dann dezimal) codiert. Der Inkrementalgeber (sowas hier z.B. STEC12E08: Drehimpulsegeber, 24 Impulse - 24 Rastungen, vertikal bei reichelt elektronik ) sieht aus wie ein Poti und gibt bei jedem Schritt ein High aus. Das kannst du auswerten und eine Variable hoch-runter zählen.
Ich werde den I-geber nutzen um zum Beispiel bei meinem Step Sequenzer die Note auszuwählen, durch hoch, bzw. runterdrehen. Der aktuelle Notenwert wird dann auf einem Display angezeigt.
Der SID wird wird mein Synthesizer, der über meinen Step Sequenzer angesteuert wird. Das wird dann eine kleine Groovebox werden. Wenn alles klappt
Oh, google hatte mir da nür müll ausgespuckt xD ...Die Teile klingen gut, wie schließt man die denn an den Arduino an und wie bindet man sie ins Programm ein? und wenn ich den arduino an und ausschalte, ist dann nicht die Zählung verloren?
Also, ich denke ich werde auf jeden Fall einen von diesen als einsteller für die geschwindigkeit nehmen und für die Pitch werde ich 16 lineare Potentiometer nehmen.
Deine Variante für die Geschwindigkeitseinstellung mit dem Drehen oder finde ich gut. Du könntest den Geschwindigkeitswert auch im Eeprom ablegen, dann kannst du auch nach der Trennung der Stromversorgung den Wert erhalten.
Das ist ein sehr guter Vorschlag das der Arduino so etwas hat wusste ich garnicht... aber ich denke, ich werde noch einen 2ten Inkrementalgeber verwenden um die länge der Steps zu definieren und die 16 analogen puins sind dann für Pitch... klingt simpel, jetzt muss ich es nurnoch schaffen zu programieren
In meinem Kopf ist schon alles fertig, die Beschaltung dürfte auch kein großes Problem sein, nur die Programmierung, dass auch alles ohne Verzögerungen klappt...
Mal abwarten.
Ja, das bauen ist der kleinste teil eine kleine frage noch, muss ich die Schalter an Pins anschließen und mit einprogramieren oder reicht es wenn ich die mit an die Potentiometer anschließe und wenn ich die dann ausmache ist der Wert ja gleich null... ?
Du brauchst zwei Digitale Pins, so wie ich das gesehen habe. Die zwei Pins werden ausgewertet und dein Kontroller weiß ob du noch oben oder unten "drehst". Potis brauchst du dafür nicht, kannst aber die analogen Eingänge für irgendwas anderes nehmen.
:~ das sieht iwie Kompliziert aus... ich wünschte ich würde mich besser mit PRogramieren auskennen... ich kann ja mal versuchen einen Code zu schreiben und vlt könnt ihr mir dann helfen ihn zu Optimieren
Japp ...also das Programm steht eigentlich schon, allerdings habe ich noch keine HArdware um es zu testen...
Eine Frage hätte ich noch, ich habe mir jetzt einen Arduino Mega 2560 betstellt, allerdings kann ich im Internet nirgentwo finden, wie man die Frequenz der PWM Einheit erhöht, allerdings ist dies doch sehr wichtig da es sonst ja nicht sehr gut klingt, weiss da jemand vlt mehr als ich?
Haha, sieht ja schonmal gut aus vor allem ist es gut dokumentiert, ich habe zum Teil Projekte gefunden die ich echt gut fand (zb das Video in meinem 1. Post) aber zu denen es weder shematics noch Source Codes gibt, was einen dann doch etwas annervt...
Könntest du vlt mal meinen Code überprüfen? Ich hab zwar noch keine Hardware aber ich würde gerne wissen ob meine Ansätze richtig sind..