Supersimples Midi -> CV Interface

@changeling : Wieso nimmst du nicht die Mini-PSU-Platine?
(Wenn du "relativ viel" Strom willst, nimm einen Low-Dropper für den positiven Zweig. )

monoton schrieb:
Dann wird der Atmega beschrieben.
Mail mit Daten ist raus.

Und keine Panik, das stelle ich auch noch Online (das komplette Projekt steht unter der GPL - darf also immer und frei modifiziert, verkauft und weitergegeben werden).
Nur wenn/bevor ich das Online stelle muss das halbwegs sortiert, doppelt getestet und mit Versionsnummern versehen sein, sonst gibt mir das zu viel durcheinander.
 
schoen zu sehen, dass das hier wirklich hand und fuss hat. da gab es mal ein forum, bei dem einem erst etwas schmackhaft gemacht wurde und dann war ploetzlich stille :agent:
 
Ähm.. damit ich mal so den Fokus für die Dokumentation richtig setzen kann:
- will noch wer den Atmel selber flashen?
- plant wer gleich am Programm rumzuspielen(eigene Änderungen)?
(Ich hatte es oben schon mal beschrieben: die benötigten (Windows-)Programme zum "selber programmieren" sind kostenlos. Ein neues Programm kann man einfach über Midi einspielen, nachdem der Controller (vom mir) einmal mit dem Bootlader beschrieben wurde. Und "kaputtporgrammieren" kann man ihn so auch nicht. )


Ansonsten würde ich da erst mal an den Nachbau und die Anwendung denken. (Aufbauanleitung, Bedienungsanleitung)
 
nordcore schrieb:
- will noch wer den Atmel selber flashen?
- plant wer gleich am Programm rumzuspielen(eigene Änderungen)?

Beides. GIT/SVN Read-Only langt mir.

Edit: lass Dir aber Zeit. Dauert noch bis mein Mini-Labor wieder aufgebaut ist da ich gerade umgezogen bin und derzeit andere Prioritäten habe. An dieser Stelle nochmal vielen Dank für Deine Mühe, da steckt ja schon Einiges an Arbeit drin. Hut ab!
 
Die drei Dateien (für die drei Unterprojekte) gibt es lose, dafür macht ich kein Repository auf...

Die sind auch alle so einfach, das man mit seiner jeweiligen Lieblingsumgebung ein Projekt erstellt, sie in das leere Main.c File kopiert, "Make" wählt und fertig ist.
Das ganze ist prinzipiell das gleiche, wie das MCV876 Update für das Bareille-Interface ( Betriebsprogramm bauen, Bootlader bauen und flashen, Fileconverter zur Sys-Ex Erzeugung. ), da muss man halt in der Doku dazu den Controller durch 168 (statt88) ersetzen, neue/andere/sinnige Projektnamen vergeben, und natürlich andere Quelltexte (demnächst online, aktuell per Mail bei Anfrage). (Die Pinbelegung ist anders, der Controller ist ein ATMEGA 168 statt des 88, dadurch ist die Block-Größe beim Flashen 128Byte statt 64, was einen eigenständigen Bootlader und Fileconverter nach sich zieht. )


Auf Microcontroller.net gibt es übrigens eine Seite mit direktlinks zu den Atmel-Compiler-Downloads: http://www.mikrocontroller.net/articles/AVR-Studio
Ich habe das Studio 4.19, dazu braucht man noch die AVR-TOOLCHAIN 3.3.0. Für den Fileconverter braucht man einen Compiler für sein Betriebssystem, unter Windows bekommt man das Visual Studio für C/C++ von Microsoft kostenlos.
 
als erstes will ich was fertiges bauen, ohne grosse hindernisse. falls das teil dann gescheit laeuft wuerde ich falls die zeit es erlaubt auch gerne selbst am quellcode fuhrwerken.
 
So da waren sie wieder meine 3 Probleme.

Die Platine ist fertig. Frage Nummer 1. Wenn ich am Trimmer drehe müsste sich doch die Spannung am Spannungsregler ändern oder?
2. Wie bekomme ich den Bootloader auf mein Atmel. Habe es mit AVR Studio probiert bekomme es aber nicht hin. Wie merke ich das es funktioniert?
Und des 3. kommt bestimmt auch noch :lol:



Gruß Micha
 
Jein - der Spannungsregler sieht keine Masse und die Spannung zwischen Out und Adj. ist konstant (1,25V).
Am einfachsten misst du im (unbestückten) Atmel-sockel, die Pins in der Mitte (lt. Schaltplan raussuchen, anhand der 100nF Entkoppelkondensatoren aber auch zu ahnen wo das ist... ) sind 5V und Masse. Das muss sich mit dem Trimmer von 4,5 bis 5,5V einstellen lassen.

Programmieren:
Platine an Dragon verkabeln, Chip reinpröppeln, Power einschalten.
Wenn du jetzt im Studio den Dragon "connect"tes, dann:
- kannst du auf der "HW.-Info" Seite die Versorgungsspannung sehen, da sollte 5V (bzw. halt deine Spannung) stehen.
- gehe auf die "Main" Seite. Da musst du ATMEGA 168 einstellen...
- und ISP-Mode ...
- und Settings... ISP-Clock 125kHz.
- jetzt drückst du auf "Read Signature"

Er zeigt die an, ob die Signatur stimmt. Ja => :frolic:
Wenn nicht, gucken was für Bytes kommen, meist lauter 0x0 oder lauter 0xff =>da stimmt was nicht. Selten eine andere konstante Zahlenfolge, dann stimmt der eingestellte Typ nicht.
 
So also die 5v passen. Haben sich super einstellen lassen.

Atmega rein mit dem Dragon verbunden.
-neues Projekt. Atmel AVR Assembler - Name geben. Finish
File Open File - MCV-Boot.c
AVR Connect.

Und da kommt der Fehler. siehe Bild
-


Kannst du mir helfen DANKE



Gruß Micha
 

Anhänge

  • boot1.jpg
    boot1.jpg
    195 KB · Aufrufe: 23
Kabel am Atmel nicht richtig dran?
Klick mal auf OK und dann auf "HW-Settings".
Was für eine Spannung wird angezeigt?

P.S: Die Fehlermeldung stimmt übrigens nicht ganz - wenn der Takt falsch steht (was bei Fabrikfrischen CPUs systematisch so ist), dann zeigt er einfach Unsinn an, nicht etwa diesen Dialog.

P.P.S: klick auch mal auf HW-Info...
( Meiner sagt da: Hardware Version 0x107 und Firmware-Version: 0x60b 0x60b ... )
 
Hast du die Kabelbrücke gelötet? (Diese weiße Schlängelinie im Bestückungsdruck)
(Pin 1 von Atmel auf Pin5 vom Programmierstecker)
 
Hast du die Kabelbrücke gelötet? (Diese weiße Schlängelinie im Bestückungsdruck)
(Pin 1 von Atmel auf Pin5 vom Programmierstecker)

Ja habe ich gelötet.
Bin laut Internet aber nicht der einzige mit diesem Fehler. Nur eine Lösung kann ich nicht finden.


PS. Der Fehler war am Anfang meiner Versuche nicht.

Gruß Micha
 
Das ist ja ein sehr generisches "geht nicht", das kann mehrere Ursachen haben.
Hattest du denn schon mal versucht, den Chip zu Programmieren?

(Grad ausprobiert: Wenn du den Oszillator auf "extern clock" umprgrammiert hast, dann passiert das auch... dann hast du jetzt entweder ein Problem oder eine Aufgabe.... letztere wäre es, irgendwo ein TTL-Takt herzubekommen... oder einen 28pol Sockel in den Dragon zu löten und die 21 Brücken für HV-Programmierung zu stecken ... die braucht keinen Takt... )
 
Dann wohl eher ein Problem.
Kann schon sein das ich durch rumprobieren irgendwo einen Haken falsch gesetzt habe. SHIT!!!!

Löschen kann man denn Atmel nicht?


Ich schaue mir das morgen noch mal genauer an.
Ansonsten war meine Vorgehensweise aber so weit richtig oder?



Gruß Micha
 
Voraussetzungslos umprogrammieren (inclusive löschen) geht nur im HV-Modus. Für den ISP-Betrieb (=der mit den 6 Strippen) muss schon ein wenig "Infrastuktur" vorhanden sein, bzw. Resourcen dürfen nicht anders vergeben werden.

Man kann sich wie folgt "aussperren":
- auf externen Takt umprogrammieren. Dann hilft ein angeschlossener externer Takt (praktisch beliebiger Frequenz)
- auf Debug-Modus umschalten. Dann hilft: "Start Debugging", aber nicht loslaufen lassen sondern unter Debug -> "AVR-Dragon Options..." wählen und da dann den Debug-Wire-Modus abschalten (gibt es einen Button für).
- Reset als I/O Pin einstellen, dann hilft nur der HV-Modus.

(... und der ISP-Modus kann auch abgeschaltet werden, aber das geht wohl nur im HV-Modus. )

monoton schrieb:
Ansonsten war meine Vorgehensweise aber so weit richtig oder?

ähm.. konntest du bei "Main" die Signatur korrekt lesen?
Das wäre der zweite Schritt (nach prüfen der 5V Anzeige), um zu prüfen, dass die Kommunikation zwischen Chip und Dragon ok ist.
Erst wenn das OK ist, sollte man anfangen zu programmieren.

(Dann kann man z.B. unter Programm "Input Elf" die "simpel-cv-prod.elf" laden, einen Haken bei "Fuses" und "Lockbits" setzen (Flash und Eprom haben schon einen) und dann auf Programm drücken. Das ist der kürzeste Weg zum komplett programmierten Chip. Man kann aber auch die Quelltexte selber übersetzen und die dann laden... )

=====
@alle anderen: jetzt wisst ihr, warum es die Controller fertig programmiert und mit "unkaputtbarem" Update über Sys-Ex Updater gibt!
 
@alle anderen: jetzt wisst ihr, warum es die Controller fertig programmiert und mit "unkaputtbarem" Update über Sys-Ex Updater gibt!

:oops:


Ja ich habe mir die Sache wohl etwas leichter vorgestellt.
Egal so lernt man dazu.
Es gibt immer ein erstes mal.


Gruß Micha
 
Ich plag mich grade mit CTLRL rum, das ist diese Programm mit dem man Midi-Controller für Hardware erstellen kann. Damit soll man mal das CV-Interface konfigurieren können.
Das hatte ich mir auch einfacher vorgestellt :mad: (... irgendwie habe ich nicht die Nervenstärke für diese Klickoberflächen... )

(Der Vorteil davon ist, dass man den Controller auch auf dem Mac nutzen kann - ein Stand-Alone Programm könnte ich sonst nur für Windows.. )
 
Werde mir jetzt noch mal einen neuen Atmega besorgen und das ganze noch mal probieren.
Wenn es nicht klappt bestelle ich mir einen schon programmierten bei dir. :oops:


Gruß Micha
 
@monoton: Mail mal deine Adresse ... dann haste den morgen im Briefkasten.

Wie gesagt, mit einem 28 poligen Sockel auf dem Dragon und 21 Kabeln bekommst kannst du den "zerfusten" (... rate mal, warum es dafür ein "deutsches" "Fachwort" gibt :selfhammer: ) auf deinem Dragon auf jeden Fall retten. Wie das gesteckt werden muss, steht in der Hilfe vom AVR-Studio, das geht besser als befürchtet. (Von denen habe ich diese Farb- & Buchstabennummer für die Verkabelung auch geklaut. )
(Help-> AVR Tools User Guide -> AVR Dragon -> Connecting the AVR Dragon -> Device Connection Sheets -> das dritte (Devicesheet: SCKT3200D2) ) -> Figure 3.30. Parallell programming
 

Anhänge

  • hv-168.png
    16,4 KB · Aufrufe: 97
Mal was anderes zur Bedienung.
De Selbstbau Version hat ja 3x Gate 4x CV x in(ich nehme mal an das sind die analogen Eingänge) . Was ist die BTN?
Welcher Midikanal wird angesteuert? (Kanal 1 )
Muss ich irgendwas Jumpern für den Normalbetrieb?



Gruß Micha
 
Ups.. ja ... da war doch noch was...

Es gibt überhaupt:
4 x CV
4 x Gate
2 x IN
2 x Btn (=Button=Taster)
1 x LED
1 x Clock
1 x Midi-Start/Stopp
1 x DCO out
1 x TuneIn

für die Basisfunktionalität werden gebraucht:
Der Taster (BTN) und die LED
CV 1...4
Gate 1

"IN1" ist für den Anschluß eines Potis gedacht. (Derzeit Clock-Teiler-Einstellung. )

"IN2" kann auch Poti, da habe ich derzeit experimentell einen CV-Eingang (0..5V) drauf, der über CV3 auf "stimmende Halbtöne" quantisiert wieder ausgegeben wird. (Für Sequencer-Einsatz)
(Da müsst ihr mal sagen, was da sinnig ist... )

Den "Clock" würde ich auf jeden Fall rausführen, den kann man auch als (Midi-Clock-Synchronen) LFO hernehmen!


Der Midikanal ist zunächst 1, kann aber einfach gelernt werden:
Taste drücken, bis LED an geht. Dann tiefste Taste am Keyboard drücken.
 
G2 habe ich links in dem 10-Pol-Stecker versteckt.
(Ich weiß eh noch nicht, was das soll mit den vielen Gates... die mehrstimmigen Modi sind doch überbewertet. Wenn dann braucht man vielleicht mal 2 Stimmen, für ein "dickes" System, was ernsthaft höhere Polyphonie kann, will man sicher auch ein dickeres Interface haben. )
 


News

Zurück
Oben