Turinys:

Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę: 6 žingsniai
Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę: 6 žingsniai

Video: Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę: 6 žingsniai

Video: Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę: 6 žingsniai
Video: The DOOGEE S89 PRO Rugged Smartphone: The Phone That Won't Let You Down 2024, Lapkritis
Anonim
Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę
Spalvų perėjimas naudojant POP-X2 GLCD naudojant rankenėlę

Iš esmės šis projektas rodo valdiklio plokštės, kurią man patinka naudoti, ypatybę. POP-X2 plokštė, pagaminta INEX, turi įmontuotą spalvotą GLCD, rankenėlę, įvesties/išvesties prievadus ir komponentus, panašius į kitas valdiklio plokštes. Norėdami sužinoti visas specifikacijas, patikrinkite plokštės vadovą. Žiūrėkite šią nuorodą.

GLCD (grafinis skystųjų kristalų ekranas), įmontuotas į valdiklio plokštę, suteikia galimybę rodyti duomenis ne tik tekstams ir skaičiams, bet ir vektorinei grafikai. Šioje pamokoje aš išmokysiu jus, kaip GLCD rodyti paprastą grafiką. Kad būtų įdomiau, pridėjau borto rankenėlės programas, kaip spalvų perėjimo valdiklį.

Prisiminti. Ši pamoka daugiausia buvo skirta programavimo pusei. Jei jums priklauso ta pati plokštė arba ATX2 plokštė, galite lengvai atlikti šią pamoką. Baigę galite pabandyti ištirti kitas lentos funkcijas.:)

Dabar pradėkime!

1 žingsnis: ko mes tikimės?

Image
Image

Žiūrėkite aukščiau esantį vaizdo įrašą.

2 žingsnis: Surinkite medžiagas

Techninės ir programinės įrangos sąranka
Techninės ir programinės įrangos sąranka

Dalys ir medžiagos:

- nešiojamas/stalinis kompiuteris su įdiegta „Arduino Arduino 1.7.10“(pasirašyta tvarkyklė) arba naujesnė versija

- 1 POP-X2 plokštė (su rankenėle)

- 1 Atsisiųsti kabelį

- 4 vnt. AA baterijos

3 žingsnis: Aparatūros ir programinės įrangos sąranka

Techninės ir programinės įrangos sąranka
Techninės ir programinės įrangos sąranka

1. Įdėkite 4 baterijas į baterijų laikiklį. (Plokštė palaiko maksimalią 7,4 V įtampos įvestį.)

Pastaba: Prašome tinkamai patikrinti baterijų poliškumą.

2. Prijunkite atsisiuntimo kabelį prie kompiuterio ir plokštės. Žiūrėkite aukščiau esantį paveikslėlį.

3. Įjunkite valdiklio plokštę. Įsitikinkite, kad užsidegė mėlynas LED indikatorius. Arba turite įdiegti „Arduino“programinės įrangos tvarkyklę.

Beje, aš naudoju „Arduino“1.7.10 versiją (pasirašyta tvarkyklė), nes ji jau turi POP-X2 biblioteką. Norėdami atsisiųsti programinę įrangą, spustelėkite šią nuorodą.

4. Nustatykite plokštės prievadą spustelėdami Įrankiai> Serijinis prievadas> Pasirinkite tinkamą COM prievado numerį.

5. Nustatykite plokštę spustelėdami Įrankiai> Lenta> POP-X2, ATMega644P @ 20MHz.

6. Pabandykite įkelti numatytąjį eskizą, kad įsitikintumėte, jog plokštė tinkamai prijungta.

#include // POP-X2 biblioteka

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

4 žingsnis: rankenėlės testas

Rankenėlės testas
Rankenėlės testas

Prieš atlikdami pagrindinę programą, turite įsitikinti, kad borto rankenėlė veikia.

1. Įkelkite rankenėlės pavyzdinę programą. Spustelėkite Failas> Pavyzdžiai> POP-X2> popx2_KnobOKTest

Pagrindinė operacija:

- GLCD rodomos rankenėlės analoginės vertės diapazonas yra nuo 0 iki 1000.

- Kai rankenėlė pasukama pagal laikrodžio rodyklę, analoginė vertė, rodoma GLCD, padidėja.

- Kai rankenėlė pasukama prieš laikrodžio rodyklę, analoginė vertė, rodoma GLCD, sumažėja.

5 žingsnis: programavimas

Programavimas
Programavimas
Programavimas
Programavimas

Žemiau pridėjau šaltinio kodą. Taigi, prašome įkelti.

Programos peržiūra:

#include // POP-X2 lentos biblioteka

void setup () {OK (); } void loop () {int skaitymas = žemėlapis (rankenėlė (), 0, 1000, 0, 245); jei ((skaitymas> = 0) && (skaitymas = 36) && (skaitymas = 71) && (skaitymas = 106) && (skaitymas = 141) && (skaitymas = 176) && (skaitymas = 211) && (skaitymas <= 245)) {balta (); } glcdFillScreen (GLCD_BLACK); glcd (0, 0, "%d", skaitymas); }

tuštuma raudona () {

setTextBackgroundColor (GLCD_RED); glcd (3, 2, ""); glcd (4, 2, ""); glcd (5, 2, ""); glcd (6, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

tuščia geltona () {

setTextBackgroundColor (GLCD_YELLOW); glcd (1, 8, ""); glcd (2, 8, ""); glcd (3, 8, ""); glcd (4, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

tuščia žalia () {

setTextBackgroundColor (GLCD_GREEN); glcd (3, 14, ""); glcd (4, 14, ""); glcd (5, 14, ""); glcd (6, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

void cyan () {

setTextBackgroundColor (GLCD_CYAN); glcd (9, 14, ""); glcd (10, 14, ""); glcd (11, 14, ""); glcd (12, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

tuščia mėlyna () {

setTextBackgroundColor (GLCD_BLUE); glcd (11, 8, ""); glcd (12, 8, ""); glcd (13, 8, ""); glcd (14, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

void purpurinė () {

setTextBackgroundColor (GLCD_MAGENTA); glcd (9, 2, ""); glcd (10, 2, ""); glcd (11, 2, ""); glcd (12, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

tuščia balta () {

setTextBackgroundColor (GLCD_WHITE); glcd (6, 8, ""); glcd (7, 8, ""); glcd (8, 8, ""); glcd (9, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); vėlavimas (1000); }

Paaiškinimas:

1. Spalvotas langelis (tam tikroje vietoje) bus rodomas GLCD, kai nustatyta vertė yra teisinga (patikrinkite apribojimus žemiau). Norėdami suprasti programoje nurodytos spalvoto langelio koordinates, žiūrėkite aukščiau esantį paveikslėlį.

2. Analoginė rankenėlės vertė buvo susieta nuo 0 iki 1000 iki 0 - 245. Galima rodyti 7 spalvas; todėl kiekvienos spalvos diapazonas yra 35 (išskyrus pirmąjį apribojimą).

3. Apribojimai:

Vertės spalva (langelis)

0 - 35 - raudona

36 - 70 - Geltona

71 - 105 - Žalia

106 - 140 - žalsvai mėlyna

141 - 175 - Mėlyna

176 - 210 - rausvai raudona

211 - 245 - balta

Pastaba: dėžutės ekranas NĖRA tobulas, nes tarp eilučių yra tarpas. Šioje programoje naudoju tarpus, o ne faktines koordinates, norėdamas lengvai parodyti, kaip tai atrodytų.

Be to, kiekvienai dėžutei sukūriau funkcijas, kad būtų galima lengvai suprasti kodą.

Rekomenduojamas: