Spisu treści:
- Krok 1: Lista części
- Krok 2: Kod C
- Krok 3: Początkowe okablowanie (patrz zdjęcie projektu, aby uzyskać wskazówki)
Wideo: Nagrywanie/odtwarzanie/overdub Midi ze złączami 5-stykowymi: 3 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
* Wykorzystuje układ ATMega-1284 działający z częstotliwością 8 MHz, z 4 k bajtami pamięci RAM i 4 k bajtami eepromu
* Wykorzystuje stare 5-stykowe złącza DIN
* Umożliwia nagrywanie i odtwarzanie, a także overdub: nagrywanie wraz z czymś, co nagrałeś wcześniej.
* Pełne menu
* Możliwość nazywania i przechowywania pliku w eepromie
* Edytowalne tempa i metrum
* Podstawowa kwantyzacja
Przydatność* Proof of concept: ten projekt może okazać się trudny.
Co zawiera ten samouczek:
* Lista części
* Raport z projektu (dołączony do tego panelu)
Zawiera wiele informacji, które musisz wiedzieć o projekcie
* Link do kodu C na GitHub
github.com/sugarvillela/ATMega1284
* Instrukcje krok po kroku dotyczące budowania projektu i dostosowywania kodu
Krok 1: Lista części
Niektóre części dostałem w szkole ze zniżką. Niektóre dostałem w sklepie i zapłaciłem za dużo. Jeśli masz czas, zdobądź to wszystko online.
1 deska do krojenia chleba, dowolny model, mniej więcej taki sam rozmiar jak ten na zdjęciu wstępnym, 20 USD
1 mikroprocesor, model ATMega1284, 5 USD
Jest to wszechstronny chip z doskonałymi funkcjami. Znajdź arkusz danych tutaj:
ww1.microchip.com/downloads/en/devicedoc/atmel-42718-atmega1284_datasheet.pdf
1 zasilacz 5-woltowy
1 ATMEL-lód
Jest to interfejs między komputerem a mikroprocesorem. Potrzebne jest również oprogramowanie do edycji kodu (IDE) i kompilator, który może skompilować C do architektury układu ATMega. Atmel zapewnia środowisko, Atmel Studio, które spełnia te wymagania. Pobierz go tutaj:
1 transoptor, model 6N138 lub odpowiednik, 5 USD
To jest dla danych wejściowych; standard midi wymaga, aby urządzenia były odizolowane od siebie, aby zapobiec pętlom masy. Użyłem ekwiwalentnego układu NEC z identycznym układem pinów. Zobacz zdjęcie powyżej, aby uzyskać informacje lub po prostu google '6n138 pinout'. Jeśli używasz modelu z różnymi przypisaniami pinów, znajdź odpowiednie piny (uważnie).
2 ekrany LCD, model 1602A1, 3 USD każdy
Użyłem wyświetlaczy 2*16, co oznacza, że mają 2 rzędy, każdy o szerokości 16 znaków. Kod został napisany specjalnie dla nich, więc spróbuj użyć tych samych. Połączenia to: 8 linii danych i 2 linie sterujące. Możesz współdzielić linie danych między dwoma ekranami, ale potrzebujesz 2 linii kontrolnych dla każdego z nich, co daje łącznie 4 linie kontrolne. Mój projekt wykorzystuje magistralę C dla linii danych LCD i górną część magistrali D dla linii sterujących. Jeśli okablowasz inaczej, zmień magistrale wyjściowe w swoim kodzie.
1 głośnik
Dla wyjścia metronomu; każdy mówca zrobi. Będziesz zasilał go falami kwadratowymi 3-5 V, więc nie musi brzmieć ładnie. Możesz także podłączyć do zewnętrznego wzmacniacza.
1 kondensator, aby zmiękczyć wyjście fali prostokątnej do głośnika;
2 5-pinowe złącza DIN, męskie lub żeńskie
Użyłem męskich kabli i podłączyłem je do płyty. Aby uzyskać bardziej eleganckie rozwiązanie, użyj złączy żeńskich i podłącz kable męskie do innych urządzeń. (Pamiętaj, że numery pinów są odwrócone w zależności od tego, jak patrzysz na złącze!)
Rezystory 180-330 Ohm, 1k-10kOhm
Być może trzeba będzie poeksperymentować z wartościami rezystorów, aby transoptor odpowiednio szybko śledził wejście
diody LED
Projekt wymaga diody na wejściu optoizolatora, ale wystarczy dioda LED. Użyj diody LED dla metronomu, aby migać w rytm dźwiękowego głośnika. Miej pod ręką więcej diod LED do debugowania wyjścia, jeśli ich potrzebujesz.
Przewody, dużo przewodów
Grubość 20-22, druty lite, długie, krótkie i malutkie.
Krok 2: Kod C
Przejdź do github, aby uzyskać kod:
* Upewnij się, że przeczytałeś i rozumiesz kod, ponieważ może być konieczne dostosowanie go do innego sprzętu.
* Raport projektu na panelu wstępnym zawiera szczegółowe opisy modułów oprogramowania i ich interakcji.
* Bez kopiowania i wklejania. Wejdź w interakcję z kodem; eksperyment; przepisać. Prawdopodobnie możesz to poprawić.
Krok 3: Początkowe okablowanie (patrz zdjęcie projektu, aby uzyskać wskazówki)
Uwagi o zdjęciu projektu przed rozpoczęciem
Na zdjęciu transoptor to ostatni układ po prawej, a procesor to duży układ po lewej.
Zauważysz dwa inne układy pomiędzy nimi z podłączonymi opornikami. Zignoruj je proszę. Są to rejestry przesuwne, które nie są wykorzystywane w tym projekcie. Jeśli kiedykolwiek będziesz chciał dodać tablicę LED, dowiesz się, do czego służą.
Okrągła czarna rzecz to głośnik (buzzer piezo).
Przyciski znajdują się w lewym górnym rogu. To dość daleko od magistrali A w prawym dolnym rogu chipa.
Ekran LCD po lewej to LCD 0. Ekran po prawej to LCD 1.
W tych instrukcjach zakładam, że używasz dokładnie określonej części (wszędzie tam, gdzie na liście części podano numer modelu).
Podłącz zasilanie
Płytka stykowa ma szyny zasilające na krawędziach i między sekcjami. Użyj krótkich przewodów, aby połączyć je wszystkie razem i podłączyć je do zasilania. Teraz możesz uzyskać dostęp do pozytywów i ziemi z dowolnego miejsca na planszy.
Frytki
Zainstaluj układ ATMega, uważając, aby nie zgiąć szpilek (dobra ostrożność w przypadku każdego układu) i upewniając się, że jest całkowicie osadzony.
Zainstaluj transoptor obok procesora.
Podłącz szyny zasilające do odpowiednich styków procesora i transoptora.
LCD
Przeczytaj dołączony plik LCDhookup.pdf (poniżej), aby uzyskać pomoc dotyczącą podłączania wyświetlacza LCD.
Każdy ekran ma dwa złącza zasilania i trzy złącza uziemienia.
Pin 3 to kontrola jasności, która, jeśli zostanie ustawiona nieprawidłowo, sprawi, że zawartość ekranu będzie niewidoczna. Jeśli masz pod ręką potencjometr, użyj go do regulacji napięcia sterującego. Możesz również wypróbować stałe rezystory, aby uzyskać napięcie około 1/2 VCC.
Piny 4 i 6 na LCD 0 łączą się z D4 i D5 na procesorze. Służą do włączania i resetowania ekranu.
Piny 4 i 6 na LCD 1 łączą się z D6 i D7 na procesorze.
Piny 7-17 na obu wyświetlaczach LCD łączą się z C0-C7 na procesorze. To jest wspólna magistrala danych. Każdy ekran zignoruje dane do momentu pojawienia się sygnału sterującego na pinach 4 i 6.
Przeczytaj: Informacje o LCD i więcej informacji, które pomogą zrozumieć, jak działają ekrany LCD.
guziki
Podłącz cztery przyciski do A2-A4 na procesorze. (Zostawiłem A1 otwarty dla wejścia przetwornika A/D, ale go nie użyłem.)
W każdym układzie logicznym niepodłączone wejście jest wysokie, co oznacza, że procesor zobaczy 1 na tym wejściu. Aby to kontrolować, musisz podłączyć piny do masy za pomocą rezystora. Podłączyłem przyciski tak, aby były uziemione (przez rezystor), gdy nie są wciśnięte, i wysokie, gdy są wciśnięte. W tym celu użyj dowolnego rezystora 330 do 1k.
Alternatywnie, a może bardziej energooszczędnie, możesz podłączyć przyciski tak, aby były wysokie, gdy nie są wciśnięte, i niskie, gdy są wciśnięte. Będziesz musiał zmienić kod (buttonBus.c), aby szukać ~PINA zamiast PINA.
Zalecana:
Odtwarzanie MP3 Sound FX Wall: 12 kroków (ze zdjęciami)
MP3 Playing Sound FX Wall: stwórz zabawną i interaktywną ścianę dźwiękową, która odtwarza pliki MP3 za jednym dotknięciem! Co robisz z pustą ścianą? Mógłbyś dodać do tego ładne zdjęcia? Lub pokryj ją kolorową rośliną domową. Widzieliśmy nawet, jak niektórzy ludzie chowają nagie ściany za książką
Transmisja na żywo/nagrywanie wideo na OBS: 5 kroków
Przesyłanie strumieniowe na żywo / nagrywanie wideo na OBS: Ta instrukcja uczy, jak przesyłać strumieniowo lub nagrywać wideo na żywo bezpośrednio z ekranu komputera. Istnieje wiele sposobów na transmisję na żywo i jeszcze więcej sposobów nagrywania, ale ten przewodnik skupi się na platformie streamingowej, OBS. Każdy rozsądnie nowoczesny komp
Mówiące Arduino - Odtwarzanie MP3 z Arduino bez żadnego modułu - Odtwarzanie pliku Mp3 z Arduino za pomocą PCM: 6 kroków
Mówiące Arduino | Odtwarzanie MP3 z Arduino bez żadnego modułu | Odtwarzanie pliku MP3 z Arduino za pomocą PCM: W tej instrukcji dowiemy się, jak odtwarzać plik mp3 za pomocą arduino bez użycia żadnego modułu audio, tutaj użyjemy biblioteki PCM dla Arduino, która odtwarza 16 bit PCM o częstotliwości 8 kHz, więc zróbmy to
Odtwarzanie plików dźwiękowych audio (Wav) za pomocą Arduino i DAC: 9 kroków
Odtwarzanie plików dźwiękowych audio (Wav) za pomocą Arduino i DAC: Odtwarzaj dźwięk w formacie wav z karty SD Audino. Ta instrukcja pokaże Ci, jak plik wav na karcie SD można odtworzyć za pomocą prostego obwodu do głośnika. Plik wav musi być 8-bitowy w trybie mono. Nie miałem problemu z odtwarzaniem plików 44 KHz. Chociaż nie
Arduino Bascis - Odtwarzanie dźwięków i tonów: 5 kroków
Arduino Bascis - Odtwarzanie dźwięków i tonów: Chciałem odtworzyć kilka efektów dźwiękowych i zdałem sobie sprawę, że jest to jeden z zaniedbanych obszarów, jeśli chodzi o samouczki. Nawet na Youtube brakuje dobrych tutoriali na temat Arduino i dźwięków, więc będąc miłym facetem postanowiłem podzielić się swoją wiedzą