Tartalomjegyzék:

Színátmenet a POP-X2 GLCD-n gomb segítségével: 6 lépés
Színátmenet a POP-X2 GLCD-n gomb segítségével: 6 lépés

Videó: Színátmenet a POP-X2 GLCD-n gomb segítségével: 6 lépés

Videó: Színátmenet a POP-X2 GLCD-n gomb segítségével: 6 lépés
Videó: CS50 2013 - Week 10 2024, November
Anonim
Színátmenet a POP-X2 GLCD-n gomb segítségével
Színátmenet a POP-X2 GLCD-n gomb segítségével

Alapvetően ez a projekt egy vezérlőkártya egyik funkcióját mutatja be, amelyet szeretek használni. Az INEX által gyártott POP-X2 kártya beépített színes GLCD-vel, forgatógombbal, I/O portokkal és más vezérlőpanelekhez hasonló alkatrészekkel rendelkezik. Kérjük, ellenőrizze a tábla kézikönyvét a teljes specifikációért. Lásd ezt a linket.

A vezérlőkártyába épített GLCD (grafikus folyadékkristályos kijelző) módszert kínál az adatok megjelenítésére, nemcsak egyszerűen szövegek és számok, hanem vektorgrafika segítségével is. Ebben az oktatóanyagban megtanítlak egy egyszerű grafika GLCD -re történő megjelenítésére. Hogy érdekesebb legyen, programokat adtam hozzá a fedélzeti gombhoz, a színátmenet vezérlőjeként.

Emlékezik. Ez az oktatóanyag elsősorban a programozási oldalra összpontosított. Ha ugyanaz a tábla vagy ATX2 kártya a tulajdonosa, könnyen elvégezheti ezt az oktatóanyagot. Ha elkészült, megpróbálhatja felfedezni a tábla egyéb funkcióit.:)

Most kezdjük!

1. lépés: Mit várunk?

Image
Image

Kérjük, nézze meg a fenti videót.

2. lépés: Az anyagok összegyűjtése

Hardver és szoftver telepítése
Hardver és szoftver telepítése

Alkatrészek és anyagok:

- Laptop/asztali számítógép telepített Arduino Arduino 1.7.10 (illesztőprogram által aláírt) vagy újabb verzióval

- 1 POP-X2 kártya (fedélzeti gombbal)

- 1 Letöltés kábel

- 4 db. AA elemek

3. lépés: Hardver és szoftver telepítése

Hardver és szoftver telepítése
Hardver és szoftver telepítése

1. Helyezze a 4 elemet az elemtartóba. (Az alaplap támogatja a 7,4 V -os maximális bemeneti feszültséget.)

Megjegyzés: Kérjük, ellenőrizze megfelelően az elemek polaritását.

2. Csatlakoztassa a letöltőkábelt a számítógéphez és a kártyához. Kérjük, nézze meg a fenti képet.

3. Kapcsolja be a vezérlőpanelt. Győződjön meg arról, hogy a kék LED jelzőfény világít. Vagy telepítenie kell az Arduino szoftver illesztőprogramját.

Egyébként az Arduino 1.7.10 verzióját használom (illesztőprogram aláírva), mivel már rendelkezik a POP-X2 könyvtárával. Kérjük, kattintson erre a linkre a szoftver letöltéséhez.

4. Állítsa be a kártya portját, kattintson az Eszközök> Soros port> Válassza ki a megfelelő COM portszámot.

5. Állítsa be a táblát az Eszközök> Tábla> POP-X2, ATMega644P @ 20MHz elemre kattintva.

6. Próbálja meg feltölteni az alapértelmezett vázlatot, hogy megbizonyosodjon arról, hogy a kártya megfelelően van csatlakoztatva.

#include // POP-X2 könyvtár

void setup () {OK (); } void loop () {}

4. lépés: Gomb teszt

Gomb teszt
Gomb teszt

A főprogram végrehajtása előtt meg kell győződnie arról, hogy a fedélzeti gomb működik.

1. Töltse fel a mintaprogramot a gombhoz. Kattintson a Fájl> Példák> POP-X2> popx2_KnobOKTest elemre

Alapművelet:

- A GLCD -n megjelenő gomb analóg értéktartománya 0 és 1000 között van.

- Ha a gombot az óramutató járásával megegyező irányba forgatja, a GLCD -n megjelenített analóg érték nő.

- Ha a gombot az óramutató járásával ellentétes irányba forgatja, a GLCD -n megjelenített analóg érték csökken.

5. lépés: Programozás

Programozás
Programozás
Programozás
Programozás

Alább csatoltam a forráskódot. Szóval, kérjük, töltse fel.

A program előnézete:

#include // POP-X2 Board könyvtár

void setup () {OK (); } void loop () {int olvasás = térkép (gomb (), 0, 1000, 0, 245); if ((olvasás> = 0) && (olvasás = 36) && (olvasás = 71) && (olvasás = 106) && (olvasás = 141) && (olvasás = 176) && (olvasás = 211) && (olvasás <= 245)){ fehér(); } glcdFillScreen (GLCD_BLACK); glcd (0, 0, "%d", olvasás); }

void red () {

setTextBackgroundColor (GLCD_RED); glcd (3, 2, ""); glcd (4, 2, ""); glcd (5, 2, ""); glcd (6, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

üres sárga () {

setTextBackgroundColor (GLCD_YELLOW); glcd (1, 8, ""); glcd (2, 8, ""); glcd (3, 8, ""); glcd (4, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

void green () {

setTextBackgroundColor (GLCD_GREEN); glcd (3, 14, ""); glcd (4, 14, ""); glcd (5, 14, ""); glcd (6, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

void cián () {

setTextBackgroundColor (GLCD_CYAN); glcd (9, 14, ""); glcd (10, 14, ""); glcd (11, 14, ""); glcd (12, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

üres kék () {

setTextBackgroundColor (GLCD_BLUE); glcd (11, 8, ""); glcd (12, 8, ""); glcd (13, 8, ""); glcd (14, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

void magenta () {

setTextBackgroundColor (GLCD_MAGENTA); glcd (9, 2, ""); glcd (10, 2, ""); glcd (11, 2, ""); glcd (12, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

üres fehér () {

setTextBackgroundColor (GLCD_WHITE); glcd (6, 8, ""); glcd (7, 8, ""); glcd (8, 8, ""); glcd (9, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); késleltetés (1000); }

Magyarázat:

1. A színes doboz (egy meghatározott helyen) megjelenik a GLCD -n, ha a beállított érték igaz (ellenőrizze az alábbi korlátozásokat). A programban megadott színes doboz koordinátáinak megértéséhez nézze meg a fenti képet.

2. A gomb analóg értéke 0 - 1000 és 0 - 245 között van leképezve. 7 szín jeleníthető meg; ezért minden színnek 35 tartománya van (az első korlátozás kivételével).

3. Korlátok:

Érték szín (doboz)

0 - 35 - Piros

36 - 70 - Sárga

71 - 105 - Zöld

106 - 140 - cián

141 - 175 - Kék

176-210 - bíbor

211 - 245 - Fehér

Megjegyzés: A dobozkijelző NEM tökéletes, mivel a sorok között rés van. Ebben a programban szóközöket használtam a tényleges koordináták helyett, hogy könnyen bemutassam, hogyan nézne ki.

Ezenkívül minden dobozhoz létrehoztam funkciókat a kód egyszerű megértése érdekében.

Ajánlott: