Мазмуну:

Баскычты колдонуу менен POP-X2 GLCDде Түстөн өтүү: 6 кадам
Баскычты колдонуу менен POP-X2 GLCDде Түстөн өтүү: 6 кадам

Video: Баскычты колдонуу менен POP-X2 GLCDде Түстөн өтүү: 6 кадам

Video: Баскычты колдонуу менен POP-X2 GLCDде Түстөн өтүү: 6 кадам
Video: Руководство для начинающих по торговому боту. Bybit учеб... 2024, Июль
Anonim
Баскычты колдонуу менен POP-X2 GLCDдеги түс өтүүсү
Баскычты колдонуу менен POP-X2 GLCDдеги түс өтүүсү

Негизинен, бул долбоор мен колдонгум келген контроллер тактасынын өзгөчөлүгүн көрсөтөт. INEX тарабынан жасалган POP-X2 тактасында түстүү GLCD, туткасы, I/O порттору жана башка контроллер такталарына окшош компоненттери бар. Сураныч, толук мүнөздөмөлөрдү алуу үчүн коллегиянын колдонмосун текшериңиз. Бул шилтемени караңыз.

GLCD (Graphic Liquid Crystal Display) контролдоочу тактасына камтылган, жөн эле тексттерди жана сандарды эмес, ошондой эле вектордук графика менен маалыматтарды көрсөтүү ыкмасын камсыз кылат. Бул үйрөткүчтө мен сизге GLCDде жөнөкөй графиканы көрсөтүүнү үйрөтөм. Бул кызыктуу болушу үчүн, мен түстүү өтүү үчүн контролер катары борттогу топчу үчүн программаларды коштум.

Эске. Бул окуу куралы негизинен программалоо жагына багытталган. Эгерде сизде ошол эле такта же ATX2 тактасы болсо, анда сиз бул окуу куралын оңой эле жасай аласыз. Бүткөндөн кийин, коллегиянын башка функцияларын изилдеп көрсөңүз болот.:)

Эми, баштайлы!

1 -кадам: Биз эмнени күтөбүз?

Image
Image

Сураныч, жогорудагы видеону көрүңүз.

2 -кадам: материалдарды чогултуу

Аппараттык жана программалык камсыздоону орнотуу
Аппараттык жана программалык камсыздоону орнотуу

Бөлүктөр жана материалдар:

- Орнотулган Arduino Arduino 1.7.10 (айдоочу кол койгон) же андан жогору версиясы бар ноутбук/рабочий компьютер

- 1 POP-X2 тактасы (борттун туткасы менен)

- 1 Кабелди түшүрүү

- 4 шт. AA батареялары

3 -кадам: Аппараттык жана программалык камсыздоону орнотуу

Аппараттык жана программалык камсыздоону орнотуу
Аппараттык жана программалык камсыздоону орнотуу

1. 4 батареяны батарея кармагычтын ичине коюңуз. (Такта 7.4V максималдуу чыңалуу киргизүүнү колдойт.)

Эскертүү: Батареялардын полярдуулугун туура текшериңиз.

2. Жүктөө кабелин компьютерге жана тактага туташтырыңыз. Сураныч, жогорудагы сүрөттү караңыз.

3. Контроллер тактасын күйгүзүңүз. Көк LED индикатору күйгөнүн текшериңиз. Болбосо, сиз Arduino программалык драйверин орнотушуңуз керек.

Баса, мен Arduino 1.7.10 версиясын колдонуп жатам (айдоочу кол койгон), анткени анда POP-X2 китепканасы бар. Программаны жүктөө үчүн бул шилтемени басыңыз.

4. Куралдар> Сериялык порт> Туура COM портун тандап чыкылдатуу менен тактанын портун орнотуңуз.

5. Куралдар> Такта> POP-X2, ATMega644P @ 20MHz басуу менен тактаны орнотуңуз.

6. Такта туура туташканын камсыз кылуу үчүн демейки эскизди жүктөөгө аракет кылыңыз.

#кошуу // POP-X2 китепканасы

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

4 -кадам: Баскычты текшерүү

Knob Test
Knob Test

Негизги программаны жасоодон мурун, борттун туткасы иштеп жатканына ынанууңуз керек.

1. Топчонун үлгүлүү программасын жүктөңүз. Файл> Мисалдар> POP-X2> popx2_KnobOKTestти басыңыз

Негизги операция:

- GLCDде көрсөтүлүүчү баскычтын аналогдук маанисинин диапазону 0дөн 1000ге чейин.

- Баскыч сааттын жебеси боюнча бурулганда, GLCDде көрсөтүлгөн аналогдук мааниси жогорулайт.

- Баскыч сааттын жебесине каршы бурулганда, аналогдук мааниси GLCDге көрсөтүлөт.

5 -кадам: Программалоо

Программалоо
Программалоо
Программалоо
Программалоо

Мен булактын кодун төмөндө тиркеп койдум. Андыктан, жүктөп коюңуз.

Программаны алдын ала көрүү:

#кошуу // POP-X2 Board китепканасы

void setup () {OK (); } void loop () {int reading = map (knob (), 0, 1000, 0, 245); эгер ((окуу> = 0) && (окуу = 36) && (окуу = 71) && (окуу = 106) && (окуу = 141) && (окуу = 176) && (окуу = 211) && (окуу <= 245)){ Ак(); } glcdFillScreen (GLCD_BLACK); glcd (0, 0, "%d", окуу); }

жараксыз кызыл () {

setTextBackgroundColor (GLCD_RED); glcd (3, 2, ""); glcd (4, 2, ""); glcd (5, 2, ""); glcd (6, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

жараксыз сары () {

setTextBackgroundColor (GLCD_YELLOW); glcd (1, 8, ""); glcd (2, 8, ""); glcd (3, 8, ""); glcd (4, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

боштук жашыл () {

setTextBackgroundColor (GLCD_GREEN); glcd (3, 14, ""); glcd (4, 14, ""); glcd (5, 14, ""); glcd (6, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

жараксыз циан () {

setTextBackgroundColor (GLCD_CYAN); glcd (9, 14, ""); glcd (10, 14, ""); glcd (11, 14, ""); glcd (12, 14, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

бош көк () {

setTextBackgroundColor (GLCD_BLUE); glcd (11, 8, ""); glcd (12, 8, ""); glcd (13, 8, ""); glcd (14, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

жараксыз кызгылт () {

setTextBackgroundColor (GLCD_MAGENTA); glcd (9, 2, ""); glcd (10, 2, ""); glcd (11, 2, ""); glcd (12, 2, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

жараксыз ак () {

setTextBackgroundColor (GLCD_WHITE); glcd (6, 8, ""); glcd (7, 8, ""); glcd (8, 8, ""); glcd (9, 8, ""); setTextBackgroundColor (GLCD_WHITE); setTextColor (GLCD_VIOLET); кечигүү (1000); }

Түшүндүрмө:

1. Түстүү кутуча (көрсөтүлгөн позицияда) GLCDге мааниси туура болгондо көрсөтүлөт (төмөндөгү чектөөлөрдү текшериңиз). Программада көрсөтүлгөн түстүү кутунун координаттарын түшүнүү үчүн, жогорудагы сүрөттү караңыз.

2. Баскычтын аналогдук мааниси 0 - 1000ден 0 - 245ке чейин картага түшүрүлдү. Көрсөтүлө турган 7 түс бар; ошондуктан, ар бир түстүн 35 диапазону бар (биринчи чектөөдөн башка).

3. Чектөөлөр:

Маанинин түсү (кутуча)

0 - 35 - Кызыл

36 - 70 - Сары

71 - 105 - Жашыл

106 - 140 - Cyan

141 - 175 - Көк

176 - 210 - кызгылт

211 - 245 - Ак

Эскертүү: кутучалардын дисплейи идеалдуу эмес, анткени ал сызыктардын ортосунда боштук бар. Мен бул программада чыныгы координаттардын ордуна боштуктарды колдондум.

Ошондой эле, мен кодду оңой түшүнүү үчүн ар бир кутуга функцияларды түздүм.

Сунушталууда: