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.

Lampka RGB sterowana pilotem

Limonit 17 Paź 2008 12:51 10112 13
  • Witam.

    Chciałem pokazać swoją konstrukcję lampki z diodą RGB sterowaną pilotem RC5. Podobny projekt już się pojawił, ale zaczerpnąłem jedynie inspirację. Program i wykonanie są moje.
    Sercem lampy jest Tiny2313. Posiada 4 kanały PWM, więc spokojnie jest w stanie sterować trzema kolorami. Diody są zasilane bezposrednio z portów, które są wyjściami timerów. Schemat:
    Lampka RGB sterowana pilotem
    Czujnik podczerwieni to TFMS5360, który robi swoje.
    Calość jest zasilana z LM7805, maksymalnie pobiera 30mA, co może momentami minimalnie przeciążać porty TIny (przy PWM trudno to ocenić, postanowiłem sie nie przejmowac).
    Kilka zdjęć:
    Lampka RGB sterowana pilotem
    Lampka RGB sterowana pilotem
    Lampka RGB sterowana pilotem

    Całość zmontowana na płytce uniwersalnej. Zapakowana w pudełko od kasety magnetofonowej, jako klosz - świecznik. Koszt całośći to jakieś pewnie z 15zł.

    Kod napisany w C od podstaw. Nie pasowały mi dostępne porcedury dla RC5, albo uzywały timera, albo nie używały przerwań i cały czas detekcja była wykonywana w pętli. Moja funkcja wykonuje sie w przerwaniu zmiany stanu na pinie. Nie używa żadnych innych funkcji procesora, nie zalezy od taktowania procka. Wykorzystuje własność kodu Manchester (zmianan stanu w każdym bicie) do synchronizacji. Wada - jest pewna szansa utknięcia w procedurze przerwania, trzeba odblokowac naciskając jeszcze raz przycisk na pilocie.
    Co lampa potrafi:
    przyciski vol+-, prog-+, standby/mute służą do regulacji nasycenia każdej barwy. Czyli lampa swieci sobie stale zdefiniowanym kolorem
    przycisk 1 włącza program pulsowania biały/czarny. Przycisk 2 * program przejścia przez wszystkie kolory.
    4,5 - programy płynnej zmiany barwy zielony/cyan/niebieski oraz czerowny/zółty/zielony.
    i przyciski 7,8,9 program zmiany czerwony/fioletowy/niebieski w różnym tempie.
    0 wyłacza lampkę.
    Więcej się nie dało, komplilator pokazuje 99,9% miejsca w procesorze zajetego :)

    I jeszcze 2 filmy:

    film 1
    film 2


    Fajne!
  • #5 17 Paź 2008 21:58
    lucas_mcs
    Poziom 22  

    Witam. Czy mozesz umieścić kod C?
    Planuje zrobić to samo też na attiny2313
    Pozdrawiam

  • #6 18 Paź 2008 01:20
    Limonit
    Poziom 13  

    Kod załączam, ale powiedzmy, jest to wersja nie do końca dopracowana.
    Brakuje komentarzy,a w wielu miejscach aż się prosi o "wygładzenie". ale żeby skompilowac i wrzucić to ok. Zajmuje po skompilowaniu 2046 bajtów z 2048, jakie ma tiny2313 :) Wersja dostosowana do zegara 4MHz.

    Nastepna wersja będzie z jakims wzmacniaczem do diod, tutaj zrezygnowałem, żeby oszczędzić elementów i wielkości płytki. Ale uwaga jak najbardziej słuszna.

  • #7 22 Paź 2008 07:14
    maxikaaz86
    Poziom 10  

    Jakiego kompilatora używasz?

  • #9 22 Paź 2008 20:20
    maxikaaz86
    Poziom 10  

    Mógłbyś dodać link bo nigdzie nie umiem znaleźć programów.

    Dodano po 30 [minuty]:

    Mam problem z kompilacją.
    Oto początek programu:

    #include <util/delay.h>
    #include <avr/io.h>
    #include <avr/pgmspace.h>
    #include "global.h"
    #include <avr/interrupt.h>

    #include <util/delay.h>

    Po tej linijce pisze ,że jest błąd ,że nie potrafi znaleźć pliku.

    Dodano po 7 [minuty]:

    Mógłbyś wrzucić również plik *.hex.

  • #11 13 Gru 2009 20:43
    piotr153
    Poziom 13  

    Czy ten układ będzie działać z każdym pilotem dostępnym na rynku.

  • #12 14 Gru 2009 17:27
    lucas_mcs
    Poziom 22  

    Z każdym pilotem który obsługuje kody typu RC5.

  • #13 05 Cze 2010 20:35
    lucastg
    Poziom 13  

    Witam mam takie pytanie czy ktoś sprawdzał fizycznie czy ten gotowy wsad działa prawidłowo pod attiny 2313 , bo mam lekkie problemy fuse mam ustawione dobrze płytka tez polutowana prawidłowo pilot tez w standardzie RC5 odbiornik odbiera sygnały ale coś lampka nie działa

  • #14 04 Gru 2010 11:38
    bastek2202
    Poziom 2  

    Witam
    Na wstępie chciałem napisać że jestem hobbystą w tej dziedzinie więc proszę o wyrozumiałość.
    Zmontowałem układ lecz dioda świeci tylko na niebiesko momentami wplata się kolor zielony,jako odbiornik ir użyłem http://pdf1.alldatasheet.net/datasheet-pdf/view/252283/VISHAY/TSOP4136.html sprawdzałem też http://www.datasheetcatalog.org/datasheets/208/301092_DS.pdf i nadal to samo.
    Programowałem od razu plikiem *.hex.
    W projekcie jest TFMS5360 to znaczy że odbiornik musi mieć 60kHz ?
    Wersja dostosowana do zegara 4MHz.
    To znaczy że muszę zastosować kwarc?