A projektnek az a lényege, hogy szerettem volna készíteni egy időjárás előrejelző állomást (NodeMcu Időjárás állomás) magamnak. Mert gondolom mindenki futott már bele gondolom abba ilyenkor tavasszal, hogy a lehetőségeihez mérten szeretett volna értelmesen ruhát választani reggel, viszont a reggeli megszokott rohanásban még arra sem volt ideje, hogy a telefonját elővegye és megnézze az időképet. Viszont sajnos nem volt itthon megfelelő kijelzőm ennek a kivitelezésére. Ezzel ellenben, még barátok között is van legalább jó 3 hetem, addig amíg Kínából ideér a 3,5 „-os TFT kijelzőm. Szóval, hogy lerövidítsem az elkészítési időt, ezért előre dolgoztam azzal, amim van. Így esett a választás a 0,96 „-os 128×64-es oled kijelzőre, mert ezzel rendelkeztem.
Megjegyezném, hogy ez a kijelző nem alkalmas erre a feladatra, viszont projekt lényegét szemléltetni tökéletes. Amint kész leszek az eredeti elképzelésemmel, azt is megosztom. Viszont addig is lássuk, hogy mit lehet ebből kihozni. Előre is leszögezném, hogy a leendő projektemben többnapos előrejelzést tervezek, viszont ez a mostani példa csak az éppen aktuális időjárást mutatja félóránként frissülve. Egy korábbi bejegyzésben bemutatott szolgáltatót használok az időjárás információk beszerzésére. Az AccuWeather-t. Ezért a projekt ezen részének a bemutatásával, pont ezért nem is vesződnék. Szóval nézzük meg, hogy mit kell még beszereznünk.
Szükséges könyvtárak:
Ezen felül még szükségünk lesz az LCD Assistant alkalmazásra. Ezzel az alkalmazással fogjuk a grafikákat konvertálni a HEX-be. Az Adafruit library miatt ez is kicsit trükkös lesz, de erre térjünk vissza később. Erre a célra használhatjuk még az Image to Adafruit OLED Bitmap Converter-t, ami teljesen webes alapú. Ha nem HEX-ben hanem Binary-ban szeretnénk tárolni a képeket, akkor ennek a konvertálására használhatjuk az alábbi web alapú konvertálót.
Nem is tudom, hogy honnan folytassam tovább a projekt bemutatását, de talán a legjobb ha elsőre a kapcsolást mutatom be, mert az a legkönnyebben emészthető az egész projekt tekintetében.
Mint a képen is látható a bekötés pofonegyszerű. Ezzel szerintem senkinek sem gyűlik meg a baja. Ami ennél kicsit neccesebb, hogy ha képeket akarunk megjeleníteni a kijelzőn. Első körben nekem is összecsúszott a megjeleníteni kívánt kép minden egyes alkalommal, plusz a kép átméretezése sem volt tökéletes. Az utóbbinak az volt az oka, hogy csak 1 bites mono képeket lehet tökéletesen konvertálni az LCD Assistant nevű alkalmazással. Az összecsúszásnak pedig egy adafruitos topicban találtam meg nyitját. A dolog lényege az, hogy horizontálisan és vertikálisan is meg kell növelni a konvertálni kívánt kép területét 8+8 pixellel.
Nézzük, hogy hogyan is néz ki a teljes folyamat valóságban:
Első lépésben válasszuk ki azokat az ikonokat amiket használni szeretnénk. Ha ezzel megvagyunk, akkor konvertáljuk őket a megfelelő méretű és színmélységű Bitmap képpé. Én személy szerint a 32×32-es méretet választottam.
A konvertáláshoz, egy online konverter használtam. Online-converting.com
A választott méret egyéni, de a bitmap kép színmélységét állítsuk 1bit-esre. A konvertálás után, akár még GIMP-ben vagy Paint-ben szabhatunk is az eredményen, de komolyabb alkalmazást ezért szerintem fölösleges letölteni. Erre kár ellőni egy Photoshop-ot.
Ha megvagyunk a méretre és formátumra konvertálással a következő lépés a HEX-é alakítás. Erre az LCDassistant alkalmazást használtam. Az alkalmazás megnyitása után válasszuk a File menüpont Load image opciót, majd válasszuk ki a konvertálni kívánt képet. Ezután a következő beállítási paraméterekkel konvertáljuk át a képet egy „something”.c fájlra.
A lényeg az, hogy Horinzontálisan 8px hozzáadással konvertáljunk. Ezután File menü Save Output opciót választva, már elmenthetjük valami.c-ként.
A következő oldalon mutatom a kódot.