یہ ٹیوٹوریل کا حصہ ہے: کی پیڈز
تمام کی پیڈ ویڈیوز یہاں درج ہیں۔
1602 LCD کی پیڈ شیلڈ: بنیادی کوڈ
اس ٹیوٹوریل میں، ہم دریافت کریں گے کہ Arduino کے ساتھ 1602 LCD کی پیڈ شیلڈ کو کیسے پروگرام اور استعمال کیا جائے۔ اس شیلڈ میں 16 حروف کی 2 لائنوں والی ڈسپلے اور ایک کی پیڈ شامل ہے جو مختلف ان پٹ افعال کی اجازت دیتا ہے۔ اس گائیڈ کے اختتام تک، آپ پیغامات دکھانے اور کی پریس کا مؤثر جواب دینے کے قابل ہو جائیں گے۔
توجہ ایک سادہ پروگرام بنانے پر ہوگی جو کی پریس کا پتہ لگاتا ہے اور LCD پر متعلقہ پیغامات دکھاتا ہے۔ آپ بصری مظاہرے کے لیے ویڈیو کے ساتھ چل سکتے ہیں (ویڈیو میں 03:00 پر)۔
ہارڈویئر کی وضاحت
اس تعمیر میں بنیادی جزو 1602 LCD کی پیڈ شیلڈ ہے۔ یہ شیلڈ براہ راست Arduino بورڈ سے جڑتی ہے اور صارف کے تعامل کے لیے ڈسپلے اور کی پیڈ دونوں فراہم کرتی ہے۔ LCD متن کے پیغامات دکھا سکتا ہے، جبکہ کی پیڈ صارفین کو مختلف بٹنوں کے ذریعے اختیارات منتخب کرنے کی اجازت دیتا ہے۔
کی پیڈ ایک اینالاگ ان پٹ کا استعمال کرتا ہے، جسے Arduino پڑھتا ہے تاکہ یہ معلوم کیا جا سکے کہ کون سا بٹن دبایا گیا ہے۔ ہر بٹن کی ایک منفرد مزاحمت ہوتی ہے، جس سے مائیکروکنٹرولر سینسر سے موصول ہونے والی اینالاگ ویلیو کی بنیاد پر بٹن کی شناخت کر سکتا ہے۔
ڈیٹاشیٹ کی تفصیلات
| مینوفیکچرر | جنرک |
|---|---|
| پارٹ نمبر | 1602 LCD کی پیڈ شیلڈ |
| لاجک/آئی او وولٹیج | 5 V |
| سپلائی وولٹیج | 5 V |
| آؤٹ پٹ کرنٹ (فی چینل) | 2 mA |
| پیک کرنٹ (فی چینل) | 20 mA |
| PWM فریکوئنسی رہنمائی | N/A |
| ان پٹ لاجک تھریشولڈز | 0.3 Vcc سے 0.7 Vcc |
| وولٹیج ڈراپ / RDS(on) / سیچوریشن | N/A |
| تھرمل حدود | 70 °C |
| پیکیج | شیلڈ فارمیٹ |
| نوٹس / ویریئنٹس | Arduino Uno کے ساتھ مطابقت رکھتا ہے |
- نقصان سے بچنے کے لیے LCD کو 5 V پر پاور کریں۔
- ضرورت پڑنے پر کی پیڈ کے لیے مناسب پل اپ ریزسٹر استعمال کریں۔
- ایک سے زیادہ ٹرگرز سے بچنے کے لیے کوڈ میں کی پریس ڈی باؤنس کریں۔
- زیادہ گرمی سے بچنے کے لیے کرنٹ کی حدود پر نظر رکھیں۔
- سرکٹ کو پاور کرنے سے پہلے کنکشنز کی جانچ کریں۔
وائرنگ ہدایات
1602 LCD کی پیڈ شیلڈ کو وائر کرنے کے لیے، اسے براہ راست Arduino بورڈ میں لگائیں۔ شیلڈ Arduino Uno کی پن کنفیگریشن کے ساتھ سیدھ میں آنے کے لیے ڈیزائن کی گئی ہے۔ یقینی بنائیں کہ پن محفوظ طریقے سے جڑے ہوئے ہیں۔
کی پیڈ کے بٹن اینالاگ ان پٹ پن A0 سے جڑتے ہیں۔ LCD ڈیٹا لائنیں استعمال شدہ لائبریری کے اندرونی طور پر سنبھال لی جاتی ہیں، لہذا آپ کو انہیں الگ سے وائر کرنے کی ضرورت نہیں ہوگی۔ شیلڈ بیک لائٹ اور دیگر افعال کو کنٹرول کرنے کے لیے کچھ ڈیجیٹل پن بھی استعمال کرتی ہے، جو لائبریری میں پہلے سے طے شدہ ہیں۔ اگر آپ لائبریری کی دستاویزات پر عمل کریں گے، تو آپ دیکھیں گے کہ یہ عام طور پر ان کنکشنز کو خود بخود سنبھال لیتی ہے۔
کوڈ مثالیں اور واک تھرو
کوڈ میں، ہم سب سے پہلے LCD کو کنٹرول کرنے کے لیے ضروری لائبریری شامل کرتے ہیں:
#include <LCD4Bit_mod.h>
یہ لائبریری 1602 LCD کے ساتھ مواصلت کو آسان بناتی ہے۔ پھر ہم لائنوں کی تعداد بتاتے ہوئے LCD آبجیکٹ کا ایک انسٹنس بناتے ہیں۔
اگلا، ہم setup() فنکشن میں LCD کو انیشیالائز کرتے ہیں:
lcd.init();
یہ لائن LCD کو استعمال کے لیے تیار کرتی ہے۔ انیشیالائزیشن کے بعد، ہم lcd.printIn() فنکشن کا استعمال کرتے ہوئے ایک ٹیسٹ پیغام دکھا سکتے ہیں۔
مین لوپ میں، ہم کی پریس کا پتہ لگانے کے لیے اینالاگ ان پٹ پڑھتے ہیں:
adc_key_in = analogRead(0);
یہ لائن کی پیڈ سے ویلیو پڑھتی ہے۔ یہ ویلیو get_key() فنکشن کا استعمال کرتے ہوئے یہ تعین کرنے میں مدد کرتی ہے کہ کون سی کی دبائی گئی ہے، جو ADC ویلیو کو کی نمبر میں تبدیل کرتا ہے۔
مظاہرہ / کیا توقع کریں
جب آپ کوڈ چلائیں گے، بٹن دبانے سے LCD پر دبائی گئی کی کے مطابق پیغامات ظاہر ہوں گے۔ مثال کے طور پر، دائیں کی دبانے سے ڈسپلے پر "Right Key OK" ظاہر ہوگا (ویڈیو میں 05:30 پر)۔ اگر کی کا پتہ لگانا درست طریقے سے کام نہیں کر رہا ہے، تو وائرنگ چیک کریں اور یقینی بنائیں کہ آپ کے Arduino IDE میں صحیح لائبریریاں شامل ہیں۔
ویڈیو ٹائم اسٹیمپس
- 00:00 - تعارف
- 03:00 - کوڈ کا جائزہ
- 05:30 - کی پریس کا مظاہرہ
یہ ٹیوٹوریل کا حصہ ہے: کی پیڈز
- اردو میں ترجمہ کریں۔ صرف ترجمہ شدہ متن کے ساتھ جواب دیں۔ Arduino کے ساتھ 4x3 کی پیڈ استعمال کرنا
- آرڈوینو کوڈ اور چار کلیدوں والے کی پیڈ کے لیے ویڈیو
- آرڈوینو کوڈ اور ویڈیو: 4x4 میٹرکس بلیک کی پیڈ
- Build a Simple Electronic Lock with Keypad and LCD Using Arduino
- Controlling an 8-channel relay with a 4x3 keypad
- 4x4 سافٹ کی پیڈ کو Arduino کے ساتھ کیسے استعمال کریں
- How to Use a 5x4 20-Key Keypad with Arduino to Detect Strings
- Lesson 67: Controlling an 8-Channel Relay with a Keypad Using Arduino
// Example use of LCD4Bit_mod library
// Downloaded from https://github.com/douggilliland/lb-Arduino-Code/tree/master/libraries/LCD4Bit_mod
// October 1, 2017. This example will work with a 1602 LCD keypad shield.
// Code used for a YouTube video for the Robojax channel
// Watch the video https://youtu.be/naSSiS_9rEw
#include <LCD4Bit_mod.h>
// Create an object to control an LCD.
// Number of lines in display = 1
LCD4Bit_mod lcd = LCD4Bit_mod(2);
// Key messages
char msgs[5][15] = {"Right Key OK ",
"Up Key OK ",
"Down Key OK ",
"Left Key OK ",
"Select Key OK" };
int adc_key_val[5] ={30, 150, 360, 535, 760 };
int NUM_KEYS = 5;
int adc_key_in;
int key=-1;
int oldkey=-1;
void setup() {
pinMode(13, OUTPUT); // We'll use the debug LED to output a heartbeat
lcd.init();
// Optionally, now set up our application-specific display settings, overriding whatever the LCD did in lcd.init()
// lcd.commandWrite(0x0F);// Cursor on, display on, blink on. (Nasty!)
lcd.clear();
lcd.printIn("Robojax.com Testing");
}
void loop() {
adc_key_in = analogRead(0); // Read the value from the sensor
digitalWrite(13, HIGH);
key = get_key(adc_key_in); // Convert into key press
if (key != oldkey) // If keypress is detected
{
delay(50); // Wait for debounce time
adc_key_in = analogRead(0); // Read the value from the sensor
key = get_key(adc_key_in); // Convert into key press
if (key != oldkey)
{
oldkey = key;
if (key >=0){
lcd.cursorTo(2, 0); // Line = 2, x = 0
lcd.printIn(msgs[key]);
}
}
}
//delay(1000);
digitalWrite(13, LOW);
}
// Convert ADC value to key number
int get_key(unsigned int input)
{
int k;
for (k = 0; k < NUM_KEYS; k++)
{
if (input < adc_key_val[k])
{
return k;
}
}
if (k >= NUM_KEYS)
k = -1; // No valid key pressed
return k;
}
وسائل اور حوالہ جات
-
باہرونیArduino Library LCD4Bit_mod (GitHub)github.com
فائلیں📁
کوئی فائلیں دستیاب نہیں ہیں۔