
Tento zobrazovač vznikl jako nástupce všech předchozích zobrazovačů pro velké displeje. Je zde použit výkonnější procesor, což umožnilo přidat další funkce a hlavně do budoucna možnost aktualizace firmwaru pomocí jednoduché aplikace. Nyní je možno se zobrazovačem komunikovat, měnit jeho konfiguraci pomocí příkazů a zároveň z něho vyčítat provozní data.
Technické specifikace
| Napájecí napětí | 12 V/DC |
|---|---|
| Odběr proudu | cca 200 mA, záleží na použitých diodách, maximum je 0,5 A |
| Komunikační rozhraní | UART konfigurovatelný AT příkazy, výchozí rychlost 19,2 kb/s |
| Zobrazované znaky | 16 znaků: NIC, 0-9, -, L, P, E, U. Platí pro základní verzi. |
| Počet adres | 16 v základní verzi |
| Řízení jasu | PWM |
| Konfigurace | AT příkazy a jumper spojky |
| Měření napětí | 5-15 V |
| Řízení teček | Samostatná tečka na zobrazovači a výstup pro dvojtečky |
Popis konstrukce
Jak už jsem psal v úvodu, jedná se o nástupce předchozích zobrazovačů pro velké displeje. Byla zachována zpětná kompatibilita s předchozími zobrazovači, takže je možno připojit velký displej sestavený z těchto zobrazovačů i ke starším konstrukcím. Na druhou stranu použití procesoru ATMEGA328P umožnilo značně rozšířit možnosti tohoto zobrazovače. Co se týká zapojení, to se příliš nezměnilo. Srdcem zapojení je procesor IC1, který komunikuje s okolím přes rozhraní UART vyvedené do konektoru X1. Zde je nutno upozornit, že zapojení tohoto konektoru bylo oproti předchozím verzím upraveno a není zpětně kompatibilní. Bylo změněno rozložení napájecích pinů tak, aby se omezila možnost poruchy vlivem špatně zapojeného konektoru a zároveň byla posílena proudová zatížitelnost celé sběrnice. Taktéž přibyl i kanál TX z procesoru pro obousměrnou komunikaci s nadřazenou aplikací. Obvod napájení byl doplněn o vratnou pojistku F1, jež by měla ochránit elektroniku při zkratu na připojeném zobrazovacím prvku, tedy LED diodách, LED páscích, LED zobrazovačích a podobně. Taktéž byla doplněna detekce napájecího napětí pomocí děliče tvořeného rezistory R15-R17. Drobné změny se dočkal i výkonový výstup pro řízení zobrazovacího prvku. Původní sedmiportový driver byl nahrazen osmíportovým US1. Řízení dvojteček bylo zachováno přes tranzistor Q4. Bylo však doplněno řízení jasu přes tranzistory Q2 a Q3, jež je realizováno pomocí PWM.
Protože většinu nastavení lze provádět AT příkazy, nebyl již nutný DipSwitch a místo něho byla zařazena jumper spojka JP2. Osazením této propojky je možno volit komunikační protokol. Pokud je osazena, používá se stará verze protokolu, jež je kompatibilní se staršími konstrukcemi a používá jednobajtový protokol. Pokud osazena není, je použit nový protokol.
Do konektoru ISP1 jsou přivedeny všechny signály potřebné pro programování procesoru. Zároveň je zde jeden pin pro volbu výchozího nastavení. Pokud se při startu zobrazovače uzemní vývod MOSI, nastaví se výchozí komunikační rychlost 19,2 kb/s. Konektor JP1 pak slouží pro připojení zobrazovacího prvku se společnou anodou.
Schéma zapojení

Osazovací plán

Schéma plošného spoje
Výkresy plošného spoje neuvádím, protože jde o spoj oboustranný s prokovenými otvory a jeho výroba z obrázkové dokumentace není možná. V dokumentaci na konci článku najdete kompletní projektovou dokumentaci pro program Eagle v7.7, odkud si následně můžete vyexportovat potřebná data.
Význam zapojení konektorů
| Konektor | Význam |
|---|---|
JP1-1 | Segment A |
JP1-2 | Segment B |
JP1-3 | Segment C |
JP1-4 | Segment D |
JP1-5 | Segment E |
JP1-6 | Segment F |
JP1-7 | Segment G |
JP1-8 | Segment DP |
JP1-9 | Ovládání dvojtečky : |
JP1-10 | Anoda zobrazovacího prvku |
JP2 osazen | Starý protokol bez AT příkazů, One-Byte |
JP2 neosazen | Nový protokol s AT příkazy, Multi-Byte |
ISP1-1 | MISO |
ISP1-2 | VCC +5 V |
ISP1-3 | SCK |
ISP1-4 | MOSI, uzemněním se volí výchozí rychlost 19,2 kb/s |
ISP1-5 | RESET |
ISP1-6 | GND |
X1-1 | +12 V napájení |
X1-2 | +12 V napájení |
X1-3 | GND |
X1-4 | GND |
X1-5 | TX, UART |
X1-6 | RX, UART |
X1-7 | GND |
X1-8 | GND |
X1-9 | +12 V napájení |
X1-10 | +12 V napájení |
Programování (AT příkazy)
Před zařazením zobrazovače do většího celku, jako je například displej, je nutno jednotlivé zobrazovače správně nastavit. V současnosti je možno upravovat následující parametry: jas zobrazovače, adresu zobrazovače, komunikační rychlost a diagnostiku. Následně tedy popíšu nastavení těchto parametrů pomocí AT příkazů. Aby bylo ovládání pomocí AT příkazů možné, je nutné přepnout zobrazovač do režimu Multi-Byte, tedy JP2 není osazen.
Každý AT příkaz, například AT-Jas255*, se skládá z návěští AT-. Za návěštím následuje daný příkaz, například Jas. Některé příkazy obsahují ještě navíc parametr, například 255. Konec příkazu je označen symbolem hvězdičky *.
AT-Jas255* - Tímto příkazem se nastavuje jas zobrazovacího prvku. Řízení jasu se provádí pomocí PWM a proto je možno nastavit hodnotu 0-255. Čím větší je hodnota, tím větší je výsledný jas. Nastavení se projeví okamžitě.
AT-Adresa3* - Tímto příkazem nastavujeme adresu daného zobrazovače. Momentálně je podporováno 16 adres, přičemž adresy 0 a 8 jsou pevně přiděleny pro ovládání dvojteček z libovolného zobrazovače při použití protokolu One-Byte. Pokud je tato adresa nastavena zobrazovači, bude přenášet blikání dvojtečky na segment DP a G. Přičemž každý zobrazovač bez ohledu na nastavenou adresu bude na vývodu JP1-9 přenášet stav dvojtečky, pokud je nastaven protokol One-Byte.
AT-Baud19200* - Tímto příkazem se nastavuje komunikační rychlost. Podporovány jsou následující rychlosti: 1200, 2400, 4800, 9600, 19200, 38400 a 57600. Pokus o nastavení jiné než podporované rychlosti bude mít za následek chybové hlášení. Nastavení komunikační rychlosti se neprojeví okamžitě, ale teprve až po potvrzení příkazem AT-Save* a restartu zobrazovače.
AT-Diag0* - Tímto příkazem je možno zapnout automatické diagnostické zprávy. Parametr 1 diagnostiku zapne a parametr 0 zase vypne. Toto se za běžného provozu nepoužívá a slouží to spíše pro ladění programu. Nastavení se projeví okamžitě.
AT-Info* - Tímto příkazem si můžeme nechat vypsat veškerá nastavení a hodnoty uložené v zobrazovači, a to včetně aktuální hodnoty napájecího napětí nebo verze firmwaru.
AT-Save* - Tímto příkazem uložíme všechny nastavené hodnoty do EEPROM, takže v případě restartu zobrazovače budou obnoveny. Pokud bychom to neudělali, hodnoty, které jsme předtím zeditovali, by byly platné pouze do prvního restartu a poté by se obnovily staré hodnoty uložené v EEPROM.
Ovládání
Ovládání zobrazovače je poměrně jednoduché. Momentálně je podporován pouze protokol One-Byte, což je stará verze kompatibilní se všemi dosud publikovanými zařízeními, která podporují výstup pro velký displej, jako jsou stopky, GPS hodiny a další. Takže k těmto zařízením je možno zobrazovače připojit.
Samozřejmě můžete použít i vlastní zařízení, které bude posílat data do zobrazovačů. Z tohoto důvodu si prostudujte tabulku s popisem protokolu, jež je přiložena v dokumentaci. Pro jednoduché testy lze použít nějaký sériový terminál.
Komunikace se zobrazovači v displeji
Jak už jsem zmínil, data se do displeje zasílají přes rozhraní UART. Pro komunikaci byl vytvořen jednoduchý protokol, který používá 1 byte. V tomto bytu je uložena adresa zobrazovače a znak, který se na něm má zobrazit. Zobrazovat je možno následující znaky: NIC, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, L, P, U, E a -. Znak NIC znamená, že daný zobrazovač je vypnutý a nezobrazuje se na něm nic. Následují čísla, několik písmen a pomlčka. Adresa a zobrazovaný znak jsou v bytu rozděleny tak, že nižší 4 bity jsou adresa a vyšší 4 bity jsou zobrazovaný znak. Teoreticky je možno použít až 16 adres. Pro lepší orientaci jsem přidal tabulku s významem jednotlivých bitů v odesílaném bytu.
Zde si ukážeme, jak poslat na zobrazovač hodnotu. Příklad: máme zobrazovač s adresou 1 a chceme na něm zobrazit číslo 6. Pošleme tedy byte 71h. Přičemž číslo 7 je číslo 6 dle tabulky znaků a číslo 1 je adresa zobrazovače. Pokud budeme chtít na šestimístném displeji zobrazit hodnotu 123456, pošleme sekvenci 71h 62h 53h 44h 35h 26h. Pokud budeme chtít zhasnout celý displej, pošleme sekvenci 01h 02h 03h 04h 05h 06h.

Data, která jsou zobrazena na jednotlivých zobrazovačích, zůstávají platná, dokud nejsou přepsána novými daty nebo dokud nedojde k resetu zobrazovače. Pokud zobrazovač přijme neplatná data, ignoruje je.
Mechanické provedení
Pro tuto konstrukci jsem vytvořil i krabičku ve formě sedmisegmentového zobrazovače. Krabičku lze vytisknout na 3D tiskárně. Jednotlivé segmenty vytiskneme z bílého plastu a krabičku s víčkem pak z plastu černého. Do jednotlivých segmentů vtlačíme LED diody, které propojíme do série, což je dobře patrné na obrázcích. Následně tyto segmenty vložíme do krabičky a zalepíme například tavnou pistolí. Pak už stačí jen jednotlivé diody segmentů propojit do elektroniky, kterou přišroubujeme šrouby M2 do krabičky. Zadní kryt můžeme také přišroubovat šrouby M3 nebo jednoduše zalepit. Tím nám vznikne kompletní zobrazovač, který můžeme namontovat do většího displeje. Všechny konektory jsou zezadu dobře přístupné, takže propojení zobrazovačů plochým kabelem nečiní žádné potíže.
U menších displejů je možno použít klasické LED diody. U větších displejů je vhodnější použít LED pásky, případně jiné vhodné zdroje světla podle velikosti segmentů.
Fotogalerie





Dokumentace
No a na závěr si zde můžete stáhnout veškerou dokumentaci pro stavbu. Je zde i projekt pro Eagle.
Prohlášení
Tato konstrukce je autorská práce. Není povoleno bez souhlasu autora přejímání na jiné stránky nebo komerční využití. Je povoleno se pouze odkazovat na tento web a tuto konstrukci. Pro více informací mě stačí kontaktovat. Zároveň nepřebírám jakoukoli odpovědnost za chování zařízení a případné škody způsobené použitím tohoto zařízení, ať by byly jakéhokoli rázu. Zařízení je určeno pouze k užití pro vlastní potřebu. V této konstrukci je použit program mikrokontroleru, na který se vztahují autorská práva. Na program je udělena zdarma licence na jeho užití pro vlastní potřebu. Jakýkoli prodej není bez souhlasu autora možný.