Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Lampki LED na choinkę - wersja na Attiny84

yogi009 20 Gru 2017 02:22 4584 4
  • Lampki LED na choinkę - wersja na Attiny84

    Niniejszy niewielki projekt jest przedłużeniem i efektem końcowym tej dyskusji:

    https://www.elektroda.pl/rtvforum/topic3407140.html#16888473

    Początkowo wykonałem moduł sterownika zawierający mikrokontroler (taktowanie wewnętrzne, ustawienia fabryczne), jeden przycisk, złącze ISP (taki mój prywatny standard tego złącza) i 10 wyjść na diody LED. Do tego modułu wykonałem w celach dydaktycznych minipłytkę zawierającą 10 diod LED 2mA (szanując parametr całkowitego prądu wyjściowego mikrokontrolera) z rezystorami. Całość zasilana napięciem +5V.

    Lampki LED na choinkę - wersja na Attiny84Lampki LED na choinkę - wersja na Attiny84

    Mając 10 kanałów, można się już całkiem przyzwoicie pobawić efektami świetlnymi. Ponieważ tematyka programowania mikrokontrolerów jest dla mnie dziedziną stosunkowo młodą, przy okazji potrenowałem absolutne podstawy kodu (AVR C). Kiedy już ustaliłem algorytm błyskania, dorobiłem sterownik z tranzystorami wykonawczymi, dzięki czemu pod każdy kanał można podłączyć sznur diod LED. Jego długość zależna jest od parametrów użytego tranzystora (NPN) i napięcia zasilania. Jak widać na schemacie, moduł z tranzystorami otrzymał wyższe napięciem zasilania (u mnie na razie +12V), na pokładzie posiada stabilizator +5V, który przez złącze podaje to napięcie do płytki sterownika (do mikrokontrolera). W tym układzie płytka sterownika nie potrzebuje oddzielnego zewnętrznego zasilacza +5V.

    Lampki LED na choinkę - wersja na Attiny84





    W każdym kanale mam tyle diod LED (ok. 20-25mA), ile jestem w stanie "nakarmić" napięciem +12V, czyli np. 5 czerwonych LED'ów 2,2V/20mA, albo 3 niebieskie 3,2V/25mA. Do wykonania łańcuchów LED użyłem odzyskowych przewodów ze starych słuchawek telefonicznych (zebrało się tego trochę przez lata), lutuje się je tak sobie, ale są elastyczne i chyba dłużej pożyją. Same diody włożyłem w dwucentymetrowe odcinki bezbarwnej rurki PCV i zamierzam zalać wnętrze żywicą.

    Poniżej montażówki (strona Top, na Bottom jest masa):

    Lampki LED na choinkę - wersja na Attiny84Lampki LED na choinkę - wersja na Attiny84

    W module tranzystorowym na Bottom jest mały fragment rozlanego sygnału Vcc (gniazdo LED'ów, strona bottom).

    Poniżej gotowe wydruki do termotransferu, Top sterownika oraz Top i Bottom modułu tranzystorowego:

    Lampki LED na choinkę - wersja na Attiny84Lampki LED na choinkę - wersja na Attiny84Lampki LED na choinkę - wersja na Attiny84

    Rezystory i kondensatory ceramiczne w rozmiarze 0603, złącza w rastrze 2,54mm.

    Co prawda płytki są mało fotogeniczne (podlegały procesowi dojrzewania już po pierwszym montażu :-) ), ale może coś tam sfotografuję. Zamieszczę też .hex, a dla chętnych niezbyt zaawansowane źródełka w C (do ew. wychuchania przez magików od AVR C).

    Celem zamieszczenia tego projektu jest oddanie wszystkim chętnym prostej i stosunkowo elastycznej (a więc i inteligentnej) modułowej platformy, na której możemy co roku pokazywać nowe efekty. Ja mam w planie na następne święta zrobić sprzętowe rozjaśnianie/ściemnianie poszczególnych kanałów. Na razie nie wykorzystywałem też klawisza, ale jak wiadomo - będzie on służył do wyboru programu.

    Na dzisiaj układ działa, lampki się "grzeją" od kilku godzin. Jeszcze nie mam obudowy, ale to akurat najmniejszy kłopot. Oczywiście można użyć innego mikrokontrolera, ja wykorzystałem to, co akurat miałem w szufladzie. Pozdrawiam!


    Fajne!
  • #2 20 Gru 2017 09:30
    h3c4
    Poziom 13  

    W dobie WS2812b nie trzeba już zbytnio kombinować żeby osiągnąć świetne efekty.

  • #3 20 Gru 2017 10:12
    22053
    Użytkownik usunął konto  
  • #4 20 Gru 2017 10:54
    Zubiik
    Poziom 11  

    R-MIK napisał:
    No tak nie do końca. Na AVR, w czasie transmisji do WS2812, na przerwaniach (usart/spi) obciążenie procka jest na poziomie 80..90% (zależnie od Fclk), "tachlując" GPIO 100% bez względu na Fclk. Liczenie bardziej skomplikowanych efektów w czasie rzeczywistym jest problematyczne, al jeśli jeszcze ktoś ma ochotę używac w tym czasie USART (np sterowanie przez Wi-Fi czy BT) to zaczyna sie niezła jazda (ale po "gimnastyce" da się zrobic wystarczy zobaczyć kilka moich projektów z WS2812 na AVR).
    Nie zgodzę się, wystarczy popatrzeć na magic matrix mirka kardasia http://mirekk36.blogspot.com/2017/08/magic-matrix-czas-start.html , uart, i2c, adc, timery i pewnie jeszcze kilka innych bajerów które są obsługiwane w przerwaniach.

  • #5 20 Gru 2017 11:16
    22053
    Użytkownik usunął konto