Յուրաքանչյուր ռադիոսիրող, որոշ պարզ DIY աշխատանքից հետո, հասնում է սենսորների և կոճակների միջոցով ինչ-որ մեծ բան կառուցելու նպատակին: Ի վերջո, շատ ավելի հետաքրքիր է տվյալների ցուցադրումը էկրանին, քան նավահանգստի մոնիտորի վրա: Բայց հետո հարց է առաջանում՝ ո՞ր ցուցադրումն ընտրել։ Իսկ ընդհանրապես, ինչպե՞ս միացնել այն, ի՞նչ է անհրաժեշտ միանալու համար։ Այս հարցերի պատասխանները կքննարկվեն այս հոդվածում։
LCD 1602
Էկրանների բազմաթիվ տարբերակների շարքում ես կցանկանայի առանձնացնել LCD1602 էկրանը՝ հիմնված HD4478 կարգավորիչի վրա: Կա այս էկրանը երկու գույներով՝ սպիտակ տառեր կապույտ ֆոնի վրա, սև տառեր դեղին ֆոնի վրա: LCD 1602-ը Arduino-ին միացնելը նույնպես որևէ խնդիր չի առաջացնի, քանի որ կա ներկառուցված գրադարան, և ձեզ հարկավոր չէ լրացուցիչ որևէ բան ներբեռնել: Ցուցասարքերը տարբերվում են ոչ միայն գնով, այլև չափսերով։ Հաճախ ռադիոսիրողները օգտագործում են 16x 2, այսինքն՝ 16 նիշից բաղկացած 2 տող: Բայց կա նաև 20 x 4, որտեղ կա 20 նիշից բաղկացած 4 տող: Չափերն ու գույնը ոչ մի դեր չեն խաղում LCD 1602 դիսփլեյը Arduno-ին միացնելու հարցում, դրանք միացված են նույն կերպ։ Դիտման անկյունը 35 աստիճան է, էկրանի արձագանքման ժամանակը 250 ms: Կարող է աշխատել -20-ից մինչև 70 աստիճան ջերմաստիճանում: Աշխատելիս այն օգտագործում է 4 մԱ էկրանի համար և 120 մԱ՝ հետին լույսի համար։
Որտե՞ղ է այն օգտագործվում?
Այս ցուցադրումն ունի իր ժողովրդականությունը ոչ միայն ռադիոսիրողների, այլև խոշոր արտադրողների շրջանում: Օրինակ, տպիչները, սուրճի մեքենաները նույնպես օգտագործում են LCD1602: Դա պայմանավորված է իր ցածր գնով, այս ցուցադրումն արժե 200-300 ռուբլի չինական կայքերում: Արժե այնտեղ գնել, քանի որ մեր խանութներում այս ցուցադրման լուսանցքները շատ բարձր են։
Միացեք Arduino-ին
LCD 1602-ը Arduino Nano-ին և Uno-ին միացնելը ոչնչով չի տարբերվում: Էկրանի հետ կարող եք աշխատել երկու ռեժիմով՝ 4 բիթ և 8: 8 բիթանոց էկրանով աշխատելիս օգտագործվում են և՛ ստորին, և՛ ավելի բարձր բիթերը, իսկ 4 բիթանոցի դեպքում՝ միայն ստորինները: 8-բիթով աշխատելը առանձնահատուկ իմաստ չունի, քանի որ միանալու համար կավելացվի ևս 4 կոնտակտ, ինչը նպատակահարմար չէ, քանի որ արագությունը ավելի բարձր չի լինի, էկրանի թարմացման սահմանաչափը վայրկյանում 10 անգամ է: Ընդհանուր առմամբ, LCD 1602-ը Arduino-ին միացնելու համար շատ լարեր են օգտագործվում, ինչը որոշակի անհարմարություններ է առաջացնում, բայց կան հատուկ վահաններ, բայց դրա մասին ավելի ուշ: Լուսանկարը ցույց է տալիս էկրանի միացումը Arduino Uno-ին՝
Կոդի օրինակ՝
ներառել //Ավելացնել պահանջվող գրադարան LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){lcd.begin(16, 2); // Սահմանել էկրանի չափը lcd.setCursor(0, 0); // Կուրսորը դրեք 1-ին տողի սկզբում lcd.print("Բարև աշխարհ!"); // Ցուցադրել տեքստային lcd setCursor(0, 1); // Կուրսորը դրեք 2-րդ տողի սկզբին lcd.print("fb.ru"); // Արդյունք տեքստ } void loop(){ }
Ի՞նչ է անում կոդը: Նախևառաջ միացված է էկրանի հետ աշխատելու գրադարանը։ Ինչպես նշվեց վերևում, այս գրադարանն արդեն ներառված է Arduino IDE-ում, և ձեզ հարկավոր չէ այն լրացուցիչ ներբեռնել և տեղադրել: Հաջորդը սահմանվում են կոնտակտները, որոնք միացված են կապումներին՝ համապատասխանաբար RS, E, DB4, DB5, DB6, DB7: Այնուհետև սահմանվում է էկրանի չափը: Քանի որ մենք աշխատում ենք 16 նիշ և 2 տող ունեցող տարբերակի հետ, գրում ենք նման արժեքներ։ Մենք կուրսորը դնում ենք առաջին տողի սկզբում և ցուցադրում մեր առաջին տեքստը Hello World: Հաջորդը, կուրսորը դրեք երկրորդ տողի վրա և ցուցադրեք կայքի անունը: Այսքանը: 1602 LCD-ը Arduino Uno-ին միացնելը դիտարկվել է:
Ի՞նչ է I2C-ը և ինչու է այն անհրաժեշտ:
Ինչպես նշվեց վերևում, էկրանը միացնելը պահանջում է շատ քորոցներ: Օրինակ, մի քանի սենսորների և LCD էկրանի հետ աշխատելիս 1602 կոնտակտները կարող են պարզապես բավարար չլինել: Հաճախ ռադիոսիրողները օգտագործում են Uno կամ Nano տարբերակները, որտեղ շատ կոնտակտներ չկան։ Հետո մարդիկ եկան հատուկ վահաններով։ Օրինակ, I2C. Այն թույլ է տալիս միացնել էկրանը ընդամենը 4 կապում: Սա երկու անգամ պակաս է։ I2C մոդուլը վաճառվում է և՛ առանձին, որտեղ դուք պետք է ինքներդ զոդեք, և՛ արդեն զոդվածLCD էկրան 1602.
Միացում I2C մոդուլի հետ
LCD 1602-ը Arduino Nano-ին I2C-ով միացնելը քիչ տեղ է գրավում, ընդամենը 4 պին. հող, հզորություն և 2 տվյալների ելք: Մենք հոսանքն ու հողը միացնում ենք Arduino-ի համապատասխանաբար 5V-ին և GND-ին: Մնացած երկու կոնտակտները՝ SCL-ը և SDA-ն միացված են ցանկացած անալոգային կապին: Լուսանկարում կարող եք տեսնել lcd 1602-ը arduino-ին I2C մոդուլով միացնելու օրինակ՝
Ծրագրի կոդը
Եթե առանց մոդուլի էկրանով աշխատելու համար անհրաժեշտ էր օգտագործել միայն մեկ գրադարան, ապա մոդուլի հետ աշխատելու համար անհրաժեշտ է երկու գրադարան: Դրանցից մեկն արդեն Arduino IDE - Wire-ում է: Մեկ այլ գրադարան՝ LiquidCrystal I2C-ը, պետք է առանձին ներբեռնվի և տեղադրվի: Գրադարանը Arduino-ում տեղադրելու համար ներբեռնված արխիվի բովանդակությունը պետք է վերբեռնվի Libraries արմատային պանակ: Կոդի օրինակ՝ օգտագործելով I2C:
ներառել ներառել LiquidCrystal_I2C LCD (0x27, 16, 2); // Տեղադրեք ցուցադրման void setup() {lcd.init(); lcd.backlight();// Միացնել էկրանի հետին լույսը lcd.print("FB.ru"); lcd.setCursor(8, 1); lcd.print («LCD 1602»); } void loop() { // Կուրսորը դնել երկրորդ տողի և զրոյական նիշի վրա: lcd.setCursor (0, 1); // Տպել վայրկյանների քանակը, քանի որ arduino-ն սկսել է lcd.print(millis()/1000); }
Ինչպես տեսնում եք, կոդը գրեթե նույնն է։
Ինչպե՞ս կարող եմ ավելացնել իմ սեփական խորհրդանիշը:
Այս էկրանների խնդիրն այն է, որ չկաաջակցություն կիրիլիցայի և խորհրդանիշների համար: Օրինակ, դուք պետք է բեռնեք որոշ նիշ էկրանի մեջ, որպեսզի այն կարողանա արտացոլել այն: Դա անելու համար էկրանը թույլ է տալիս ստեղծել ձեր կերպարներից մինչև 7-ը: Ներկայացրե՛ք աղյուսակը՝
0 | 0 | 0 | 1 | 0 |
0 | 0 | 0 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
0 | 0 | 0 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 0 |
0 | 0 | 0 | 0 | 0 |
Եթե 0 - այնտեղ ոչինչ չկա, եթե 1 - դա ստվերված տարածք է: Վերևի օրինակում կարող եք տեսնել «ժպտացող ժպտացող» կերպարի ստեղծումը: Օգտագործելով օրինակ ծրագիր Arduino-ում, այն կունենա հետևյալ տեսքը՝
include include // Ներառել պահանջվող գրադարանը // Ժպիտի նշանի բիթդիմակ բայթ ժպիտ[8]={ B00010, B00001, B11001, B00001, B11001, B00001, B00010, LiquidCrystal LCD (7, 6, 5, 4, 3, 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){lcd.begin(16, 2); // Սահմանել էկրանի չափը lcd.createChar(1, ժպտալ); // Ստեղծել նիշ համար 1 lcd.setCursor(0, 0); // Կուրսորը դրեք 1-ին տողի սկզբում lcd.print("\1"); // Ցուցադրել սմայլը (նիշերի թիվ 1) - «\1» } void loop(){ }
Ինչպես տեսնում եք, ստեղծվել էբիտդիմակը նույնն է, ինչ աղյուսակը: Ստեղծվելուց հետո այն կարող է ցուցադրվել որպես փոփոխական: Հիշեք, որ հիշողության մեջ կարելի է պահել միայն 7 նիշ: Սկզբունքորեն սա բավական է։ Օրինակ, եթե ցանկանում եք ցույց տալ աստիճանի նշանը։
Խնդիրներ, որտեղ էկրանը կարող է չաշխատել
Լինում են դեպքեր, երբ էկրանը չի աշխատում: Օրինակ՝ այն միանում է, բայց նիշեր չի ցուցադրում։ Կամ ընդհանրապես չի միանում։ Նախ, տեսեք, արդյոք ճիշտ եք միացրել կոնտակտները: Եթե նախկինում lcd 1202-ը միացնում էիք Arduino-ին առանց I2C-ի, ապա շատ հեշտ է խճճվել լարերի մեջ, ինչը կարող է հանգեցնել էկրանի սխալ աշխատանքին։ Դուք նաև պետք է համոզվեք, որ էկրանի կոնտրաստը մեծանում է, քանի որ նվազագույն հակադրության դեպքում նույնիսկ տեսանելի չէ LCD 1602-ը միացված է, թե ոչ: Եթե դա չի օգնում, ապա գուցե խնդիրը կարող է ընկած լինել կոնտակտների զոդման մեջ, սա I2C մոդուլի օգտագործման ժամանակ է: Բացի այդ, էկրանի չաշխատելու ընդհանուր պատճառը I2C հասցեի սխալ կարգավորումն է: Փաստն այն է, որ արտադրողները շատ են, և նրանք կարող են այլ հասցե սահմանել, դուք պետք է այն ուղղեք այստեղ՝
LiquidCrystal_I2C LCD (0x27, 16, 2);
Փակագծերում կարող եք տեսնել երկու արժեք՝ 0x27 և 16, 2 (16, 2-ը ցուցադրման չափն է, իսկ 0x27-ը՝ I2C հասցեն): Այս արժեքների փոխարեն կարող եք փորձել տեղադրել 0x37 կամ 0x3F: Դե, մեկ այլ պատճառ պարզապես անսարք LCD 1602-ն է: Հաշվի առնելով, որ Arduino-ի համար գրեթե ամեն ինչ արտադրված է Չինաստանում, դուք չեք կարող 100% վստահ լինել, որ գնվածըապրանքը թերի չէ։
LCD 1602 առավելություններն ու թերությունները
Եկեք նայենք LCD 1602-ի դրական և բացասական կողմերին:
Կողմ
- Գին. Այս մոդուլը կարելի է ձեռք բերել շատ մատչելի գնով չինական խանութներից։ Գինը 200-300 ռուբլի է: Երբեմն նույնիսկ վաճառվում է I2C մոդուլով:
- Հեշտ է միանալ: Հավանաբար այս օրերին ոչ ոք չի միացնում LCD 1602 առանց I2C: Իսկ այս մոդուլի հետ կապը վերցնում է ընդամենը 4 կապ, լարերի «ցանցեր» չեն լինի։
- Ծրագրավորում. Պատրաստի գրադարանների շնորհիվ այս մոդուլի հետ աշխատելը հեշտ է, բոլոր գործառույթներն արդեն գրանցված են։ Եվ եթե ձեզ անհրաժեշտ է ավելացնել ձեր կերպարը, ապա դա տևում է ընդամենը մի քանի րոպե:
Դեմ
Հազարավոր ռադիոսիրողների կողմից օգտագործման ընթացքում մեծ մինուսներ չեն հայտնաբերվել, միայն ամուսնություն գնելու դեպքեր կան, քանի որ հիմնականում օգտագործվում են չինական ցուցադրման տարբերակներ։
Այս հոդվածում քննարկվեց, թե ինչպես կարելի է միացնել LCD 1602 էկրանը Arduino-ին, ինչպես նաև ներկայացրեց այս էկրանի հետ աշխատելու օրինակելի ծրագրեր: Այն իսկապես լավագույններից մեկն է իր կատեգորիայում, ոչ միայն այն է, որ հազարավոր ռադիոսիրողներ ընտրում են այն իրենց նախագծերի համար: