| Author |
Message
|
jankomuzykant Poziom 13

Joined: 19 Mar 2007 Posts: 120 Location: Kraków
|
#1
19 Apr 2009 21:12 Tani sampler retro - elektoniczna perkusja |
|
|
|
Korzystając z kilku wolnych godzin zapragnąłem stworzyć automat perkusyjny w stylu wczesnych lat osiemdziesiątych. Otóż w owych czasach wielkość pamięci mierzono w kilobajtach, a ośmiobitowa rozdzielczość sampli była normą. Z drugiej strony takie ograniczenia wyszły na dobre muzyce, ponieważ ich obchodzenie zmuszało do kreatywności i wciąż to słychać w nagraniach z tamtego okresu.
Do zrobienia samplera wykorzystałem mikroprocesor 89S52 używając jego wewnętrznej pamięci. Pamięć ta to ''aż'' 8kB, z czego trochę trzeba wygospodarować na sam program obsługujący sampler. Do stworzenia sampli użyłem któregoś ze współczesnych softwarowych wersji automatu Roland 808, po czym każdy z dźwięków obrobiłem w CoolEdit tak, by brzmiał możliwie najlepiej przy maksymalnym okrojeniu z bajtów. Jako przetwornik cyfrowo analogowy pracuje drabinka rezystorów R-2R zapięta na zerowy port procesora. Port ten jest dodatkowo podciągnięty rezystorami do zasilania, a drabinka D/A spolaryzowana, co daje całkiem czyste i przyjemne brzmienie. Sample są odgrywane z podstawowymi częstotliwościami próbkowania 22kHz i wyższymi (w zależności od potrzeb), a niektóre ze znacznie mniejszymi, co daje w tym wypadku zamierzony ''brud'' dźwiękowy. Wyzwalanie dźwięków następuje poprzez zwieranie pozostałych wejść do masy (wybrane 23 brzmienia) i z midi (wszystkie 47 brzmień). Oprogramowanie napisane jest w asemblerze.
Skromna ilość próbek (sześć sztuk) wymusiła zastosowanie różnych sztuczek. I tak sample ogrywane są z różnymi częstotliwościami, w różnych fragmentach i czasem także od tyłu.
Schemat jest dość banalny i urządzenie można wykonać na prostej, uniwersalnej płytce. Na niebiesko zaznaczyłem wejścia programujące procesor z portu lpt w standardzie AEC, ale oczywiście procesor można zaprogramować w dowolny sposób. Wartości elementów:
IC1 - Atmel 89S52
IC2 - dowolny transoptor, np. CNY17
X1 - kwarc 12MHz
C1, C2 - 22p
C3 - około 4u7
C4 - około 100n
C5 - 4u7 lub większy
C6 - 470n lub większy
R1 - 220R
R2 - 2k2
R3-R10 - drabinka rezystorów 4k7
R11-R34 - 10k o jak najniższej tolerancji, najlepiej 0,5%. Takie rezystory można wysortować miernikiem z większej ilości, co będzie rozwiązaniem najtańszym.
Sampler pracuje na 10 kanale midi i pokrywa zakres perkusji GM (#35-#81) w większości będąc z nim zgodnym. Wejścia wyzwalające mają wyższy priorytet nad midi in. Częstotliwość kwarcu wpływa na wysokość brzmień, ale tylko przy wartości 12MHz jest możliwa praca z midi.
Sampler reaguje na komunikaty Pitch Bend odstrajając częstotliwości odtwarzania oraz interpretuje velocity dwustopniowo (dla wartości mniejszych i większych od 64 poziom odtwarzania różni się o 6dB).
Dokładniejszy opis wkrótce pojawi się na mojej stronie, tam można też znaleźć szczegółowy poradnik dotyczący programowania mikroprocesora.
Być może zrobię także wersję z sekwencerem, posiadającą wyświetlacz oraz midi out.
W załącznikach źródła dla ciekawych, wkład do procesora oraz demo w mp3, które ''skomponowałem'' specjalnie dla tego urządzenia, a także mid służący do odtworzenia tego nagrania. Zamieściłem tam też wcześniejszą wersję 1.0, która nie interpretowała pitch bend i velocity, wymagała także kwarcu o częstotliwości 6Mhz.
Zdjęcie urządzenia zamieszczę jak wykonam drugi egzemplarz, prototyp wygląda paskudnie :)
| Description: |
|
| Filesize: |
8.92 KB |

|
| Description: |
|
 Download |
| Filename: |
program.zip |
| Contents: |
|
| Filesize: |
42.61 KB |
| Punkty: |
0.00 |
|
|
| Back to top |
|
 |
king559 Poziom 9

Joined: 26 Feb 2008 Posts: 42 Location: Jaworzno
|
#2
30 Apr 2009 11:16 Re: Tani sampler retro - automat perkusyjny |
|
|
|
Ciekawie się zapowiada ale ile coś takiego będzie kosztować ?
|
|
| Back to top |
|
 |
Google

|
#
30 Apr 2009 11:16 |
|
|
|
|
|
| Back to top |
|
 |
jankomuzykant Poziom 13

Joined: 19 Mar 2007 Posts: 120 Location: Kraków
|
#3
30 Apr 2009 13:05 Re: Tani sampler retro - automat perkusyjny |
|
|
|
| king559 wrote: |
| Ciekawie się zapowiada ale ile coś takiego będzie kosztować ? |
Tyle co procesor, kwarc i trzydzieści oporników. Nie więcej jak 10zł :)
|
|
| Back to top |
|
 |
resetmen Poziom 12

Joined: 18 Apr 2003 Posts: 99
|
#4
02 May 2009 22:15 Re: Tani sampler retro - elektoniczna perkusja |
|
|
|
Projekcik niezły muszę powiedzieć...swego czasu robiłem na atmelu 8515 sterownik midi do sterowania soundfontami z karty muzycznej sound blaster...w swim projekcie musiałem użyć kwarca 6 Mhz bo tylko o ile dobrze pamiętam przy 6 Mhz dało się osiągnąć szybkość transmisji midi 31250 Hz.W swoim projekcie nawet zrobiłem klawiaturę dynamiczną...każdy klawisz miał dwa styki..jeden prędzej się załączał drugi później.przy silnym uderzeniu klawisza czas pomiędzy załączeniami styków był krótszy...zamieniałem potem tę liczbę na odpowiedni komunikat midi i ot cała tajemnica dynamicznej klawiatury.Oprogramowanie napisane było w bascomie.No ale żeby sample uruchomić na atmelu to miałem za małą główkę gratulacje!!! oczywiście chciałbym się dowiedzieć jak to dokładnie zrobiłeś..pozdro!
|
|
| Back to top |
|
 |
Google

|
#
02 May 2009 22:15 |
|
|
|
|
|
| Back to top |
|
 |
jankomuzykant Poziom 13

Joined: 19 Mar 2007 Posts: 120 Location: Kraków
|
#5
02 May 2009 23:27 Re: Tani sampler retro - elektoniczna perkusja |
|
|
|
| resetmen wrote: |
| swego czasu robiłem na atmelu 8515 sterownik midi do sterowania soundfontami z karty muzycznej sound blaster...w swim projekcie musiałem użyć kwarca 6 Mhz bo tylko o ile dobrze pamiętam przy 6 Mhz dało się osiągnąć szybkość transmisji midi 31250 Hz. |
Daje się także przy wielokrotnościach tej wartości.
| resetmen wrote: |
| W swoim projekcie nawet zrobiłem klawiaturę dynamiczną...każdy klawisz miał dwa styki..jeden prędzej się załączał drugi później.przy silnym uderzeniu klawisza czas pomiędzy załączeniami styków był krótszy...zamieniałem potem tę liczbę na odpowiedni komunikat midi i ot cała tajemnica dynamicznej klawiatury. |
He, brew pozorom dynamiczną klawiaturę zrobić łatwiej - konkretne dwa stany niwelują problem drgań styków. W przypadku niedynamicznej klawiatury trzeba stosować pętle opóźniające wystarczająco długie i jednoczenie ''nieklejące'' klawiaturę. Opracowałem kilka takich klawiatur, zapraszam obejrzeć w
tym wątku.
| resetmen wrote: |
| Oprogramowanie napisane było w bascomie.No ale żeby sample uruchomić na atmelu to miałem za małą główkę gratulacje!!! oczywiście chciałbym się dowiedzieć jak to dokładnie zrobiłeś..pozdro! |
W asemblerze :)
A zobaczyć sobie możesz w załączniku, jest tam i wkład do procesora, i źródło.
|
|
| Back to top |
|
 |
lechoo Poziom 24

Joined: 17 Sep 2002 Posts: 4741 Location: łódzkie
|
#6
03 May 2009 11:06 Re: Tani sampler retro - elektoniczna perkusja |
|
|
|
Nadzwyczaj dobra jakość dźwięku jak na taką prostotę przetwornika C/A. Niemniej prosi się o jakiś 8-bitowy bufor pomiędzy portem P0 (który jest OC) i drabinką R2R.
Ciekawie wygląda porównanie ze współczesną syntezą wavetable, dźwięk z Twojego układu przypomina syntezę FM - TR-808 był chyba syntezatorem analogowym...
W każdym razie - kawał dobrej roboty i prosimy o więcej :)
|
|
| Back to top |
|
 |
Google

|
#
03 May 2009 11:06 |
|
|
|
|
|
| Back to top |
|
 |
jankomuzykant Poziom 13

Joined: 19 Mar 2007 Posts: 120 Location: Kraków
|
#7
03 May 2009 14:46 Re: Tani sampler retro - elektoniczna perkusja |
|
|
|
| lechoo wrote: |
| Nadzwyczaj dobra jakość dźwięku jak na taką prostotę przetwornika C/A. Niemniej prosi się o jakiś 8-bitowy bufor pomiędzy portem P0 (który jest OC) i drabinką R2R. |
Można zawsze wstawić jakiś DAC, ale moim hobby jest ''projekt minimum'' czyli ile się da wycisnąć przy zminimalizowaniu ilości sprzętu.
Zresztą do tego typu dźwięków perkusyjnych nie trzeba takiej jakości, bo po prostu tego nie słychać.
| lechoo wrote: |
| Ciekawie wygląda porównanie ze współczesną syntezą wavetable, dźwięk z Twojego układu przypomina syntezę FM - TR-808 był chyba syntezatorem analogowym... |
Tak, 808 generował dźwięki czysto analogowo z prostych przebiegów. Coś takiego nie raz powtarza się dziś w projektach i jest to fajne, ale wymaga sporej ilości elementów. Moje źródła wygenerowałem w emulatorze tak, by dało się z tego zrobić sensowny set przy minimalnej przestrzeni na próbki (krótkie ataki, kompresja sygnałów itd).
Jeśli ktoś chciałby sobie zbudować samplerek, zamieściłem właśnie dodatkowe informacje w ''dziale muzykantów'':
http://as.elte-s.com/zrob/zrob.htm
|
|
| Back to top |
|
 |