Raspberry Pi 49) Připojení čtyřnásobné sedmisegmentové zobrazovací jednotky Po delší době je tu další připojený displej k raspíčku.
Tentokrát se jedná o čtyřmístný displej, který je tvořený
sedmisegmentovkami. Schéma vnitřního zapojení displeje:
1) Popis multiplexování Ovládání displeje probíhá tak, že se velice rychle přepínají
společné elektrody jednotlivých zobrazovacích jednotek. - Všechny jednotky se zhasnou. Pokud má displej společné anody, tak to znamená, že se všechny tyto anody přes spínací tranzistory odpojí. - Všechny segmenty se nastaví tak, aby vytvořily tvar znaku zobrazeného
na první jednotce - V tomto stavu se na chvíli přivede na společnou anodu první jednotky +5V. To má za následek, že se první jednotka rozsvítí. - Po chvíli se tato první jednotka zhasne - tranzistor jí odpojí. - Všechny segmenty se nastaví tak, aby vytvořily tvar znaku zobrazeného
na druhé jednotce - Na společnou anodu druhé jednotky se přivede +5V, čímž se druhá jednotka rozsvítí ... ... stejným způsobem se pokračuje i se zbylými zobrazovacími
jednotkami.
Princip přepínání je dobře vidět na tomto zpomaleném videu: 2) Schéma
Pro ovládání jsem použil expander MCP23017, který pracuje s 5V napájením. Kvůli tomu je třeba doplnit převodník úrovní pro komunikační sběrnici I2C. Displej podle katalogového listu odebírá 20mA na
segment. Trochu problém nastává s celkovým proudem přes pin
Vdd. Podle katalogového listu expanderu smí ten proud být maximálně
125mA. 8 segmentů x 20mA = 160mA. A to už je moc. Proto je třeba proud jednotlivými segmenty trochu omezit odporem. Počítal jsem to takto: Protože v každém okamžiku svítí vždy jen jedna zobrazovací jednotka, stačí výpočet provádět jen pro tuto jednu sedmisegmentovku. Maximální proud pinem Vdd / 8 segmentů = 125 / 8 = 15mA na segment. Při napájecím napětí 5V a úbytkem napětí na segmentu (Uf = asi 2V) je třeba do série s každým segmentem vřadit odpor: Rseg = (5V - 2V ) / 0.015A = 200R. Pro jistotu jsem tam ten odpor dal skoro dvojnásobný (390R), takže jsem ten celkový proud přes pin Vdd omezil na bezpečných 60mA (to je asi 8mA na segment). I při tomto proudu je displej krásně čitelný. Spínací tranzistory si sice také vezmou do báze nějaký proud, ale vzhledem k tomu, že jsou to jen asi 3mA, tak je to zanedbatelné. Mimochodem, ty spínací tranzistory jsou tam proto, protože přes ně teče těch 60mA, a to by samotný expander (port GPB) nezvládnul.
3) Ukázkový program Program je zde: dis4x7.py 4) Video
|
úvodní strana webu AstroMiK.org |
|
poslední úprava stránky 1.3.2014 |