Мазмұны:

LCD 1602 Arduino Uno R3: 6 қадаммен
LCD 1602 Arduino Uno R3: 6 қадаммен

Бейне: LCD 1602 Arduino Uno R3: 6 қадаммен

Бейне: LCD 1602 Arduino Uno R3: 6 қадаммен
Бейне: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, Қараша
Anonim
LCD 1602 Arduino Uno R3 көмегімен
LCD 1602 Arduino Uno R3 көмегімен

Бұл сабақта біз LCD1602 көмегімен символдар мен жолдарды көрсетуді үйренеміз. LCD1602 немесе 1602 символдық типті сұйық кристалды дисплей-бұл әріптерді, сандарды, таңбаларды және т.б. көрсетуге арналған нүктелік матрицалық модуль. Ол 5х7 немесе 5х11 нүктелік матрицалық позициялардан тұрады; әр позиция бір таңбаны көрсете алады. Екі таңбаның арасындағы нүкте мен жолдар арасындағы бос орын бар, осылайша таңбалар мен сызықтарды ажыратады. 1602 саны дисплейде 2 жолды көрсетуге болады және әрқайсысында 16 таңбаны білдіреді. Енді толығырақ тексерейік!

1 -қадам: компоненттер:

- Arduino Uno тақтасы * 1

- USB кабелі * 1

- LCD 1602 *1

- потенциометр (50kΩ)* 1

- Нан тақтасы * 1

- Өткізгіш сымдар

2 -қадам: принцип

Әдетте, LCD1602 -де параллель порттар бар, яғни

бір уақытта бірнеше түйреуіштерді басқарады. LCD1602 сегіз порттық және төрт порттық қосылымдарға жіктелуі мүмкін. Егер сегіз портты байланыс қолданылса, онда Arduino Uno тақтасының барлық цифрлық порттары толығымен дерлік бос. Егер сіз басқа сенсорларды қосқыңыз келсе, онда порттар болмайды. Сондықтан мұнда жақсы қолдану үшін төрт порттық байланыс қолданылады.

LCD1602 түйреуіштері және олардың функциялары

VSS: жерге қосылған

VDD: +5В қуат көзіне қосылған

VO: контрастты реттеу үшін

RS: СКД жадында деректерді жазатын жерді басқаратын регистрді таңдау түйреуі. Сіз экранда не барын немесе деректер регистрін таңдай аласыз, онда СКД контроллері ары қарай не істеу керектігі туралы нұсқауларды іздейді.

R/W: оқу мен жазу режимін таңдау үшін оқу/жазу түйреуі

E: Жоғары деңгей (1) қабылданған кезде ақпаратты оқитын қосқыш түйреуіш. Нұсқаулар сигнал жоғары деңгейден төмен деңгейге ауысқанда орындалады.

D0-D7: мәліметтерді оқу және жазу

A және K: СКД артқы жарығын басқаратын түйреуіштер. K -ны GND -ге және А -ны 3.3v -ге қосыңыз. Артқы жарығын ашыңыз, сіз салыстырмалы түрде қараңғы ортада айқын кейіпкерлерді көресіз.

3 -қадам: Схемалық диаграмма

Схемалық диаграмма
Схемалық диаграмма

4 -қадам: процедуралар

K -ны GND және A -ға 3,3 В -ке қосыңыз, содан кейін LCD1602 артқы жарығы қосылады. VSS -ті GND -ге, ал LCD1602 -ді қуат көзіне қосыңыз. VO потенциометрдің ортаңғы түйреуішіне қосыңыз - оның көмегімен экран дисплейінің контрастын реттеуге болады. RS -ті D4 -ке және R/W -ге GND -ге қосыңыз, яғни LCD1602 -ге кейіпкерлерді жаза аласыз. Pin E-ге қосылыңыз және LCD1602-де көрсетілетін таңбалар D4-D7 арқылы басқарылады. Бағдарламалау үшін ол функция кітапханаларын шақыру арқылы оңтайландырылған.

1 -қадам:

Схеманы құрыңыз.

2 -қадам:

Кодты https://github.com/primerobotics/Arduino сайтынан жүктеп алыңыз

3 -қадам:

Эскизді Arduino Uno тақтасына жүктеңіз

Кодты басқару тақтасына жүктеу үшін Жүктеу белгішесін басыңыз.

Егер терезенің төменгі жағында «Жүктеу аяқталды» пайда болса, бұл эскиз сәтті жүктелгенін білдіреді.

Ескертпе: LCD1602 потенциометрін ол анық көрсетілмейінше реттеу қажет болуы мүмкін.

5 -қадам: код

Код
Код

// LCD1602

// Сіз қазір керексіз

LCD1602 экранында «PRIMEROBOTICS» және «сәлем, әлем» ағып жатқан кейіпкерлерді көріңіз.

// Веб -сайт: www.primerobotics.in

#қосу

// кітапхана кодын енгізіңіз

/**********************************************************/

шар

array1 = «PrimeRobotics»; // СКД -де басып шығарылатын жол

шар

array2 = «сәлем, әлем!»; // СКД -де басып шығарылатын жол

int tim =

250; // кідіріс уақытының мәні

// кітапхананы инициализациялау

интерфейс түйреуіштерінің сандарымен

LiquidCrystal

lcd (4, 6, 10, 11, 12, 13);

/*********************************************************/

жарамсыз орнату ()

{

lcd.begin (16, 2); // СКД бағандар санын орнатыңыз және

қатарлар:

}

/*********************************************************/

бос цикл ()

{

lcd.setCursor (15, 0); // курсорды 15 бағанның 0 жолына қойыңыз

for (int positionCounter1 = 0;

positionCounter1 <26; positionCounter1 ++)

{

lcd.scrollDisplayLeft (); // Дисплей мазмұнын айналдырады

сол жақта бос орын.

lcd.print (массив1 [positionCounter1]); // СКД -ге хабарды басып шығарыңыз.

кешіктіру (уақыт); // 250 микросекунд күтіңіз

}

lcd.clear (); // СКД экранды тазартады және экранды орналастырады

меңзер жоғарғы сол жақ бұрышта.

lcd.setCursor (15, 1); // курсорды 15 -бағанның 1 -жолына қойыңыз

for (int positionCounter2 = 0;

positionCounter2 <26; positionCounter2 ++)

{

lcd.scrollDisplayLeft (); // Дисплей мазмұнын айналдырады

сол жақта бос орын.

lcd.print (массив2 [positionCounter2]); // СКД -ге хабарды басып шығарыңыз.

кешіктіру (уақыт); // 250 микросекунд күтіңіз

}

lcd.clear (); // СКД экранды тазартады және экранды орналастырады

меңзер жоғарғы сол жақ бұрышта.

}

/**********************************************************/

Ұсынылған: