-
11. Data: 2018-02-08 12:46:00
Temat: Re: Multiplekser przełączający grupę linii
Od: Dariusz Dorochowicz <dadoro@_wp_._com_>
W dniu 2018-02-08 o 12:30, Atlantis pisze:
> Nie. Pomysł jest taki, żeby mieć jeden 74141 i multipleksować
> poszczególne lampy. Na wejścia 74141 podawałbym przez ten multiplekser
> (zestaw multiplekserów) kolejne półbajty trzymane w rejestrach
> przesuwnych na wejściu. Osobny układ zapalałby kolejne lampy. Myślę też,
> że konieczne byłoby zastosowanie jakiegoś licznika i komparatora, który
> w pewnym momencie gasiłby lampę (coś w rodzaju PWM, celem uniknięcia
> efektu "duszków"). Jeszcze tego dokładnie nie rozrysowałem, mam tylko
> ogólny pomysł.
To sobie zrób multipleksowanie na drucie - potrzebujesz do tego rejestry
z 3-stanowym wyjściem.
Pozdrawiam
DD
-
12. Data: 2018-02-08 12:55:28
Temat: Re: Multiplekser przełączający grupę linii
Od: "J.F." <j...@p...onet.pl>
Użytkownik "Atlantis" napisał w wiadomości grup
dyskusyjnych:5a7c34e4$0$570$6...@n...neostrada.
pl...
On 08.02.2018 10:48, J.F. wrote:
>> Chcesz multipleksowac wyswietlacze i dac jeden 74141 ?
>> To po co tak - MCU sie pieknie wyrobi z obsluga kolejnych cyfr,
>> potrzebujesz tylko wyprowadzic dane
>Wiem, że większość MCU spokojnie się wyrobi. Już tego próbowałem z
>AVR-ami. Ale już na przykład w przypadku takiego ESP8266 tak dobrze
>nie
>jest. Użytkownik ma do dyspozycji tylko jeden hardware'owy timer
>(timery
>programowe dostępne w SDK nie nadają się do multipleksowania
>wyświetlacza) a pinów jest za mało. Z poziomu funkcji obsługi
>przerwania
>od timera nie da się wykonać transmisji I2C (za mało czasu, zadziała
>watchdog)
Nie wiem jakie tam ograniczenia, ale I2C nie jest sprzetowe ?
IMO - wystarczyloby jeden bajt wyslac.
A jak nie, to jest masa szybszych rejestrow.
>To ja już wolę sobie zbudować (czy to fizycznie, czy w CPLD/FPGA)
>jakiś
>hardware, który zajmie się sama obsługą wyświetlaczy. Wiem, że to
>trochę
>sztuka dla sztuki i równie dobrze mógłbym to zrobić na dodatkowym
>mikrokontrolerze, ale to ma być projekt edukacyjny. Programować MCU
>już
>jako-tako umiem, a z elektroniki cyfrowej chciałbym sobie zrobić
>powtórkę.
No niestety - ekonomia przemawia za dodatkowym MCU ... ale mozna
doliczyc zdobyte kwalifikacje :-)
>> Takie duze to raczej niepopularne, wiec zostaje dac 4 multipleksery
>> 1-bitowe 8-mio wejsciowe (74153 o ile mnie skleroza nie myli)
>To był właśnie mój oryginalny pomysł. Liczyłem po prostu na to, że
>może
>istnieje coś takiego w jednym scalaku.
8*4+4 = 40 nog, moze i jest, ale malo popularne.
>> -to jest fajny projekt edukacyjny do FPGA czy CPLD, mozna
>> pocwiczyc. A
>> jesli to ma byc zwykly zegar, to moze nawet MCU wyeliminowac.
>Właśnie zależy mi na synchronizacji z NTP. :)
Zdecydowanie zachecam do zrobienia tego w MCU/FPGA/CPLD, bo inaczej
... duzo scalakow, a zysku edukacyjnego zadnego.
Mozesz sie przymierzyc do CPLD czysto teoretycznie ... sie okaze, ze
sie nie da zrobic, bo zasobow zabraknie, to tez sie czegos nauczysz
:-)
Ewentualnie, ten tego ... podlaczyc ekran AMOLED i zaprogramowac kolor
i wyglad nixie :-)
J.
-
13. Data: 2018-02-08 13:01:09
Temat: Re: Multiplekser przełączający grupę linii
Od: Mario <M...@...pl>
W dniu 08.02.2018 o 08:39, Atlantis pisze:
> Tradycyjną elektroniką cyfrową bawiłem się tylko przez chwilę. Robiłem
> jakieś prostsze projekty (a raczej ćwiczenia), a potem przerzuciłem się
> na mikrokontrolery. Teraz jednak chciałbym wrócić do tego - głównie przy
> okazji FPGA, ale również bawiąc się w fizyczne konstruowanie czegoś ze
> scalaków.
>
> Preferuję zdobywanie umiejętności przez realizowanie konkretnego,
> użytecznego projektu. W chwili obecnej chodzi mi po głowie sklecenie
> sterownika do wyświetlaczy nixie, który załatwiałby multipleksowanie
> poszczególnych wiświetlaczy (z wygaszaniem przed zapaleniem kolejnej
> cyfry), a dane otrzymywał z MCU szeregowo.
>
> Na wejściu znajdowałby się więc zespół rejestrów przesuwnych z
> zatrzaskiem. W rejestrach trzymane byłyby po dwa półbajty BCD,
> przekazywane sekwencyjnie na wejście 74141. Potrzebny mi tutaj będzie
> jakiś multiplekser.
>
> I teraz pierwsze pytanie, jakie mi się nasuwa. Istnieje jakiś układ
> scalony będący zespołem multiplekserów zdolnych przełączać zespół
> czterech wejść pomiędzy (co najmniej sześcioma) zespołami wyjść?
> Czy też jedyną opcją będzie wyrzeźbienie sobie tego z pojedynczych
> multiplekserów?
>
Zrób to na FPGA. Kod na multiplekser do wyświetlaczy jest chyba w co
drugim podręczniku do programowania FPGA.
--
pozdrawiam
MD
-
14. Data: 2018-02-08 13:06:19
Temat: Re: Multiplekser przełączający grupę linii
Od: "J.F." <j...@p...onet.pl>
Użytkownik "Dariusz Dorochowicz" napisał w wiadomości grup
dyskusyjnych:5a7c3875$0$577$6...@n...neostrada.
pl...
W dniu 2018-02-08 o 12:30, Atlantis pisze:
>> Nie. Pomysł jest taki, żeby mieć jeden 74141 i multipleksować
>> poszczególne lampy. Na wejścia 74141 podawałbym przez ten
>> multiplekser
>> (zestaw multiplekserów) kolejne półbajty trzymane w rejestrach
>> przesuwnych na wejściu. Osobny układ zapalałby kolejne lampy. Myślę
>> też,
>> że konieczne byłoby zastosowanie jakiegoś licznika i komparatora,
>> który
>> w pewnym momencie gasiłby lampę (coś w rodzaju PWM, celem
>> uniknięcia
>> efektu "duszków"). Jeszcze tego dokładnie nie rozrysowałem, mam
>> tylko
>> ogólny pomysł.
>To sobie zrób multipleksowanie na drucie - potrzebujesz do tego
>rejestry
>z 3-stanowym wyjściem.
Mozna, ale jak znajdzie rejestry przesuwne ze sterowaniem OE na
wyjsciach po 4 bity, to wyjdzie zgrabnie.
Jak nie znajdzie i trzeba bedzie dodatkowe bufory ... to zdecydowanie
jest projekt na CPLD/FPGA.
Oczywiscie ktos juz na to wpadl
https://www.markbowers.org/nixie-clock-2012/
https://www.youtube.com/watch?v=Fb0DH3laBFE
https://www.elektormagazine.com/labs/fpga-clock-stan
dalone-dcf77-or-better-wireless-gps-nmea-433mhz-or-b
oth
J.
-
15. Data: 2018-02-08 13:23:00
Temat: Re: Multiplekser przełączający grupę linii
Od: Atlantis <m...@w...pl>
On 08.02.2018 12:55, J.F. wrote:
> Nie wiem jakie tam ograniczenia, ale I2C nie jest sprzetowe ?
> IMO - wystarczyloby jeden bajt wyslac.
> A jak nie, to jest masa szybszych rejestrow.
ESP8266 nie ma sprzętowego I2C. Ten moduł jest dość ubogi, jeśli chodzi
o peryferia. Lepiej to wygląda w nowej wersji - ESP32.
> Mozesz sie przymierzyc do CPLD czysto teoretycznie ... sie okaze, ze sie
> nie da zrobic, bo zasobow zabraknie, to tez sie czegos nauczysz :-)
Jak duże projekty w takim razie można zmieścić w CPLD? Załóżmy, że mowa
o czymś w rodzaju XC9572XLVQ64. Rozumiem, że te układy mogą się nie
nadawać do odtworzenia Z80, SID-a z Commodore 64 albo zaprojektowania
własnego MCU. Jednak tutaj mowa o (relatywnie prostym) sterowniku, który
robiony na płytce mógłby się zmieścić w kilku-kilkunastu scalakach.
Faktycznie CPLD mają aż tak skromne zasoby?
-
16. Data: 2018-02-08 13:28:30
Temat: Re: Multiplekser przełączający grupę linii
Od: Dariusz Dorochowicz <dadoro@_wp_._com_>
W dniu 2018-02-08 o 13:06, J.F. pisze:
> Użytkownik "Dariusz Dorochowicz" napisał w wiadomości grup
> dyskusyjnych:5a7c3875$0$577$6...@n...neostrada.
pl...
> W dniu 2018-02-08 o 12:30, Atlantis pisze:
>>> Nie. Pomysł jest taki, żeby mieć jeden 74141 i multipleksować
>>> poszczególne lampy. Na wejścia 74141 podawałbym przez ten multiplekser
>>> (zestaw multiplekserów) kolejne półbajty trzymane w rejestrach
>>> przesuwnych na wejściu. Osobny układ zapalałby kolejne lampy. Myślę też,
>>> że konieczne byłoby zastosowanie jakiegoś licznika i komparatora, który
>>> w pewnym momencie gasiłby lampę (coś w rodzaju PWM, celem uniknięcia
>>> efektu "duszków"). Jeszcze tego dokładnie nie rozrysowałem, mam tylko
>>> ogólny pomysł.
>
>> To sobie zrób multipleksowanie na drucie - potrzebujesz do tego rejestry
>> z 3-stanowym wyjściem.
>
> Mozna, ale jak znajdzie rejestry przesuwne ze sterowaniem OE na
> wyjsciach po 4 bity, to wyjdzie zgrabnie.
> Jak nie znajdzie i trzeba bedzie dodatkowe bufory ... to zdecydowanie
> jest projekt na CPLD/FPGA.
Ba. Można np dodać poczwórny muultiplekser - coś tam jest gotowego. To
znacznie mniej niż multipleksowanie wszystkiego i proste do zrobienia.
Pozdrawiam
DD
-
17. Data: 2018-02-08 14:57:29
Temat: Re: Multiplekser przełączający grupę linii
Od: "J.F." <j...@p...onet.pl>
Użytkownik "Atlantis" napisał w wiadomości grup
dyskusyjnych:5a7c4125$0$556$6...@n...neostrada.
pl...
On 08.02.2018 12:55, J.F. wrote:
>> Nie wiem jakie tam ograniczenia, ale I2C nie jest sprzetowe ?
>> IMO - wystarczyloby jeden bajt wyslac.
>> A jak nie, to jest masa szybszych rejestrow.
>ESP8266 nie ma sprzętowego I2C. Ten moduł jest dość ubogi, jeśli
>chodzi
>o peryferia. Lepiej to wygląda w nowej wersji - ESP32.
To moze i lepiej - bedzie mozna uzyc szybsze uklady :-)
Nie ma jakiegos portu szeregowego z zegarem ?
>> Mozesz sie przymierzyc do CPLD czysto teoretycznie ... sie okaze,
>> ze sie
>> nie da zrobic, bo zasobow zabraknie, to tez sie czegos nauczysz :-)
>Jak duże projekty w takim razie można zmieścić w CPLD? Załóżmy, że
>mowa
>o czymś w rodzaju XC9572XLVQ64. Rozumiem, że te układy mogą się nie
>nadawać do odtworzenia Z80, SID-a z Commodore 64 albo zaprojektowania
>własnego MCU. Jednak tutaj mowa o (relatywnie prostym) sterowniku,
>który
>robiony na płytce mógłby się zmieścić w kilku-kilkunastu scalakach.
>Faktycznie CPLD mają aż tak skromne zasoby?
Oni tego juz dawno nie robia, i przetrwaly tylko jakies szczatkowe
opisy
https://www.xilinx.com/support/documentation/applica
tion_notes/xapp112.pdf
Jest w ogole do tego jakis program, ktory jeszcze dziala ?
Jesli dobrze rozumiem, to potrzebujesz:
-24-bitowego rejestru przesuwajacego,
-24-bitowego rejestru buforowego,
-licznika multipleksujacego 6 cyfr ... 3 bity, a moze 6, jesli
wygodniej bedzie zrobic pierscieniowo,
-multipleksera ... ktory tu zajmie 4 makrocele ... jak dobrze pojdzie.
-licznika do odliczania roznych faz, zeby np najpierw wygasic, potem
zmienic, potem wyswietlic ... i dluzej wyswietlac niz sie zmienialo.
Powiedzmy ze 4 bity licznika.
wychodzi mi 62 rejestry, a ten uklad ma 72 ... moze starczyc.
Ale:
-ma je w 4 blokach po 18, same rejestry rozciagna sie na 4 bloki,
trzeba bedzie dzielic ... moze sie da, moze zabraknie.
-starczy PT (produkt term) i polaczen do realizacji wszystkich
funkcji, albo nie starczy.
-potrzebujesz 3 zegarow - jeden do danych z 8266, drugi przepisujacy
miedzy rejestrami, trzeci do multipleksowania.
Moze sie uda 2, jesli uzyjemy jeden z 8266 do obu funkcji.
Trzy zegary w tej kosci sa, plus mozliwosc indywidualnych. Powinno
starczyc.
Wiec na oko ... mniej wiecej wejdzie. Ale tylko na oko. I zajmie całą
kosc.
I stad rada - sprobowac zaprojektowac i zobaczyc czy wcisnie, czy
powie ze za malo zasobow :-)
Z80 to zdecydowanie na czyms innym :-)
W razie czego mozna pomyslec.
Chodzi po glowie, zeby np zrezygnowac z tego rejestru przesuwajacego,
zrobic licznik bitow wejsciowych, i w miare ich nadchodzenia zmieniac
tylko jeden bit w rejestrze buforowym. 5 bitow zamiast 24 ... z
ryzykiem, ze PT zabraknie :-)
J.
-
18. Data: 2018-02-09 08:35:13
Temat: Re: Multiplekser przełączający grupę linii
Od: Atlantis <m...@w...pl>
Ewentualnie myślę, czy wceśniej nie "potrenować" sobie na nieco
prostszym przykładzie - zegarku Nixie (po prostu wykonałbym
zmodyfikowaną wersję już istniejącego projektu). W zegarze poszczególne
cyfry są prezentowane na zespołach czterech LED-ów. Zespoły również są
multipleksowane. Założenie jest więc podobne (24 bitowy zespół rejestrów
przesuwnych na wejściu, dalej cztery multipleksery (po jednym na każdy
bit). Multiplekser byłby sterowany z licznika binarnego. Teraz
zastanawiam się jeszcze jak zrealizować sterowanie zapalaniem zespołów
kolejnych diod.
Czy istnieje może jakiś konwerter binarno-dekadowy, który na wejściu
brałby wartość binarną z licznika, ustalając stan wysoki na wskazanym
wyjściu? To pozwoliłoby mi także łatwo resetować licznik, bez potrzeby
stosowania komparatora - po prostu linia 6 resetowałaby licznik.
-
19. Data: 2018-02-09 09:01:10
Temat: Re: Multiplekser przełączający grupę linii
Od: Grzegorz Kurczyk <g...@c...usun.slupsk.pl>
W dniu 09.02.2018 o 08:35, Atlantis pisze:
> Czy istnieje może jakiś konwerter binarno-dekadowy, który na wejściu
> brałby wartość binarną z licznika, ustalając stan wysoki na wskazanym
> wyjściu? To pozwoliłoby mi także łatwo resetować licznik, bez potrzeby
> stosowania komparatora - po prostu linia 6 resetowałaby licznik.
>
Jest:-) z tą różnicą, że wystawia na wybranym wyjściu stan niski
(wyjście OC). Używasz już go do sterowania katod w Nixie ;-)
--
Pozdrawiam
Grzegorz
-
20. Data: 2018-02-09 09:07:49
Temat: Re: Multiplekser przełączający grupę linii
Od: Grzegorz Kurczyk <g...@c...usun.slupsk.pl>
W dniu 09.02.2018 o 08:35, Atlantis pisze:
> Czy istnieje może jakiś konwerter binarno-dekadowy, który na wejściu
> brałby wartość binarną z licznika, ustalając stan wysoki na wskazanym
> wyjściu? To pozwoliłoby mi także łatwo resetować licznik, bez potrzeby
> stosowania komparatora - po prostu linia 6 resetowałaby licznik.
>
do ilu ma zliczać ten licznik? Bo czasem w roli komparatora wystarczy
jedna bramka.
--
Pozdrawiam
Grzegorz