Arduino Polska Forum

Pełna wersja: Kostka z melodiami - 45 przycisków
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Chciałem młodemu zbudować taką grającą kostkę, tylko nie wiem czy się da - proszę o sugestie. Kostka ma obsługiwać 45 przycisków, każdy włącza inna melodie, muzyka miałaby być przechowywana w mp3 na karcie SD, do tego głośnik jakiś w miarę dobry i jakieś diody i lampki na wyjście. Więc potrzebowałbym coś, co obsługuje 64 piny - 45 przycisków, że 4 na dźwięk, nie wiem ile na audio + reszta na diody. Jest to do zrobienia czy za dużo pinów chce? Może muszę zmniejszyć ilość przycisków? Może jest jakiś hack na obsłużenie tego, np. Przyciski podłączone na jednej linii ale z rezystorami do rozpoznania sygnału? Da się to wgrać potem na atmega a plyke zachować?
Teoretycznie, do obsługi 64 przycisków wystarczą dwa piny - magistrala I2C oraz podpięty do niej ekspander I/O, a do niego, z kolei, podpięte w odpowiedniej konfiguracji przyciski i diody.
Pytanie tylko czy jest sens budować taki układ podczas gdy takie zabawki można o wiele taniej kupić gotowe.
Wiem że można, cała zabawa to zrobić to samemu a jakie pozostałe komponenty byś sugerował? Dobrze żeby dźwięk był dobrej jakości 128bitowy i w miarę głośny.
Poza tym, budując samemu dokładnie wiem jakie piosenki i dźwięki chcę a takiej mieszanki nie znajdę na żadnej zabawce.
Szukam komponentów których bym potrzebował i wydaje mi się, że:
1. Moduł odtwarzacza MP3 WMA WAV TF-16P DFPlayer mini fz1281 do odtwarzania muzyki
2. interfejs MCP23017 I2C - ekspander do podpięcia przyciskow
3. przyciski
4. Głośnik Mono
5. Jakąś atmega - jaka?
6.szyna iic - chyba mam coś takiego ale nie jestem pewny, jutro wrzucę fotkę (i atmegi mojej bo chyba też jakąś mam}

Wysłane z mojego VOG-L29 przy użyciu Tapatalka
Szynę i2c to posiada wbudowaną większość uC Tongue
Ogólnie ten ekspander I/O można pominąć i wykorzystać po prostu cały port procesora, jeśli nic więcej nie chcesz tam podpinać. Myślę, że nawet atmega8 da rade.
Swoją drogą, potrzebne Ci aż 45 przycisków?
(19-10-2020, 03:58)sebxx4 napisał(a): [ -> ]Swoją drogą, potrzebne Ci aż 45 przycisków?

Tak, syn uwielbia takie różne piosenki, trochę. Niektóre miałyby być tylko rozrywka, ale niektóre to logopedyczne ćwiczenia na kształtowanie mowy. Wymyśliłem kostkę z 5 ścianami po 9 przyciskow na każdej.
Co do tej szyny czy czegoś to mam taki zestaw[Obrazek: 74a69d0862ce35f3330943e0f16bcc67.jpg]

I pewnie będę musiał dokupić kilka rzeczy
Mam wrażenie, że Ty nie do końca wiesz co chcesz zbudować.
(19-10-2020, 15:04)sebxx4 napisał(a): [ -> ]Mam wrażenie, że Ty nie do końca wiesz co chcesz zbudować.


Ja myślę, że dobrze wiem co chcę zbudować, nawet twierdzę, że umiałbym to napisać (mam warsztat), tylko nie wiem jak to poskładać i czego będę potrzebować, bo nie znam arduino aż tak dobrze - jestem programistą, z elektroniką nie bawiłem się do tej pory. A ten zestaw co na zdjęciu kupiłem sobie jakiś czas temu i leżał i się kurzył, a wrzuciłem żeby było widać co już mam. Dlatego pytam tutaj Smile



Czyli do tego co tam mam już, praktycznie wszystko muszę dokupić: przyciski, kabelki, expander (bo szczerze mówiąc nie wyobrażam sobie jak to atmega sama bez expandera może obsłużyć 39 inputów + mp3 player i diody).

Generalnie działać ma to tak:
- naciskasz przycisk - włącza się piosenka, migają diody
- skończy się piosenka - możesz nacisnąć inny przycisk
Rzuć okiem na to:
[Obrazek: 3157302400_1368067746.png]

To tylko koncepcja, ale powinna dać do myślenia.
Zwykłe przyciski typu microswitch są podwójne, a to daje możliwość aby do każdego z przycisków podłączyć zarówno daną linie kolumn oraz wierszy, które będą jednocześnie zwierane przyciskiem do masy. Podciąganie linii do zasilania możesz zrealizować programowo, więc nie potrzebujesz żadnych dodatkowych elementów.
Proponowałbym zaokrąglić liczbę przycisków do 49 - będziesz miał w pełni wykorzystane 7 linii kolumn oraz 7 linii wierszy.
Gorzej będzie z diodami bo potrzebujesz, jak rozumiem sterować 45 albo 49 diod niezależnie. Potrzebowałbyś 6 demultiplekserów 8-kanałowych i do nich jakiś sterownik na bramkach logicznych.

Chyba, że zaopatrzysz się w Arduino 2560, wtedy masz do dyspozycji wystarczająco dużo pinów I/O żeby nie bawić się w żadne ekspandery, demultipleksery, etc. Wtedy robisz matryce diodową podobną do tej z przełącznikami, używasz na każdą z matryc po 14 pinów, kolejne dwa piny na I2C i tyle.
Diody chce zapalać w pakietach, to ma migać tylko, więc podepnę je do 3-4 linii i będę włączać i wyłączać niezależnie. Ale dzięki za schemat, na pewno się przyda Smile

Wysłane z mojego VOG-L29 przy użyciu Tapatalka