Przejrzałem dwie metody, a multipleksowanie wydaje się mieć tylko jedną zaletę, że łatwiej byłoby wyśledzić uszkodzoną diodę LED niż w tablicy Charlieplex.
Czy ktoś bardziej kompetentny może wyjaśnić inne kompromisy?
źródło
Przejrzałem dwie metody, a multipleksowanie wydaje się mieć tylko jedną zaletę, że łatwiej byłoby wyśledzić uszkodzoną diodę LED niż w tablicy Charlieplex.
Czy ktoś bardziej kompetentny może wyjaśnić inne kompromisy?
Tak, multipleksowanie i charlieplexowanie mają swoje zalety i najlepiej nadają się do różnych zadań.
Główną zaletą charlieplexowania jest to, że można tego dokonać na średnim mikrokontrolerze, napędzającym więcej diod LED za pomocą mniejszej liczby pinów I / O i potencjalnie bez zewnętrznego sprzętu poza diodami LED.
Teraz zaleta „braku zewnętrznego sprzętu” dotyczy tylko stosunkowo niewielkiej liczby diod LED, aż do osiągnięcia aktualnego limitu mikrokontrolera, i narzuca limit jasności, którego nie mają tablice multipleksowane. Jeśli zdecydujesz się nie używać zewnętrznego sprzętu, generalnie jesteś ograniczony do napędzania tylko jednej diody LED w matrycy w danym momencie - w przeciwieństwie do multipleksowanej tablicy, w której prowadzisz jednocześnie cały rząd.
Po dodaniu zewnętrznego sprzętu do napędzania diod LED o wyższej jasności, aby dopasować je do multipleksowanej matrycy, charlieplexing traci swój blask.
Po pierwsze, tablica multipleksowana jest adresowana ściśle według wierszy i kolumn; bardzo łatwo to zrobić. Włącz wiersz 1, włącz wszystkie kolumny dla wiersza 1, wyłącz wiersz 2, włącz wszystkie kolumny dla wiersza 2 i tak dalej. Z kolei tablica z charlieplexem jest znacznie mniej prosta. Zawsze jest niepotrzebny wiersz po przekątnej, a ja osobiście używam tabel przeglądowych, aby odnosić się między moimi tablicami a prostokątną tablicą, w której przechowuję moje dane.
Po drugie, zabójcą jest to, że charlieplexowanie zwykle wymaga sterowników trójstanowych. Multipleksowanie odbywa się jednak przy ścisłej logice binarnej włączania i wyłączania. Jeśli masz mikrokontroler o niskiej liczbie pinów i chcesz sterować dużą liczbą diod LED, łatwo jest użyć zewnętrznych układów logicznych (np. Rejestru przesuwnego i / lub sterowników LED) do sterowania osiami X i Y. Większość układów typu rejestr przesuwny nie obsługuje tristatingu niezbędnego do zrobienia tego samego w tablicy z charlieplexem. Dostępne są dedykowane sterowniki charlieplexed, ale nie są one tak wszechstronne.
Po trzecie, w tablicy z charlieplexem każdy pin, który nie robi czegoś aktywnie, jest nadal podłączony do diod LED poprzez słabe połączenie („wysokiej impedancji”). I chociaż połączenie jest słabe, jest niezerowe. Załóżmy, że masz 25 styków we / wy podłączonych do siatki diod LED. Jeśli zaświecisz jedną diodę LED - biorąc jedną z tych 25 linii wysoko, a jedną z tych 25 linii nisko, pozostawia to 23 linie o wysokiej impedancji. W każdym miejscu, w którym linia wysokiego we / wy przechodzi przez diodę LED do linii neutralnej, istnieje pewna możliwość upływu prądu. Niewiele. Może mikroamp tu czy tam. Ale w przypadku nowoczesnych, wydajnych diod LED wystarcza to często, aby stworzyć widoczne duchy.
Po czwarte, trudniej jest kontrolować jasność diod LED w charakterystycznym układzie tablic. W multipleksowanym układzie można użyć dowolnej liczby powszechnie dostępnych „opadających” układów LED regulujących prąd, które regulują jasność każdej kolumny osobno, poprzez zastosowanie regulacji prądu w połączeniu ze sterownikiem PWM. W zakresie, w jakim lokalizacje matrycy z charlieplexem są adresowane indywidualnie i używają tylko rezystora na wiersz lub kolumnę, znacznie trudniej jest wykonać korekcję jasności kropki i pełną animację skali szarości / koloru w tablicy charlieplexx.
Najbardziej znaczącą wadą świateł „Charlieplexing” jest to, że ogranicza liczbę diod LED, którymi można sterować za pomocą multipleksowania „n” w trybie do n (n-1). Nie uważam, aby wymóg dotyczący sterowników trójstanowych stanowił duży problem w całej technice. Z pewnością konieczność użycia dwóch konwencjonalnych sterowników zamiast sterownika trójstanowego zmniejszy korzyść z CharliePlexing, ale w niektórych przypadkach nadal mogą pozostać zalety (np. Może zmniejszyć liczbę przewodów połączeniowych między panelem ze sterownikami a panelem z światła lub przełączniki).
Jeśli chodzi o przełączniki Charlieplexing, artykuł w Wikipedii nie wspomina o największej wadzie: Charlieplexing nie pozwala biernemu sterownikowi czekać na naciśnięcie przycisku. Z drugiej strony jest to zbyt pesymistyczne co do wymagań dotyczących komponentów. W 1997 r. Wyprodukowałem urządzenie, które skanuje osiem przycisków za pomocą trzech styków we / wy i jednego styku tylko wejściowego na PIC12C508, bez potrzeby stosowania zewnętrznych diod lub innych elementów oprócz IIRC podciągania dla styku PIC, który nie mieć jeden wbudowany; podejście mogło obsłużyć dziesięć przycisków z dodatkowym rezystorem podciągającym (dla innego styku we / wy, który nie miał takiego), ale klient potrzebuje tylko ośmiu przycisków, więc nie było takiej potrzeby.
źródło