Jste zde

Levný LCD teploměr

V dnešní minikonstrukci se podíváme na to, jakým šikovným způsobem zužitkovat části ze starého mobilního telefonu. Jednou z takovýchto použitelných částí je i grafický LCD displej, který můžeme využít ve spoustě aplikací, kde je zapotřebí vizualizovat nějaká konkrétní data.

Celé zařízení je postaveno na LCD displeji z mobilního telefonu Nokia 3310, mikrokontroléru PIC12F629 a OneWire teplotním čidlu DS18B20 od firmy Dallas Semiconductor. Mobilní telefon Nokia 3310 má LCD displej s rozlišením 84*48 bodů, není těžké ho sehnat a může být velmi užitečný v DIY (Do It Yourself – udělej si sám) elektronice.

Tento článek měl být spíše jenom zamyšlením nad tím, jakým způsobem se dají využít staré mobilní telefony, ale ukázalo se, že výsledná aplikace je vcelku užitečná věc, a jsem rád, že se o ni mohu podělit. Motto autora této konstrukce je jednoduchost, s malou součástkovou základnou se dá zhotovit relativně přesný a vizuálně zajímavý teploměr. Autor se jmenuje Ivica Novakovic (kontakt je uveden v sekci Odkazy).

Technická specifikace:

  • Napětí - 3 - 3.3 V
  • Teplotní rozsah (1) -55 do 125' C
  • Min. krok - 0,1 ' C
  • Max. odchylka - +/- 0,5 ' C
  • Max. rozlišení - 0,0625 ' C
  • Frekvence měření - 1,2s
  • Rozměry – 40 * 38 mm
  • 2 módy - normální/inverzní
  • Rozlišení displeje - 84*48pix
  • Proudový odběr (2) - 0,2 mA - 0,8 mA

  1. Uvedený teplotní rozsah se vztahuje pouze na samotné čidlo teploty (na prostor, ve kterém se nachází), nikoliv na kompletní zařízení.
  2. Proudový odběr není konstantní. Může za to systém měření a odečtu naměřené teploty. MCU zpracovává údaj z teplotního čidla DS18B20 po cca 700 ms, kde si zařízení bere kolem 0,8 mA. Po dalších 500 ms je zařízení v režimu se sníženou spotřebou (sleep) a bere si cca 0,2 mA. Průměrně je to tedy něco kolem 0,6 mA.

Schéma celého obvodu je vcelku jednoduché (ostatně je to patrné z následujícího obrázku).

Schéma teploměru

Na dalším obrázku je vidět návrh DPS, který je také velmi jednoduchý (návrh vznikl v Protelu 99SE). V sekci Odkazy najdete kvalitní PDF s návrhem DPS.

Návrh desky plošných spojů

LCD podporuje dva módy provozu (normální a inverzní), jaký bude aktivní, o tom rozhoduje jumper umístěný na zadní straně zařízení.

 

Inverzní mód LCD

 

Záporná teplota je zobrazena stejně, pouze je přidán znak „mínus“, a to i na obrázku teploměru.

 

Znázornění záporné hodnoty

 

Na tomto obrázku je patrné, že celé zařízení je napájeno z 3,6V lithiové baterie. Nepoužívejte větší napětí než toto, protože LCD displej Nokie pracuje pouze s napětím 2,7 až 3,3 V.

 

Napájení pomocí Lithiové baterie 3,6V

 

Instrukce ke stavbě:

LCD:

Jako první musíme sehnat samotný přístroj a z něj opatrně vyjmout displej. Během této procedury buďte velmi dbalí a trpěliví. Displej je velmi tenký a, jak jistě víte, celý ze skla, takže opatrnost je namístě.

 

Konektor displeje

 

Na zadní straně displeje je 8pinový konektor, který je v našem případě přilepen ke sklu (Nokia 3210 má gumový konektor, takže tento je pro naši aplikaci daleko vhodnější). Jedná se o LCD displej Phillips PCD8544, pokud budete potřebovat nějaké dodatečné informace, na internetu je jich pod tímto heslem více než dostatek.

PCB:

Dalším krokem je vytvoření desky plošných spojů, která je dostatečně malá a snadná na výrobu. Důležité je na okraje desky nalepit plastové proužky, na kterých bude „sedět“ LCD displej (z důvodu dobrého kontaktu s konektorem displeje a kvůli ochraně samotného displeje).

 

Deska plošných spojů

 

Rozložení součástek:

Na zadní straně naší konstrukce můžeme vidět rozložení součástek. Na první pohled je jasné, že se nejedná o žádné složité zapojení, je zde opravdu velmi málo součástek. Autor umístil senzor teploty DS18B20 do pinové lišty pro testovací účely. Samozřejmě toto řešení můžete nahradit svým vlastním (např. umístit čidlo na kabel aj.).

 

Rozmístění součástek

 

Úprava kontrastu:

Pokud by kontrast displeje nebyl dle vašich představ, můžete ho během programování obvodu PIC12F629 změnit na adrese D2h. Autor nastavil hodnotu na A9h, ale to může být u jiných displejů jiné. Povolený rozsah je od 80h do FFh (80h je minimální kontrast).

Závěr:

Tento mininávod měl opravdu sloužit jen jako motivace, co vše se dá udělat s nepoužívaným hardwarem a trochou toho času. Nakonec celé zařízení nevypadá tak zle a jistě může sloužit jako jednoduchý informátor o teplotě v obývacím pokoji, na ústředním topení a spoustě dalších míst, kde je potřeba zjistit jednoduchým způsobem stávající teplotu.

Odkazy & Download:

  • Datasheet k teplotnímu čidlu DS18B20 (*.pdf, 223kB)
  • Datasheet k MCU PIC12F629 (*.pdf, 1,8MB)
  • Přeložený program pro PIC12F629 (*.zip, 2,25kB)
  • Přeložený program pro PIC12F675 (*.zip, 2,25kB)
  • Dokument PDF s návrhem DPS (*.pdf, 4,5kB)
  • Domovská stránka autora projektu - http://free-vz.htnet.hr/Ivica-Novakovic/eng-index.html
Hodnocení článku: 

Komentáře

Zdravim.

Privital by som clanok napr. o novsich displejoch, ktore sa pouzivaju v mobilnych telefonoch. Mnohe z nich sa daju relativne lacno zohnat ako nahradne diely na mobily a urcite by sa dali velmi dobre pouzit na taketo elektronicke konstrukcie. Problem je v tom, ze som nevedel nikde zohnat specifikaciu k tymto displejom. Mozno to niekto z vas tu ma, alebo vie zistit pomocou reverse engineering (pripadne sledovanim datovej zbernice).

U 3410 se musí navíc použít jeden příkaz na nastavení kontrastu, čili vlastně zapnutí displeje. Samozřejmě pak bude dole nevyužité místo. 3410 má totiž větší rozlišení

pouzit muzes jakykoliv z te rady 18x20xx - rozdil mezi nimi je jen v pouzdre. cili pokud si upravis DPS tak tam neni problem pouzit i tu SMD verzi co pises...

Rozhodl jsem se že si toto zalojení postavím a vyskouším. Ikdyž někdo tady psal že to funguje skvěle ta já jsem asi vyjímka jelikož mě se nadaří dostat HEX do picu. Ten PIC mám 12F629. Používám WinPic na paralal. Jaké jsou nastavení oscilátoru ?? pořád mi to totiž hází chybu u oscilátoru. Už jsem zkoušel veškeré možnosti ,ale marně :-(

Chci se zeptat jestli si můžu nějak ověřit funkci LCD z 3310

Je možno použít PIC12F629 místo PIC12F675??

Je možno použít PIC12F629 místo PIC12F675??

Ahoj.
Potřeboval bych,aby mi displey ukazoval to chci já. Nevíte o někom kdo by přepsasl program podle mě?
Děkuji.

Tak si to přeprogramuj sám! Povedlo se mi rozchodit ten LCD, stačí k tomu jen pár instrukcí. Pokud ovšem chceš použít celý LCD spotřebuješ 3/4 flash paměti na tabulku a s tím zbytkem se už toho moc udělat nedá. Musíš si pomoct externí EEPROM.

Ahoj
Potřeboval bych poradit. Ať dělám co dělám pořád mi to nechodí. Po naprogrmování provedu kontrolu a vše je OK.
Předem díky

Při odporu 10K mě velmi často vypadávalo čidlo DS18B20 a někdy nepracovalo vůbec!(na displeji svítily nuly +00.0). Po úpravě hodnoty odporu R1 na 4K7 vše začalo 100% fungovat v rozpětí napětí 2,7-3,3V.

Ahoj.
Postavil jsem si teploměr podle návodu s PIC12F675 a chodí hezky.

Zdravím, našla by se tu nějaká dobrá duše, která by za malou úplatu naprogramovala pár těch PIC12F675? Chtěl to zkusit postavit pro děcka do školy pro měření teploty při laborkách. Za každou zprávu, dík;-) Honza H.

Jasně kolik jich chceš naprogramovat a nebo si to mužeš naprogramovat sám, mě to chodí na pic 12f629 super.

Prajem dobrý deň!

Prečítal som si so záujmom článok, pojednávajúci o tomto jednoduchom teplomeri, pretože by som ho chcel použiť na meranie teploty v teplovzdušnom rozvode v dome. Samozrejme ako väčšina ľudí, nemám možnosť akýmkoľvek spôsobom naprogramovať si potrebný procesor, preto Vás chcem týmto požiadať o naprogramovanie a prípadné zaslanie predmetného procesora. Ešte pred samotnou realizáciou by som si dovolil Vás požiadať o zaslanie prípadnej celkovej ceny ( procesor + práca - programovanie + doručenie - zaslanie na slovensko do Prešova) na môj uvedený mail. Vopred Vám srdečne ďakujem za akúkoľvek odpoveď a ostávam s pozdravom. Ing. Pavlík

Zdravím po připojení na zdroj se na LCD nic nezobrazí ale po vypnutí zdroje se zobrazí celí odraz ale jenom na 0,5s. Poradí mi někdo co stím můžu mít??

Zdarec, po připojení napětí LCD nic neukazuje ale při odpojení se na kokamžik ukáže celí obraz. Poradí mi někdo co stím mám??

Ahojte v jakém programu se píše ten hex pro PIC?

Zdravím

Snažím se naprogramovat v PIC KIT 2 programmer a píše mi to OSSCAL:Invalid value a nejde program do 16f629 nahrát.

Nevím co s tím 

Poradí mi někdo

Díky

Chlapi, mám klasiku :-/ Objednal jsem si LCDčko, bohužel jsem neměl při ruce tento telefon na kuchnutí. A bohužel jsem zjistil, že ten prevít, co mám obsahuje nový řadič ST7548T oproti původnímu philipsáckému.. Ve výsledku mi to zobrazí rozhozené řádky a pixely, takže je to nepoužitelné. Nevíte někdo o vhodné úpravě programu či verzi pro tyto řadiče?? Dík moc za každou radu