logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Projekt na ATMEGA 2560 DMX-recorder kilka pytań

seradam 08 Lut 2009 17:45 1917 3
REKLAMA
MediaMarkt Black Week
  • #1 6121796
    seradam
    Poziom 17  
    Robię urządzenie , które ma być pewnego rodzaju nagrywarką sygnału DMX. Sygnał DMX to specyficzna wersja transmisji szeregowej . Muszę odczytać 128 słów 8 bitowych i zapisać je w pamięci zewnętrznej. Na każdą sekwencję zakładam 8 kroków. Te słowa są wysyłane cały czas. Jeden taki ciąg znaków określa konkretną scenę. Chcę zapisywać po kolei takie sceny , przez naciśnięcie przycisku "zapisz". Po zapisaniu kilku scen , z ograniczeniem do 8 mam już "sekwencję". Zakładam możliwość zapisania 16 takich sekwencji. Wybór tych sekwencji mam zamiar zrobić na 16 przyciskach. Potrzebuję jeszcze funkcji "tempo" zmieniającej czas trwania scen. Tą funkcję mam zamiar zrobić na klawiszach UP DOWN.
    Jest jeszcze jedna funkcja to płynne przejścia między scenami. Zasadniczo powinna ona dotyczyć tylko wybranych kanałów np ruch luster skanerów.
    To tak w skrócie podstawowe funkcje mojego projektu.
    Teraz pytania i prośba o wskazówki.
    Po zaprogramowaniu scen i sekwencji mam klawisz "play", który włącza odtwarzanie wybranej sekwencji. Klawiszami UP DOWN reguluję tempo zmian scen.
    Zastanawiam się jak to najlepiej zrobić , żeby nie było przerw w wysyłaniu uartem . Uart musi cały czas nadawać .
    Jak najlepiej rozwiązać wieloklawiszową klawiaturę. Czy matrycowo i na przerwaniach da radę , czy łatwiej i lepiej do pinu.

    Kolejny dość ważny problem to jak podejść do sprawy przeliczania płynnego zmiany kilku kanałów. Tych kanałów będzie dość sporo bo ponad 20. I muszą być przeliczone do aktualnie wybranej wartości tempa.

    Wybrałem sobie duży procesor i wiele zewnętrznych przerwań , co by by nie zabrakło.
    A po każdej ramce składającej się z 512 znaków wysyłanych uartem jest przerwa, niewielka ale zawsze. Z racji że ja planuję wysyłanie tylko 1/4 tej ramki mam trochę więcej czasu na obliczenia itp. A teraz wymyśliłem, że cały proces odczytu klawiszy itp może się odbywać tylko po wysłaniu całego ciągu uartem, w przerwie między ramkami DMXa , co pewnie rozwiązuje problem przerwań.

    Proszę o sugestie i wnioski .....
  • REKLAMA
    MediaMarkt Black Week
  • #2 6123167
    Father
    Poziom 26  
    Czyli... ma to być nagrywarka DMX-a, która najpierw zczytuje sygnał, a potem działa jak sterownik, czy po prostu sterownik z możliwością programowania? Z opisu to jasno nie wynika....
  • REKLAMA
    MediaMarkt Black Week
  • #3 6123224
    Maciek4141
    Poziom 22  
    Osobiście czekam także na informacje w jaki sposób obsłużyć ten dmx.
    W jaki języku będziesz to pisał?
  • #4 6123447
    seradam
    Poziom 17  
    Ma to być nagrywarka , którą najpierw się programuje z pomocą innego sterownika dmx, a potem działa jako samodzielny sterownik.
    Programowanie jak dotąd u mnie to bascom. Może bym nawet napisał w innym , ale to nie jest zbyt skomplikowane programowo, a bascomowe komendy znacznie mi to ułatwią. Muszę zrobić płytkę i prototyp i dlatego szukam innego spojrzenia na problem niż moje. Ułatwi to wykrycie błędów przed ich wystąpieniem. Jak np czy warto podciągać zewnętrznie piny klawiszy rezystorem , czy wystarczająco skuteczne jest wewnętrzne podciąganie? Dodam , że popełniłem już kilka urządzeń na AVRach i mam codzienny kontakt z DMXem . Mam sterowniki DMXa sterowane z laptopa i sprzętowe. Mam też na czym sprawdzać poprawność nadawanego sygnału DMX. Trochę mi czasu brakuje , ale to inna sprawa.
REKLAMA