குறியீட்டை தேடு

ESP32 பயிற்சி 11/55 - ESP32 உடன் LCD1602 LCD2004 ஐப் பயன்படுத்துதல் - SunFounder இன் ESP32 IoT கற்றல் கிட்

ESP32 பயிற்சி 11/55 - ESP32 உடன் LCD1602 LCD2004 ஐப் பயன்படுத்துதல் - SunFounder இன் ESP32 IoT கற்றல் கிட்

இந்த டுடோரியலில், ESP32 மைக்ரோகண்ட்ரோலருடன் LCD1602 மற்றும் LCD2004 ஐ எவ்வாறு பயன்படுத்துவது என்பதை ஆராய்வோம். இந்த LCD திரைகள் உரை மற்றும் பிற தகவல்களை திறம்பட காட்ட அனுமதிக்கின்றன, காட்சி பின்னூட்டத்துடன் எங்கள் திட்டங்களை மேம்படுத்துகின்றன. வாசிப்புத்திறனை உறுதிப்படுத்த மாறுபாட்டை (contrast) எவ்வாறு சரிசெய்வது என்பதையும் நாங்கள் உள்ளடக்குவோம்.

ESP32, SunFounder ESP32 IoT கற்றல் கிட்டின் ஒரு பகுதியாகும், இது உள்ளமைக்கப்பட்ட Wi-Fi மற்றும் ப்ளூடூத் திறன்களைக் கொண்டுள்ளது, இது பல்வேறு IoT பயன்பாடுகளுக்கு சக்திவாய்ந்த கருவியாக அமைகிறது. LCD ஐ ESP32 உடன் இணைப்பதன் மூலம், எங்கள் குறியீட்டிலிருந்து செய்திகள் அல்லது தரவு வெளியீடுகளை எளிதாகக் காட்டலாம், இது எங்கள் திட்டங்களை மேலும் ஊடாடும் மற்றும் பயனர் நட்புடன் ஆக்குகிறது (வீடியோவில் 00:30).

வன்பொருள் விளக்கம்

நாம் பயன்படுத்தும் முக்கிய கூறுகளில் ESP32 மைக்ரோகண்ட்ரோலர் மற்றும் LCD1602 அல்லது LCD2004 காட்சி தொகுதி ஆகியவை அடங்கும். ESP32 எங்கள் திட்டத்தின் மூளையாக செயல்படும், உள்ளீடுகளை செயலாக்கி, LCD காட்சி உட்பட வெளியீடுகளை கட்டுப்படுத்தும்.

LCD தொகுதி I2C வழியாக தொடர்பு கொள்கிறது, இது தொடர்புக்கு இரண்டு தரவு பின்களை (SDA மற்றும் SCL) மட்டுமே பயன்படுத்துவதன் மூலம் வயரிங்கை எளிதாக்குகிறது, மின்சாரம் மற்றும் தரை இணைப்புகளுடன். இந்த அமைப்பு பல பின்களை இணைப்பதன் சிக்கலை கணிசமாக குறைக்கிறது, இது சுத்தமான மற்றும் நிர்வகிக்கக்கூடிய சுற்றமைப்பை அனுமதிக்கிறது.

டேட்டாஷீட் விவரங்கள்

உற்பத்தியாளர் SunFounder
பகுதி எண் LCD1602
லாஜிக்/IO மின்னழுத்தம் 5 V
வழங்கல் மின்னழுத்தம் 5 V
காட்சி அளவு 16 x 2 எழுத்துகள்
பின்னொளி ஆம்
இடைமுகம் I2C
பரிமாணங்கள் 80 x 36 மிமீ
குறிப்புகள் / மாறுபாடுகள் பொதுவாக I2C முகவரி 0x27 உடன் பயன்படுத்தப்படுகிறது

 

  • சேதத்தைத் தடுக்க சரியான மின்னழுத்த வழங்கலை (5 V) உறுதி செய்யவும்.
  • I2C வரிகளில் குறுக்கீட்டைக் குறைக்க குறுகிய கம்பிகளைப் பயன்படுத்தவும்.
  • உகந்த மாறுபாடு தெரிவுநிலைக்கு பொட்டென்டியோமீட்டரை சரிசெய்யவும்.
  • காட்சி துவக்கப்படாவிட்டால் I2C முகவரியை சரிபார்க்கவும் (பொதுவான முகவரிகள்: 0x27, 0x3F).
  • ஒன்றுடன் ஒன்று சேர்வதைத் தவிர்க்க செய்திகளைப் புதுப்பிக்கும் முன் காட்சியை அழிக்கவும்.

வயரிங் வழிமுறைகள்

ESP32-11_LCD-wiring-schematic
ESP32-11_LCD-wiring

LCD1602 ஐ ESP32 உடன் இணைக்க, முதலில் LCD இன் தரை பின்னை ESP32 இன் தரை பின்னுடன் இணைக்கவும். பின்னர், LCD இன் VCC பின்னை ESP32 இன் 5V வெளியீட்டுடன் இணைக்கவும். I2C தொடர்புக்கு, LCD இன் SDA பின்னை ESP32 இன் பின் 21 உடன் இணைக்கவும், மேலும் LCD இன் SCL பின்னை ESP32 இன் பின் 22 உடன் இணைக்கவும். தொடர்பு சிக்கல்களைத் தவிர்க்க இணைப்புகள் பாதுகாப்பாக இருப்பதை உறுதி செய்யவும்.

ESP32 3.3V லாஜிக் அளவுகளில் இயங்கினாலும், LCD1602 சரியான செயல்பாட்டிற்கு 5V தேவைப்படுகிறது என்பதை கவனத்தில் கொள்ள வேண்டும். எனவே, LCD ஐ சேதப்படுத்தாமல் இருக்க சரியான மின்னழுத்த வழங்கலைப் பயன்படுத்துகிறீர்கள் என்பதை உறுதிப்படுத்தவும். நீங்கள் வேறு LCD அளவைப் பயன்படுத்தினால், I2C முகவரி மற்றும் விவரக்குறிப்புகளின் அடிப்படையில் வயரிங்கை அதற்கேற்ப சரிசெய்யவும்.

குறியீடு எடுத்துக்காட்டுகள் & விளக்கம்

குறியீட்டில், I2C தொடர்பு மற்றும் LCD க்கு தேவையான நூலகங்களைச் சேர்ப்பதன் மூலம் தொடங்குகிறோம். I2C முகவரி 0x27 ஐப் பயன்படுத்தி LCD இன் ஒரு நிகழ்வை உருவாக்கி, அது 16 நெடுவரிசைகள் மற்றும் 2 வரிசைகளைக் கொண்டுள்ளது என்பதைக் குறிப்பிடுகிறோம்.

#include  
#include 

LiquidCrystal_I2C lcd(0x27,16,2);  // 16 எழுத்துகள் மற்றும் 2 வரி காட்சிக்கு LCD முகவரியை 0x27 ஆக அமைக்கவும்

இந்த அமைப்பு LCD ஐ எளிதாக கட்டுப்படுத்த அனுமதிக்கிறது. setup() செயல்பாட்டில், LCD ஐ துவக்கி பின்னொளியை இயக்குகிறோம், பின்னர் வரவேற்பு செய்தியை அச்சிடுகிறோம்.

void setup()
{
  lcd.init(); // LCD ஐ துவக்கவும் 
  lcd.backlight(); // LCD பின்னொளியை இயக்குகிறது.
  lcd.print("Hello, world!");   // LCD இல் ஒரு செய்தியை அச்சிடவும்.
  delay(3000);
}

loop() செயல்பாட்டில், காட்சியை அழித்து, கர்சர் நிலையை அமைத்து, தற்போதைய எண்ணிக்கை மதிப்பை அச்சிடுவதன் மூலம் தொடர்ந்து புதுப்பிக்கிறோம். LCD எவ்வாறு மாறும் தகவலை இயக்கமாகக் காட்ட முடியும் என்பதை இது நிரூபிக்கிறது.

void loop()
{
  lcd.clear(); 
  lcd.setCursor(0, 0); // கர்சர் நிலையை முதல் வரிசை மற்றும் முதல் நெடுவரிசைக்கு (0, 0) அமைக்கிறது.
  lcd.print("COUNT: ");
  lcd.print(count); // count மாறியின் தற்போதைய மதிப்பை அச்சிடுகிறது.
  delay(1000);
  count++; // கவுண்டரை 1 ஆல் அதிகரிக்கிறது. 
}

முழு குறியீடு கட்டுரைக்கு கீழே ஏற்றப்படும், அங்கு முழுமையான செயலாக்கம் மற்றும் உங்கள் திட்டத்திற்காக சேர்க்கப்பட்ட கூடுதல் செயல்பாடுகளை நீங்கள் காணலாம்.

நிரூபணம் / என்ன எதிர்பார்க்கலாம்

எல்லாம் இணைக்கப்பட்டு குறியீடு பதிவேற்றப்பட்டவுடன், LCD ஒவ்வொரு வினாடியும் அதிகரிக்கும் கவுண்டரைத் தொடங்குவதற்கு முன் "Hello, world!" ஐ 3 வினாடிகளுக்கு காட்ட வேண்டும். உரை எளிதில் படிக்கக்கூடியதாக இருப்பதை உறுதிசெய்ய பொட்டென்டியோமீட்டரைப் பயன்படுத்தி மாறுபாட்டை சரிசெய்யலாம் (வீடியோவில் 08:45).

ஏதேனும் சிக்கல்களை எதிர்கொண்டால், வயரிங் இணைப்புகளை சரிபார்த்து, சரியான I2C முகவரி பயன்படுத்தப்படுவதை உறுதி செய்யவும். ஒரு பொதுவான தவறு, LCD இன் I2C முகவரியை குறியீட்டில் அமைக்கப்பட்டுள்ளதுடன் பொருத்தாமல் இருப்பது, இது காட்சி சரியாக செயல்படுவதைத் தடுக்கலாம்.

வீடியோ நேர முத்திரைகள்

  • 00:00 தொடக்கம்
  • 1:47 LCD அறிமுகம்
  • 3:26 ஆவணப்படுத்தல் பக்கம்
  • 5:06 ESP32 உடன் LCD ஐ எவ்வாறு இணைப்பது
  • 9:07 Arduino இல் ESP32 போர்டு மற்றும் COMP போர்ட்டைத் தேர்ந்தெடுப்பது
  • 8:51 LCD நூலகத்தை நிறுவுதல்
  • 10:06 LCD க்கான I2C முகவரியைக் கண்டறிதல்
  • 14:00 Arduino குறியீடு விளக்கப்பட்டது
  • 17:50 நிரூபணம்
  • 20:54 ESP32 உடன் LCD2004 ஐப் பயன்படுத்துதல்
  • 22:58 பச்சை LCD1602 நீலத்தை விட சிறந்தது

படங்கள்

ESP32_11-5-l2C.MOV_snapshot_00.02.763
ESP32_11-5-l2C.MOV_snapshot_00.02.763
SunFounder-ESP32-Lesson-11-LCD1602.mp4_snapshot_20.23.926
SunFounder-ESP32-Lesson-11-LCD1602.mp4_snapshot_20.23.926
ESP32-11_LCD-wiring
ESP32-11_LCD-wiring
ESP32-11_LCD-wiring-schematic
ESP32-11_LCD-wiring-schematic
810-ESP32 Tutorial 11/55- Arduino code for LCD using ESP32
மொழி: C++
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

//SDA->21,SCL->22 
LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

int count = 0;

void setup()
{
  lcd.init();// initialize the lcd 
  lcd.backlight(); // Turns on the LCD backlight.
  lcd.print("Hello, world!");   // Print a message to the LCD.
  delay(3000);
}

void loop()
{
  lcd.clear(); 
  lcd.setCursor(0, 0); // Sets the cursor position to the first row and first column (0, 0).
  lcd.print("COUNT: ");
  lcd.print(count); // Prints the current value of the count variable.
  delay(1000);
  count++; // Increments the counter by 1. 
}

வளங்கள் மற்றும் மேற்கோள்கள்

கோப்புகள்📁

கோப்புகள் கிடைக்கவில்லை.