Jeejej, to bude MUXů
Když se zamyslíš nad tím, co řešíš, tak vlastně adresuješ jednotlivou LED ve 2D poli, tj. pro pole 64x64 se v podstatě jedná o dekodér 1 z 4096. Představ si, jako bys adresoval jednobitovou paměť. Podle toho, že víš, co je HCT138 a programuješ PICy, tak Ti určitě pojem adresní dekodér není cizí.
Jak to udělat prakticky:
Předpokládejme tedy čtvercovou matici 64x64, tj. 6bitů řádek, stejně tak 6bitů sloupec. Řádkový a sloupcový dekodér bude tedy stejný.
Pokud máme postavit z HCT138 dekodér 1 ze 64, složíme těch 64 bitů z osmi HCT138, přičemž každá 138 budí svoji osmici signálů, tj. dekóduje nejnižší 3bity řádkové/sloupcové adresy na jeden z osmi. Ještě jednou pro ujasnění, nejnižší 3 bity adresy jsou rozvedeny PARALELNĚ jako vstupy do všech osmi dekodérů. Máme tedy správně dekódované nižší 3 bity, s tím, že bychom potřebovali vybrat, která osmice má být aktivní, což určují vyšší 3 bity adresy. No, dekódovat 3 na 8 umíme, od toho je tu 138, takže vezmeme JEDNU 138, do ní zavedeme vyšší tři bity adresy a výstupy té "nadřazené" 138 budeme aktivovat vždy právě jednu z těch "podřízených. To uděláme tak, že každá podřízená 138 bude mít G1 a G2A v log. 1 a do jejího vstupu G2B je zaveden jeden z výstupů nadřazené 138. G2A a G2B se dá samozřejmě zaměnit, viz katalogový list.
Nevím, jestli jsem to vysvětlil pochopitelně, za zašmodrchání se omlouvám. Když to nepobereš ani po chvíli usilovného přemýšlení, tak to asi znamená, že jsem někde něco zvoral
Jinak, routování téhle desky Ti nezávidím...