Témakör:
Intelligens kijelzők
Megjelent: 2023. november 03.
Az intelligens megoldás korszerű alkalmazásokhoz
Ma már szinte minden fejlesztéshez kijelzőre van szükség. A kiválasztás és a beépítés azonban kihívások elé állítja a fejlesztőket, és bonyolítja a fejlesztési folyamatot. Az intelligens kijelzők költséghatékony alternatívát jelenthetnek.
Ha egy konkrét megvalósítást egy intelligens kijelző használatával hasonlítunk össze, a moduláris felépítés elsőre nem tűnhet különösebben vonzónak, ha csupán az összköltségekre fókuszálunk. Ha figyelembe vesszük a fejlesztés gyorsaságát, és hogy felhasználóbarát (piacképes) megoldásról van szó, akkor az intelligens kijelző kiemelkedő. Például egy 8 bites mikrokontrolleren (MCU) futó meglévő alkalmazás, amelyet most kell felszerelni érintőképernyős felülettel rendelkező, színes grafikus kijelzővel, a fejlesztés hosszú hetekig is eltarthat. Amíg a legtöbb MCU integrált vagy különálló meghajtón keresztül képes LCD kijelzővel kapcsolódni, az MCU erőforrásai korlátoznák a kijelző tényleges méretét és felbontását. A 8 bites MCU például egy kétsoros pontmátrix-kijelzőt vezérelhet; de előfordulhat, hogy a feldolgozási erőforrások nem elegendők a nagyobb kijelzőkhöz. Ezenkívül a tervezőnek szoftvereket, például könyvtárakat és képfájlokat kell hozzáadnia. Az érintőfunkciók hozzáadása még több fejlesztési erőfeszítést igényel. A gyártási fázisban szigorú előzetes ellenőrzést kell elvégezni a kijelzőknél, mivel mindig fennáll annak a lehetősége, hogy előzetes értesítés nélkül változtattak valamit az alkatrész gyártói, ami optimalizálást vagy a kijelző-illesztőprogramok újra tervezését teszi szükségessé.
Mit nyújtanak az intelligens kijelzők?
Az intelligens kijelzők általában szabványos interfésszel rendelkeznek, például I2C, SPI vagy UART, a gazdagéppel való kommunikációhoz. Néhányuk mikrokontrollert is tartalmaz. Ez a mikrokontroller nemcsak az összes grafikus elemért felel, hanem gyakran tartalmaz számos I/O-t és egyéb perifériákat, biztosítva, hogy a kijelző képes legyen a teljes célalkalmazás futtatására.
Számos kijelzőt függvénykönyvtár támogat, így biztosítva, hogy viszonylag könnyen vezérelhetők legyenek a gazdagép MCU-val. Nemritkán teljes értékű integrált fejlesztői környezettel (IDE) is rendelkeznek, amely a tervezési folyamat részeként grafikus felhasználói felület (GUI) tervezését és létrehozását teszi lehetővé. Rendkívül gyors prototípus-készítés és alkalmazásfejlesztés anélkül, hogy egyetlen sornyi kódot kellene írni, egyes IDE-k drag-and-drop WYSIWYG (amit látsz, azt kapod) munkafolyamatokat nyújtanak.
A moduláris megközelítés varázsa tehát abban is rejlik, hogy az összes illesztőprogramot, a legegyszerűbbeket és a grafikus felületeket is már kifejlesztették és tesztelték.
A mérnökök ezért teljes mértékben a tényleges grafikus felhasználói felületre koncentrálhatnak. A gazdagép MCU az összes megjelenítési feladatot át tudja tölteni a kijelzőre, ami azt jelenti, hogy minden erőforrása, memóriái, elérhetők a fő alkalmazás számára.
A felhasználói felület tervezési támogatása
A grafikus felhasználói felület tervezését is támogató 4D Systems kijelzőgyártó olyan eszközt fejlesztett ki, amellyel a lehető leggyorsabban és legegyszerűbben hozhat létre intelligens grafikus felhasználói felületeket. A Workshop4 IDE számos fejlesztői környezetet kínál a szöveges alapútól a vizuális programozásúig. Fogd és vidd funkciója intuitív használatot tesz lehetővé, így nincs szükség hagyományos kódolásra.
Kijelzőmodul az RDK2 – Rutronik Development Kit-hez
Mindezen előnyök miatt a Rutronik intelligens kijelzőt is használ az RDK2 fejlesztőkészletéhez (1. ábra). Elsősorban a különféle alkalmazási területekre, mint az IoT és az IIoT, az intelligens hordozható eszközökre és az intelligens otthonra vonatkozó ötletek kidolgozását támogatja. Az alaplap az Infineon CY8C6245AZI-S3D72 ultra-kis fogyasztású, nagy teljesítményű mikrokontrollerére épül. Ezenkívül az RDK2 rendelkezik egy külső 512 Mbit Semper NOR flash memóriával és egy 64 Mbit AP memóriával APS6404L-3SQR-ZR PSRAM-mal, amely QSPI (Quad serial peripheral interface) interfészen keresztül kapcsolódik. Nagymértékben megnöveli az RDK2 képességeit, ha ezeket a memóriákat egyidejűleg használja.
1. ábra A Workshop4 IDE eszköz számos grafikus felhasználói felület tervezési lehetőségeit kínálja a fejlesztőknek
A 4D Systems 4,3”-es, integrált kapacitív érintőképernyővel ellátott gen4-uLCD-43DCT-CLB kijelzője, kijelzőként és beviteli eszközként szolgál az RDK2 egyik alkalmazási példájához, amely a levegőminőséget a VOC-index (illékony szerves vegyületek) segítségével határozza meg. A DIABLO16 grafikus vezérlőre épül és UART interfészen keresztül vezérelhető. A 115 200 bit/s adatsebessége elegendő az érintőpanel észrevehető késleltetés nélküli működtetéséhez. Amennyiben szükséges az UART adatsebesség 600 kbit/s-ra is növelhető.
Az RDK2-vel való gyors integráció érdekében az Arduino 4D-ARDUINO-ADAPTOR-SHIELD-II adaptert ajánljuk. A RutDevKit-PSoC62_GEN4_ULCD_43 firmware-példa alapértelmezés szerint a Sensirion SPG40 VOC érzékelőjének adataira hivatkozik, de automatikusan átválthat a POT1 beépített potenciométerre is, ha az érzékelőt nem ismeri fel az I2C buszon. A potenciométer leolvasása az ADC perifériáján keresztül történik. Az ADC értékek ezután megjelennek a kijelzőn. A RAB1 – Sensorfusion kártya SGP40 érzékelővel is elérhető lesz a Rutroniktól.
2. ábra A Rutronik Development Kit RDK2 intelligens kijelzőmodullal
A megjelenítésre a 4D Systems biztosítja a ViSi Genie kódkönyvtárat, amit az RDK2 RutDevKit-PSoC62_GEN4_ULCD_43 mintaprojekt tartalmaz a ModusToolbox IDE-ben való használatra. Ez egy hasznos szoftver- és eszközgyűjtemény az Infineon mikrokontrollerekkel való gyors fejlesztéshez. A kódkönyvtár engedélyezéséhez a User API konfigurációs függvényei és eseménykezelői járulnak hozzá. Lehetővé teszik a fejlesztők számára, hogy szabályozzák, mi történjen a programban egy adott esemény bekövetkeztekor.
3. ábra A Workshop4 IDE által megjelenített RDK2 képernyőelrendezése
Láthatók azok a függvényprototípusok, amelyeket meg kell valósítani ahhoz, hogy a ViSi-Genie ténylegesen fusson.
A kijelzőt úgy vezérli, hogy üzeneteket küld a képernyőn lévő egyes objektumoknak vagy a háttérben lévő, esetleg nem látható objektumoknak. Például a parancs, amely az analóg mérőt a VOC-indexszel frissíti, így nézhet ki:
/* Update the VOC Index gauge */ genieWriteObject(GENIE_OBJ_ANGULAR_METER, 0, gaugeVal);
Az események (például a billentyűk megérintése) 20 milliszekundumos vagy gyorsabb időközönként érkeznek, amikor ez a funkció végrehajtásra kerül:
/* Check for events */ genieDoEvents(true);
A Workshop4 IDE lehetővé teszi a fejlesztők számára, hogy grafikus objektumokat tervezzenek és programozzanak a kijelző memóriájába. A mintaalkalmazás az alapokat mutatja be egy analóg mérő és egy, a VOC-index megjelenítésére szolgáló „szkóp” segítségével. Az analóg mérő 50 milliszekundumonként, a „szkóp” pedig tíz másodpercenként frissül, így a felhasználók egyszerre figyelhetik a VOC-index aktuális és múltbeli értékeit.
Az RDK2 firmware példája és a Workshop4 IDE projekt letölthető a Rutronik weboldaláról: www.rutronik.com/development-stories/rutronik-development-kit-rdk2.
Szerzők: Nikolai Schnarz, Corporate Product Sales Manager Displays
Gintaras Drukteinis, Technical Support – Rutronik
Rutronik Magyarország Kft.
1117 Budapest
Alíz utca 1.
Tel.:+36 1 231 3349
E-mail:Ez az e-mail-cím a szpemrobotok elleni védelem alatt áll. Megtekintéséhez engedélyeznie kell a JavaScript használatát.
#018ed3