Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

multiplex 32x32 LED v PICAXE
Jdi na stránku 1, 2, 3  Další
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: so únor 11 2017, 13:35    Předmět: multiplex 32x32 LED v PICAXE Citovat

Dobrý den,

Potřebuji poradit se softwarovou částí. Stavím obvod na obrázku. Počítač vyšle pomocí portu COM seriovou informaci o tom které diody v matici mají svítit a které nikoliv (zatím řešeno formou stringu '12,24,78' pro diody na pozici 12,24,78 atd. Tzn. skupina uvedených čísel rozsvítí diodu, zbývající jsou vždy zhasnuté).

Tuto informaci přijme PICAXE a převede ji na paralelní (2x 5bitů, řádky a sloupce), pro ušetření ostatních pinů jsem použil dekodéry 74154. Přičemž dva IO 74154 mají na výstupech invertory, protože aktivní výstup je v log. 0, invertorem jej převedu na log.1, předřadím rezistor a svícení LED uzavřu na zbývajících dvou 74154.

Komunikace bych rád řešil způsobem odeslaní číselné sestavy, která zůstane zapsána do příchodu nové. Budu-li tedy chtít rozsvítít 12 diodu, odešlu na COM číslo 12 a pokud nepošlu třeba hodinu žádnou novou, tak tu hodinu bude svítit LED na 12. pozici.

Poradí mi prosím kdokoliv, jak napsat software k PICAXE, který se bude starat o svícení LED v multiplexním zapojení, tedy tu část, která se stará o zobrazení.

Předem děkuji.



multiplex_gif.gif
 Komentář:

Stáhnout
 Soubor:  multiplex_gif.gif
 Velikost:  98.87 kB
 Staženo:  172 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3302

PříspěvekZaslal: ne únor 12 2017, 10:05    Předmět: Citovat

Ahoj, zajímalo by mě, kolik bys rád nechal v jeden okamžik svítit diod?

Teď nemyslím fakt, že vždy bude svítit v tomto zapojení jediná Smile, než to začne s multiplexováním.

K čemu ten displej chceš používat a co tě nutí použít zrovna 74154 ?

Já používám displej s 74138 s P-Mosfety zapojené přes diody proti 74595

Podobné zapojení je rozebráno na těchto stránkách .

Sériová adresace posuvných registrů by mi přišla i v tvém zadání jednodušší.

Zpracuje se požadavek na všechny svítivé diody, připraví se hodnota uložená do PEEK od adresy 80H (právě po celých osmicích).
Po uložení všech 128H se rozjedou dvě smyčky, které odebírají hodnoty v paměti, vyzvednou číslo rozdělí jej a vyšlou.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 19:10    Předmět: Citovat

Ahoj,

zapojení má být schopno rozsvítit všechny diody najednou( jeví se jako rozsvícené, multiplex jak jsi už napsal, to neumí).

Nejde uplně o displej, ale o místa křížení. Chystám do jedné expozice indikační panel výpravčího, ovšem kvuli místu nemužeme použít všechny původní releové stojany (1,7m šířka, 2m výška, relé většinou NMŠ), takže to co nemůžeme použít musí dohnat počítač. Indikační panel zatím obsahuje 467 žárovek, ale do budoucna se počítá se zvětšením (připojením sousední stanice), takže když už se ten obvod staví, tak rovnou na 1024 (32x32) bodů. Navíc i když jich použiju méně, stále by tam byl dekodér 74154, takže bez vlivu na cenu. V místě křížení (před LED) se vyvede vodič a tím se muže budit tranzistor v jehož kolektoru už bude jedna ze 467 žárovek. Tranzistorů KF 507 mám velikou zásobu.

Použít dekodér 74154 vede k ušetření pinů na mikrokontroléru PICAXE. Použiju jen 10 pinů (2x5 bitů pro řádky a sloupce). Ovšem pokud bys věděl jak vyřešit podobné zapojení pro alespon 1024 diod, netrvám na převodníku 74154. Jen mi přišel jako ideální řešení, jak ušetřit piny. A zbývající volné, ponechat pro pozdější využití. A k tomu dojde.

Seriové adresaci se nebráním, teoreticky tak mohu postavit nekonečně dlouhý displej (podle délky posuvného registru), ale přiznám že požádám o pomoc.

Díky a hezký večer.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lesana87



Založen: Sep 20, 2014
Příspěvky: 3330

PříspěvekZaslal: ne únor 12 2017, 19:17    Předmět: Citovat

Máš představu / zkoušel jsi jak svítí žárovka, když je 1T zapnutá a 1023T vypnutá? Běžně se používá multiplex tak 1:32, aby to ještě nějak svítilo.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 19:55    Předmět: Citovat

žárovku spínám z křížení, z něj vyvedu vodič do báze tranzistoru. Pokud je bázi kmitočet (on to není kmitočet sinus, ale střídání hran obdélníku) větší než 75Hz, tak žárovka již svítí dostatečně, vlivem tepelné setrvačnosti. Nejideálnější je pokud střída dosahuje 1:1.

Ovšem při vysoké obnovovací frekvenci (100Hz a více), kdy diodu na displeji již vidíme jako jasný svit, děje se to samé i na tranzistoru.

Toto zapojení jsem už zkoušel, sestavil jsem si AKO s proměnou frekvencí, nebyl problém se žárovkou s jejím svícením.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3302

PříspěvekZaslal: ne únor 12 2017, 19:56    Předmět: Citovat

Myslim, ze misto multiplexu by byly lepsi moduly propojene treba po RS485, kazdy treba s 32 vystupy.
Postupne volane ridicim MCU do "akce" Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 20:08    Předmět: Citovat

Přiznám se že RS 485 dost dobře nerozumím. Tady už mám vyřešenou část komunikace, kdy po serii COMem posílám data do PIC, akorát mám problém s obvodem a jejím zobrazením. RS 485 si ted hledám nějaké info na googlu.

Kolik by stál takový modul? Jde o to že v GME na Křižíkově v Praze koupím PICAXE 28 za 299kč a PICAXE 40 také za 299kč, kuprextit už mám, diody naletované taky (z dřívějších dob), takže nákup součástek už není tak finančně náročný. Pokud by cena modulů šla výrazně přes současný náklad (350kč), zní to blbě, ale chtěl bych se tomu vyhnout.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3302

PříspěvekZaslal: ne únor 12 2017, 20:12    Předmět: Citovat

Tak alespon misto multiplexu mit na tech mistech krizeni klopny obvod. Nejdriv vyresetovat vsechny krizeni a potom jednim vrzem nahazet do aktivace ty o ktere je zajem.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 20:22    Předmět: Citovat

To je pravda, ale to stejně neřeší to ohromné množství. Mě jde o tu softwarovou část, tedy jak by měl vypadat program, který se stará o výstupní piny.

A přestože jsem našel možnost přepínání řádku pomocí posuvného registru, tak bych narazil na problém, že musím posuvný registr dopočítat na začátek. Což je opět program v PICAXE.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Cowley



Založen: Feb 04, 2005
Příspěvky: 3302

PříspěvekZaslal: ne únor 12 2017, 20:35    Předmět: Citovat

Taky ted, jak jsou proti sobe 74154 neexistuje v jeden okamzik co se tyce aktivace LED v krizeni nikdy "klid".
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
lesana87



Založen: Sep 20, 2014
Příspěvky: 3330

PříspěvekZaslal: ne únor 12 2017, 21:04    Předmět: Citovat

Persink163054 napsal(a):
Nejideálnější je pokud střída dosahuje 1:1.
nebyl problém se žárovkou s jejím svícením.

No jo, ale při obsluze 1024 žárovek, kdy v jeden okamžik svítí jen jedna, máš střídu 1:1024 a to má do 1:1 krapet daleko.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 22:06    Předmět: Citovat

Cowley:
Teoreticky ne. Ale pokud by nastala situace že svítím jednou diodou, stačí
mi zapsat řádek a sloupec a ten nechat cyklit. Tím bude svítit jen ta jedna. Problém nastává v okamžiku kdy jich chci rozsvítit více. Buď budu muset udělat dynamické pole, které bude se bude zvětšovat a zmenšovat podle počtu kolik jich má svítit. Nebo projet celou řadu, což ale znamená zdržovat se těma co se nemění stav.

Lesana:
V okamžiku kdy mi na celém displeji svítí jen jedna dioda (ve skutečnosti kmitá, ale natolik rychle že oko ji vidí jako svítící) a z ní si beru signál do popsané báze tranzistoru, tak už tu střídu tolik neřeším, protože tranzistor se otevíráa zavírá natolik rychle, že to stačí k rozsvícení vlákna žárovky. A pokud jich bude svítit třeba 256 najednou (uvidíme rozsvícený obdélník), bude situace stejná. Protože mě zajímá jen to konkrétní křížení. Samozřejmě pokud se na křížení dostane střída 1:10, tak dioda buď sníží jas, nebo při nízké frekvenci bude blikat. A to se projeví i na tranzistoru a následně na žárovce v jeho kolektoru.

V tomhle zapojení spatřuji velkou výhodu přesné adresace řádku a sloupce. Pokud bych použil posuvný registr na řádky, pak když budu svítit na 3. řádku a vzápětí na 2.řádku, tak budu muset projet posuvný registr tolikrát, než dosáhnu 2.řádku, což mi přijde zbytečné (situace kdy mezi nima žádné řádky nesvítí). Zde si napíšu který řádek a který sloupec rozsvítit a mohu tak vynechat ty které nechci změnit. Ovšem to je to co nevím jak napsat do kodu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
masar



Založen: Dec 03, 2005
Příspěvky: 12521

PříspěvekZaslal: ne únor 12 2017, 23:27    Předmět: Citovat

citace:
Máš představu / zkoušel jsi jak svítí žárovka, když je 1T zapnutá a 1023T vypnutá?....
Nejideálnější je pokud střída dosahuje 1:1.
nebyl problém se žárovkou s jejím svícením...
No jo, ale při obsluze 1024 žárovek, kdy v jeden okamžik svítí jen jedna, máš střídu 1:1024 a to má do 1:1 krapet daleko...
V okamžiku kdy mi na celém displeji svítí jen jedna dioda (ve skutečnosti kmitá, ale natolik rychle že oko ji vidí jako svítící)...
..........
Ona mi pořád říká, kdy to hrajou a já … Confused


Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Persink163054



Založen: Oct 05, 2011
Příspěvky: 29

PříspěvekZaslal: ne únor 12 2017, 23:54    Předmět: Citovat

masar:
No příspěvek je velice zajímavý, ale nevím na co narážíš. Možná by stálo za to, místo kravin, napsat kde konkrétně dělám chybu.

Takže já to řeknu jinak. Máme menší displej 8x8, na kterém svítí znak . (tečka) a to v podobě jedné diody. Pokud si z ní vezmu signál a přivedu jej do báze tranzistoru zapojení SE a v jeho kolektoru budu mít žárovku, tak ta žárovka bude svítit. Protože ta tečka, i když bude multiplexována, svítí dostatečně dlouho aby tranzistor (který se otevírá a zavírá v multiplexu, protože si bere signál z křížení do báze) rozsvítil žárovku.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Jenda_KL



Založen: Sep 10, 2008
Příspěvky: 1173
Bydliště: Kadaň

PříspěvekZaslal: ne únor 12 2017, 23:57    Předmět: Citovat

Abys dosáhl rozsvícení všeho najednou, tak je potřeba použít nějaké osvědčené zapojení (mux 1:8 ), ne tohle.
Jak již bylo napsáno, vem nějaké posuvné registry (4094) a udělej to z nich. Jsou to 3 dráty z procesoru a při troše šikovnosti by tam ani nemusel být. Vlastní ovládání bude pak spočívat v poslání řádkových dat a výběru sloupce. To se zopakuje pro 8 sloupců a stále dokola.
Edit: nebo můžeš vzít kýbl těch 4094 a rovnou posílat sériákem těch 1024 stavů přímo na žárovky.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Jdi na stránku 1, 2, 3  Další
Strana 1 z 3

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.15 sekund