Multiplexní řízení sedmisegmentovek pro 8051 – Assembler – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Multiplexní řízení sedmisegmentovek pro 8051 – Assembler – Fórum – Programujte.comMultiplexní řízení sedmisegmentovek pro 8051 – Assembler – Fórum – Programujte.com

 

6. 6. 2023   #1
-
0
-

Ahoj, začal jsem se ve volných chvílích učit s assemblerem. Narazil jsem na nějaké školní stránce na různá zadání. To jedno, které mě zaujalo bylo multiplexní řízení sedmisegmentovek s čítačem/časovačem. Nevíte si někdo rady? Díky.

Nahlásit jako SPAM
IP: 37.48.50.–
6. 6. 2023   #2
-
0
-

#1 matysek123456

Ahoj, začal jsem se ve volných chvílích učit s assemblerem. Narazil jsem na nějaké školní stránce na různá zadání. To jedno, které mě zaujalo bylo multiplexní řízení sedmisegmentovek s čítačem/časovačem. Nevíte si někdo rady? Díky.

Připojen obrázek.

Nahlásit jako SPAM
IP: 37.48.50.–
remmidemmi0
Věrný člen
6. 6. 2023   #3
-
0
-

Matýsku,

a víš jak multiplex funguje? V prvé řadě musíš zjistit, zda máš displeje se společnou anodou nebo katodou, anebo, zda se spínají log. 1 nebo log. nulou.  Dejme tomu, že se mají spínat log.nulami společné katody a do segmentů (anod) pouštíš log. 1 - viz obrázek z tvého simulátoru. Když vyjdu z tvého obrázku, máš 4 místa, která budeš kroutit pořád dokola

Podstata programu je v tom, že uděláš cyklus 4 a v každém cyklu aktivuješ log. 1 současně napájení číslovky a současně budič 7-segmentů. Jde o to, jak máš vyřešena data do číslovky. Řešení je dost. Například data do číslovky může posílat rovnou port 8051. V tom případě přistavíš data do portu pro číslovku 1 a zapneš tranzistor který spíná napájení číslovky. Počkáš okamžik. pak vypneš tranzistor, který pouští proud do číslovky 1. Nastavíš data pro číslovku 2 a zapneš proud do číslovky 2. Počkáš okamžik. pak vypneš tranzistor, který pouští proud do číslovky 2. Nastavíš data pro číslovku 3 a zapneš proud do číslovky 3. Počkáš okamžik. pak vypneš tranzistor, který pouští proud do číslovky 3. Nastavíš data pro číslovku 4 a zapneš proud do číslovky 4. Počkáš okamžik. pak vypneš tranzistor, který pouští proud do číslovky 4. Nastavíš data pro číslovku 1 a zapneš proud do číslovky 1.  A tak pořád dokolečka.

Nedostatek toho je, že MCU se baví jen multiplexováním displeje. Přitom tuto činnost zvládne několik TTL obvodů v ceně několika (méně než 10) Kč. Stačí je koupit v bazaru tak dohromady za Kč 50, pospojovat a máš multiplexovaný displej bez 8051 a bez programování.

Rychlost cyklu ať již softwarového s 8051 nebo hardwarového s čítačem by měla být při 4 číslovkách tak 120 Hz až 160 Hz. Jde o to, že když bude cyklus pomalý, budeš vidět blikání číslovek. A když bude cyklus moc rychlý, budou číslovky málo svítit, budeš muset snížit hodnoty odporů pro segmenty aby jimi tekl větší proud, což také není dobré (výsledkem je namáhání LED diod v segmentech a větší rušení ze zdroje)

Nahlásit jako SPAM
IP: 89.24.42.–
remmidemmi0
Věrný člen
6. 6. 2023   #4
-
0
-

Ještě takovová obecná poznámka. Týká se výuky... Matýsek (nic proti jeho dotazu a nic ve zlým Matýsku    ), ale právě toto je exemplární příklad chybné výuky v Česku. Prostě, začíná se úplně " od konce".  Správný postup výuky programování od začátku je následující.

  1. naučit se znát hardware, tedy to co chceme programovat. V daném případě je nutná znalost logických obvodů. Je potřerba vzít si katalogové listy a probrat a naučit se nazpaměť funkce obvodů od 7400 až někam k 74573. To je absolutní základ. Je to stejné, jak když chcete být překladatelem, z nějakého jazyka. Také se musíte naučit slovíčka a mluvnici a nemůžete hned začít překládat bez znalosti jazyka.
  2. je potřeba se naučit, jak se obvody sestavují, jak se spojují, jak se z nich vytvoří multiplex displeje.  V tomto případě postačí koupit si pár obvodů, např. 2 tranzistory, 4 odpory, 2 kondenzátory, z kterých si uděláte oscilátor, k tomu  posuvný registr nebo čítač s dekodérem , dále budič LED , 7 odporů a LED displej. To si sestavíte na napájivém poli a vyzkoušíte jak to funguje. Budete pozorovat, jak se postupně rozsvěcují jednotlivé číslovky, jak změnou hodnot kondenzátoru nebo odporu se mění čas svícení a jas segmentů LED displeje.
  3. když pochopíte činnost multiplexu, nakreslíte si vývojový diagram, tedy PROGRAM a rozhodnete se, co z těch součástek, logických obvodů, nahradíte mikropočítačem nebo mikroprocesorem.
  4. v posledním kroku už zbývá váš PROGRAM tedy vývojový diagram zakódovat nějakým jazykem nebo assemblerem do binárního tvaru pro mikroprocesor nebo mikropočítač. Můžete váš program, vývojový diagram, také popsat jazykem Verilog a místo do mikropočítače jej zapsat do CPLD , třeba Xilinx 9536.

Pak budete umět programovat.

Nahlásit jako SPAM
IP: 89.24.42.–
Jerry
~ Anonymní uživatel
512 příspěvků
6. 6. 2023   #5
-
0
-

zas nějakej důchodce co se nudí ... radši bych si pořídil psa .. co třeba německá doga ? Nebo velkýho papoucha ....

Nahlásit jako SPAM
IP: 195.250.132.–
remmidemmi0
Věrný člen
6. 6. 2023   #6
-
0
-

#5 Jerry
hele Žeryku, pořid si nepájivé pole, sadu drátků, zaběhni do tvého oblíbeného elektrošopu, kup si několik TTL obvodů a zbastli si doma multiplexer. Na této stránce máš kompletní návod a popis:

http://www.jplabs.co.uk/edu/bh112.html

aspoň se něco kloudného naučíš.   A až tohle zmákneš a bude ti to jasný, pak přemýšlej, jak ty obvody popsat Verilogem do CPLD nebo zmikropočítačovat.
 

Nahlásit jako SPAM
IP: 89.24.42.–
MilanL+1
Grafoman
7. 6. 2023   #7
-
0
-

#6 remmidemmi
Myslím, že Jerry reagoval spíš na Matýska.

Nahlásit jako SPAM
IP: 91.139.9.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 107 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý