Hé mindenki! Meg akartam osztani ezt a kis történetet arról, hogyan botlottam bele az UART képernyők használatába kézi kütyükhöz, és ember, ez megváltoztatta a játékot. Néhány napja láttam ezt a gyerek tudományos kiállítási projektjét az interneten: egy ESP8266 UART képernyőhöz csatlakoztatva, plusz RFID és néhány Mixly-vel készült alkalmazás. Olyan egyszerűnek és menőnek tűnt. Felugrottam a Taobaóra (ez olyan, mint a kínai eBay), és rákerestem az "UART képernyős kijelzőre", és hűha, ezek a dolgok most piszok olcsók a néhány évvel ezelőttihez képest. Alapvetően ugyanaz az ár, mint az alap SPI{5}}alapú LCD-k. Nem tudtam ellenállni – azonnal rendeltem egyet, hogy vacakoljak vele.
UART kijelző és LCD képernyő
Hadd álljak vissza egy kicsit, és magyarázzam el, mit értek az UART-képernyőn, mint a csupasz LCD-képernyőn, mert ha új vagy ebben, mint én először, előfordulhat, hogy nem kattan egyből. Az UART képernyőkijelző alapvetően egy LCD-modul, amely előre-be van csomagolva az összes alacsony-szintű meghajtóval. Saját felhasználói felület-szerkesztő szoftverrel érkezik a gyártótól. Csak húzza át az összetevőket, például a szövegdobozokat, gombokat, időzítőket és címkéket, majd írjon néhány egyszerű eseménylogikát. Az egész dolog a mikrovezérlővel (MCU) beszél soros UART kapcsolaton keresztül – innen ered az UART képernyőkijelző elnevezés. Egyéni protokollt definiál az adatcseréhez, és bumm, van egy divatos kezelőfelületed, anélkül, hogy megizzadnád a részleteket. Ezek közül sok még beépített érintőképernyővel is rendelkezik-, ami nagyszerű a kézi cuccokhoz.
A másik oldalon a csupasz képernyő a szabványos LCD-kijelző – gondoljon azokra, amelyeknek I2C, SPI vagy akár teljes 20-tűs párhuzamos 8080-as interfész vagy RGB beállítás szükséges. Mindent magának kell kezelnie: kövesse az illesztőprogram IC protokollját a pixelek vezérléséhez, a felhasználói felületet a semmiből kódolva, és kezelje az összes időzítést és frissítést az MCU-val. Rengeteg munka, komoly programozási ismereteket igényel, és nagyon elhúzza a fejlesztési időt. Ott voltam, kihúztam a hajam a pixel-tökéletes igazítások és a memóriakorlátok miatt.

Hogy egy valós{0}}példát adjak, nemrég megépítettem ezt a kézi terminált MCU-val és csupasz LCD-képernyővel. Örökké tartott – hetekig tartó módosításról beszélünk. A kód végül több mint 800 sorból állt, és még csak nem is csinált semmi különöset. A kütyü alapvetően egy távoli közlekedési lámpák távirányítója volt: beállíthatta a piros/zöld időtartamot, a villogási időközt, a sárga fény időtartamát, a sárga villogási periódusokat, a valós idejű állapotkijelzéseket, az órabeállításokat és a többi jazzt. A kommunikáció egy nagy hatótávolságú LoRa-modulon keresztül zajlott, ami megnövelte a fejfájást.
Képzelje el ezt: az asztalom fölé görnyedve, a csupasz képernyőt az MCU-hoz kötve, egyedi illesztőprogramokat írok a gombok és szövegek rajzolásához. A navigációhoz kezelnem kellett a gombnyomásokat, szoftveresen vissza kellett ugranom, és ügyelnem kellett arra, hogy frissítés közben ne villogjon a kijelző. A memória rémálom volt – különösen a kínai betűtípusok esetében, mivel az általam használt 51 MCU-nak pici RAM volt. Végül sikerült, de olyan érzés volt, mintha minden lépésnél újra fel kellene találni a kereket. Később még a PCB elrendezést is újra kellett terveznem, hogy kompaktabb legyen a kézi használatra. Félreértés ne essék, elégedett volt, amikor világított, de ember, az idő elsüllyedése valóságos volt.
UART DISPLAY kipróbálása
Gyorsan előre a mai napra – megérkezett az új UART képernyőm! Ez egy 2,8 hüvelykes érintőképernyős LCD a Shenzhen cégtőlMINGHUA.Letöltöttem a felhasználói felületszerkesztő szoftverüket, átfutottam a kézikönyvet, és rögtön belevágtam. Eszembe juttatta azokat a régi időket, amikor a Visual Basic-et vagy a Delphi-t az asztali alkalmazásokhoz használtam – húzd, vidd, kapcsold össze az eseményeket, kész.
Talán fél napot töltöttem a felület felépítésével: gombok a beállításokhoz, szövegmezők az állapotok megjelenítéséhez, időzítők a fénysorozatokhoz. Sorozaton keresztül feltöltöttem az UART képernyőre, és a fenébe is, megismételte azt, ami nekem sok időt vett igénybe a csupasz képernyővel. Nincs többé aggódás az alacsony-szintű pixelnyomás miatt; a képernyő mindezt belsőleg kezeli. És mivel UART{4}}alapú, az MCU-val való integráció gyerekjáték volt – csak küldjön olyan parancsokat, mint a "szövegmező frissítése X értékkel", és visszakapja a válaszokat. Érintős bemenet? Zökkenőmentes. Kipróbáltam a LoRa beállításaimmal, és minden gond nélkül szinkronizálódott.
Hadd részletezzem, hogy ez az UART képernyős megjelenítési megközelítés miért olyan nyerő a kézi terminálok fejlesztésében. Először is, időmegtakarítás: Ahelyett, hogy a felhasználói felület minden elemét az alapoktól kezdve kódolná, előre-beépített modulokat használ. Csúszkát szeretne a fény időtartamának beállításához? Húzza be, kapcsolja össze egy változóval, és határozza meg, hogy mi történjen változáskor – például UART-csomag küldése az MCU-nak. A szoftver néha még a protokoll csonkokat is előállítja.

Másodszor, a stabilitás: ezek az UART képernyőkijelzők gyárilag{0}}tesztelt modulok. Nincs többé többé homályos illesztőprogram-hibák üldözése vagy az SPI-vonalakat megzavaró EMI-zaj. A soros kommunikáció robusztus, különösen, ha néhány alapvető hibaellenőrzést, például ellenőrző összegeket ad hozzá. A csupasz képernyős projektemben időszakos hibáim voltak az áramingadozások miatt; az UART képernyős kijelzővel minden be van zárva, így kevesebb a fejfájás.
Harmadszor, hardveres egyszerűség: Kevesebb tű! Az UART csak TX, RX és földelés (plusz táp, nyilván). Ez felszabadítja az MCU érintkezőit más dolgok számára, mint például az érzékelők vagy a LoRa rádió. A kézi eszközökben, ahol szűk a hely, ez óriási. A régi prototípusomban volt egy patkányfészek vezetékekből; az új UART képernyős kijelző tiszta és kompakt.
Költség szempontjából, ahogy mondtam, ezek az UART-képernyős kijelzők most egyenrangúak a csupaszokkal. Néhány éve még dupláját vagy még többet is visszavetettek volna, de a tömeggyártás csökkentette az árakat. Persze, a felhasználói felület szoftvere és összetevői tekintetében be van zárva a gyártó ökoszisztémájába, ami korlátozhatja az alkut.
Ha visszagondolunk annak a gyereknek a tudományos projektjére, ez teljesen logikus. Ha egy UART-képernyőt párosít egy ESP8266-hoz hasonlóval, akkor a szórakoztató részekre összpontosíthat: a logikára, a vezeték nélküli kommunikációra, az alkalmazásintegrációra. Nem kell grafikus varázslónak lenni. Már vannak ötleteim a következő kéziszámítógépemhez – talán egy hordozható környezeti monitorhoz, amelynek érzékelői valós időben továbbítják az adatokat az UART képernyőre{4}}.
és teljesítményt, ha növeli a termelést. De a prototípusok, hobbiprojektek vagy kisebb sorozatok esetében ez nem{1}}ügyes.
Ha visszagondolunk annak a gyereknek a tudományos projektjére, ez teljesen logikus. Ha egy UART-képernyőt párosít egy ESP8266-hoz hasonlóval, akkor a szórakoztató részekre összpontosíthat: a logikára, a vezeték nélküli kommunikációra, az alkalmazásintegrációra. Nem kell grafikus varázslónak lenni. Már vannak ötleteim a következő kéziszámítógépemhez – talán egy hordozható környezeti monitorhoz, amelynek érzékelői valós időben továbbítják az adatokat az UART képernyőre{4}}.
Hogyan válasszuk ki a megfelelőt
Ha a csupasz képernyő és az UART képernyő között vitatkozik, akkor inkább az UART-t választom, hacsak nincsenek szuper{0}}specifikus követelményei, amelyek teljes irányítást igényelnek. A korábban őrlődést szinte élvezetessé változtatja. Fejlesztési idő? Vágva. Stabilitás? Felfelé. Általános probléma? Lefelé.
Egy dolgot meg kell említenem: amikor először kezd UART képernyővel, figyelmesen olvassa el a dokumentumokat. Minden gyártónak megvannak a sajátosságai – például az adatátviteli sebességek (az enyémet 115 200-ra állítottam a sebességhez), a parancsformátumok vagy az érintési események kezelése. De ha egyszer bekerülsz, simán megy.
A közlekedési lámpák vezérlőjének átdolgozása során felkapottabb elemeket adtam hozzá: folyamatjelző sávok az időzítőkhöz, ikonok az állapotokhoz, még egy egyszerű grafikon is a jelzések előzményeihez – olyan dolgok, amelyek a csupasz képernyőn fájdalmasak lettek volna. Az UART képernyő beépített-betűtípus-támogatása gyerekjátékká tette a kínai szöveget, nem kell többé feltörni a bittérképes betűtípusokat.
Összefoglalva, ha szereti a beágyazott dolgokat, vagy csak a kéziszámítógépekkel bütyköl, próbáljon ki egy UART képernyőt. Könnyebbé tette az életemet, és lefogadom, hogy neked is így lesz. Ha kérdése van, írjon nekem a megjegyzésekben – mi a te -UART képernyő-beállítása?
