Სარჩევი:

LCD 1602 Arduino Uno R3– ით: 6 ნაბიჯი
LCD 1602 Arduino Uno R3– ით: 6 ნაბიჯი

ვიდეო: LCD 1602 Arduino Uno R3– ით: 6 ნაბიჯი

ვიდეო: LCD 1602 Arduino Uno R3– ით: 6 ნაბიჯი
ვიდეო: How to use LCD LCD1602 with I2C module for Arduino - Robojax 2024, ნოემბერი
Anonim
LCD 1602 Arduino Uno R3– ით
LCD 1602 Arduino Uno R3– ით

ამ გაკვეთილზე ჩვენ ვისწავლით თუ როგორ გამოვიყენოთ LCD1602 სიმბოლოების და სიმების ჩვენების მიზნით. LCD1602, ან 1602 ხასიათის ტიპის თხევადი ბროლის ჩვენება, არის ერთგვარი წერტილოვანი მატრიცა, რომელიც აჩვენებს ასოებს, რიცხვებს და სიმბოლოებს და ა. იგი შედგება 5x7 ან 5x11 წერტილოვანი მატრიცის პოზიციებისაგან; თითოეულ პოზიციას შეუძლია აჩვენოს ერთი სიმბოლო. ორ წერტილს შორის არის წერტილის სიმაღლე და ხაზებს შორის სივრცე, რითაც ჰყოფს სიმბოლოებს და ხაზებს. ნომერი 1602 ნიშნავს ეკრანზე, 2 სტრიქონის ჩვენება და თითოეული 16 სიმბოლო. ახლა მოდით შევამოწმოთ უფრო დეტალურად!

ნაბიჯი 1: კომპონენტები:

- Arduino Uno დაფა * 1

- USB კაბელი * 1

- LCD1602 *1

- პოტენომეტრი (50kΩ)* 1

- პურის დაფა * 1

- ჯუმბერის მავთულები

ნაბიჯი 2: პრინციპი

საერთოდ, LCD1602– ს აქვს პარალელური პორტები, ანუ ის

გააკონტროლებდა რამდენიმე ქინძისთავს ერთდროულად. LCD1602 შეიძლება დაიყოს რვა პორტიან და ოთხ პორტულ კავშირებად. თუ რვა პორტიანი კავშირი გამოიყენება, მაშინ Arduino Uno დაფის ყველა ციფრული პორტი თითქმის მთლიანად დაკავებულია. თუ გსურთ მეტი სენსორის დაკავშირება, პორტები ხელმისაწვდომი არ იქნება. აქედან გამომდინარე, ოთხი პორტის კავშირი აქ გამოიყენება უკეთესი გამოყენებისთვის.

LCD1602 ქინძისთავები და მათი ფუნქციები

VSS: მიწასთან არის დაკავშირებული

VDD: დაკავშირებულია +5V კვების ბლოკთან

VO: კონტრასტის შესაცვლელად

RS: რეგისტრაციის ამორჩეული პინი, რომელიც აკონტროლებს თუ სად წერთ მონაცემებს LCD მეხსიერებაში. თქვენ შეგიძლიათ აირჩიოთ მონაცემთა რეესტრი, რომელიც შეიცავს ეკრანზე არსებულ ინფორმაციას, ან ინსტრუქციის რეგისტრატორი, სადაც LCD კონტროლერი ეძებს მითითებებს, თუ რა უნდა გააკეთოს შემდეგ.

R/W: წაკითხვის/ჩაწერის პინი კითხვისა და წერის რეჟიმებს შორის ასარჩევად

E: დამხმარე პინი, რომელიც კითხულობს ინფორმაციას მაღალი დონის (1) მიღებისას. ინსტრუქციები გადის, როდესაც სიგნალი იცვლება მაღალი დონიდან დაბალ დონეზე.

D0-D7: მონაცემების წაკითხვა და ჩაწერა

A და K: ქინძისთავები, რომლებიც აკონტროლებენ LCD განათებას. შეაერთეთ K GND– თან და A 3.3 ვ. გახსენით უკანა შუქი და დაინახავთ ნათელ სიმბოლოებს შედარებით ბნელ გარემოში.

ნაბიჯი 3: სქემატური დიაგრამა

სქემატური დიაგრამა
სქემატური დიაგრამა

ნაბიჯი 4: პროცედურები

შეაერთეთ K GND და A 3.3 V– თან, შემდეგ კი LCD1602– ის უკანა შუქი ჩართული იქნება. შეაერთეთ VSS GND- თან და LCD1602 დენის წყაროსთან. შეაერთეთ VO პოტენციომეტრის შუა პინთან - მასთან ერთად შეგიძლიათ შეცვალოთ ეკრანის ჩვენების კონტრასტი. შეაერთეთ RS D4 და R/W პინი GND– თან, რაც ნიშნავს რომ შემდეგ შეგიძლიათ ჩაწეროთ სიმბოლოები LCD1602– ზე. შეაერთეთ E pin6- თან და LCD1602- ზე გამოსახული სიმბოლოები კონტროლდება D4-D7- ით. პროგრამირებისთვის, ის ოპტიმიზირებულია ფუნქციური ბიბლიოთეკების გამოძახებით.

Ნაბიჯი 1:

ააშენეთ წრე.

ნაბიჯი 2:

ჩამოტვირთეთ კოდი https://github.com/primerobotics/Arduino– დან

ნაბიჯი 3:

ატვირთეთ ესკიზი Arduino Uno დაფაზე

დააწკაპუნეთ ატვირთვის ხატულაზე, რომ ატვირთოთ კოდი საკონტროლო დაფაზე.

თუ "შესრულებულია ატვირთვა" გამოჩნდება ფანჯრის ბოლოში, ეს ნიშნავს, რომ ესკიზი წარმატებით აიტვირთა.

შენიშვნა: შეიძლება დაგჭირდეთ პოტენომეტრის მორგება LCD1602– ზე, სანამ ის მკაფიოდ გამოჩნდება.

ნაბიჯი 5: კოდი

კოდი
კოდი

// LCD1602

// ახლავე უნდა

იხილეთ თქვენს LCD1602 ეკრანზე გამოსახული სიმბოლოები "PRIMEROBOTICS" და "გამარჯობა, სამყარო"

// ელ.ფოსტა: [email protected]

// ვებგვერდი: www.primerobotics.in

#ჩართეთ

// შეიტანეთ ბიბლიოთეკის კოდი

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

ნახ

array1 = "PrimeRobotics"; // სიმები LCD– ზე დასაბეჭდად

ნახ

array2 = "გამარჯობა, სამყარო!"; // სიმები LCD– ზე დასაბეჭდად

int tim =

250; // შეფერხების დროის მნიშვნელობა

// ბიბლიოთეკის ინიციალიზაცია

ინტერფეისის ქინძისთავების რიცხვებით

LiquidCrystal

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

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

ბათილად დაყენება ()

{

lcd. დასაწყისი (16, 2); // დააყენეთ LCD სვეტების რაოდენობა და

რიგები:

}

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

ბათილი მარყუჟი ()

{

lcd.setCursor (15, 0); // დააყენეთ კურსორი სვეტზე 15, სტრიქონი 0

for (int positionCounter1 = 0;

positionCounter1 <26; positionCounter1 ++)

{

lcd.scrollDisplayLeft (); // გადაახვევს ჩვენების ერთ შინაარსს

სივრცე მარცხნივ.

lcd.print (მასივი 1 [positionCounter1]); // დაბეჭდეთ შეტყობინება LCD– ზე.

დაგვიანება (დრო); // დაელოდეთ 250 მიკროწამს

}

lcd. წმინდა (); // ასუფთავებს LCD ეკრანს და პოზიციონირებს

კურსორი ზედა მარცხენა კუთხეში.

lcd.setCursor (15, 1); // დააყენეთ კურსორი სვეტზე 15, სტრიქონი 1

for (int positionCounter2 = 0;

positionCounter2 <26; positionCounter2 ++)

{

lcd.scrollDisplayLeft (); // გადახვევს ეკრანის შინაარსს

სივრცე მარცხნივ.

lcd.print (მასივი 2 [positionCounter2]); // დაბეჭდეთ შეტყობინება LCD– ზე.

დაგვიანება (დრო); // დაელოდეთ 250 მიკროწამს

}

lcd. წმინდა (); // ასუფთავებს LCD ეკრანს და პოზიციონირებს

კურსორი ზედა მარცხენა კუთხეში.

}

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

გირჩევთ: