poniedziałek, 20 kwietnia 2015

Heroiczna walka z kodem, czyli bitwa o 16 bitowe PWM

Cześć, jestem Wojtek i lubię pisać bloga na którym dzielę się moimi przeżyciami/myśleniami. A po poprzednim ogólnikowym wielkim poście nadszedł czas na konkret. Dzisiaj będzie o programowaniu Arduino i pewnym psie:


W skrócie to ilustruje jak czuję się próbując "programować". Ale nie płaczmy nad swoim nędznym losem tylko wklejmy kawałek kodu. Adnotacje robię po angielsku bo reszta też jest taka właśnie. Po angielsku. Demyt, jak to napisać poprawnie.
Git czy Frajer Hub?


To jest właśnie mój kod. Postanowiłem zmodyfikować projekt :ten właśnie, ale dodając wyjście CV 1V/oktawe, Gate i dwa oscylatory, a także kółeczko pitch bend. Nie będe się rozpisywał o kodzie bo wszystkie notatki są w nim wykomentowane. Co do klawiszy to jest ich 37, od F do F, ale to było jakieś chińskie gunwienko bo totalnie dziwnie była matryca podłączona, zamiast po kolei wszystkie kable w taśmie 1, 2, 3, 4, 5, 6, 7, 8 kolumn do 9, 10, 11, 12 i 13 rzędu to szło to tak:
4, 3, 2, 1, 8, 7, 6, 5, po kolei łączących się z rzędami 10, 11, 12, 13, ale najwyższych 5 nutek w 3 oktawie już było na żyle 9 taśmy. Trochę bez sensu, nie mówiąc już o tym, że kod którego użyłem jako bazy pewnie w ogóle by nie zczaił takiej kombinacji i zamiast dawać mi po kolei wszystkie nutki to kolejność byłaby dziwnie pomieszana. Pozamieniałem więc żyły miejscami i zrobiłem nowy konektor z goldpinów, teraz idzie to tak: 1, 2, 3, 4, 5, 6, 7, 8/ rzędy 10, 11, 12, 13, 9. Jeszcze się przekonamy czy to zadziała, bo nie dość, że dziwnie były podłączone te żyły (pewni w PRC dostali mikrokontroler z takim dziwnym rozkładem i tak zaprojektowali płytkę) to jeszcze ktoś pożałował diod na matrycę i nie ma ich na każdym przełączniku. Myślę, że raczej nie będzie to problemem, bo to i tak będzie monofoniczny synth, ani też nie będzie miał arpeggiatora, więc nie będzie maskowania ani ghostingu (a może będzie? patrz pies wyżej).
No dobra to w sumie tyle, jak będe miał nowego smartfonika to będe wrzucał takie piękne focie że złapiecie się za głowę, a na razie papa i buziaczki!

Yeah, ok, time for an english version as well, more writing... Anyway here is some of my program based on Jen Shen's Arduino MIDI keyboard, I'm trying to add CV/gate output and two wavetable oscillators, I already added Gate triggered by NoteOn, but I'm struggling with 16 bit PWM CV out now, how to calculate the value from a MIDI note? The link to Github is above (Git czy Frajer Hub)

I also salvaged a keyboard from an MC-7 tablehooter, it doesn't have diode on each switch, but it's going to be a mono synth anyway so probably no big deal. Or maybe big, we'll see. The keyboard was wired in a weird way, instead of having columns and rows arranged like this:
1, 2, 3, 4, 5, 6, 7, 8 connecting to
rows 9, 10, 11, 12, 13 as the notes get higher, it was more like this:
4, 3, 2, 1, 8, 7, 6, 5 connecting to rows 10, 11, 12, 13 and top 5 notes in the highest octave were connected to pin 9, so completely counterintuitive. I rearranged the wires so now it's in order:
1, 2, 3, 4, 5, 6, 7, 8 columns connecting to rows 10, 11, 12, 13, 9. I'll post some photos when I get a hold of a better camera.
That's all for now, if you know some 'Duino moves, feel free to chip in!

Brak komentarzy:

Prześlij komentarz