معرفی و راه‌اندازی ماژول نمایشگر LCD با آردوینو

پنج شنبه, 10 تیر 1395 16:14
این مورد را ارزیابی کنید
(12 رای‌ها)

این مطلب بخش هشتم از آموزش جامع آردوینو (مبتدی و پیشرفته) است. در این آموزش نحوه کار با LCD کاراکتری را خواهید آموخت. در مطالب قبل برای نشان دادن یک متن یا عدد (مثلا مقدار خروجی یک سنسور یا زاویه یک موتور) از سریال مانیتور استفاده کردیم که در دسترس‌ترین انتخاب برای نمایش است. اما در پروژه‌های واقعی همیشه دسترسی به رایانه وجود ندارد و معمولا علاقه داریم که سیستم ما به صورت مستقل از رایانه بتواند کار مورد نظر را انجام دهد. در این موارد، اولین انتخاب LCD کاراکتری است. استفاده از LCD از آنجا که امکان اجرای پروژه‌ها را بدون رایانه فراهم می‌کند، یک نقطه مهم در انجام پروژه‌های هوشمند است.

 

 

قطعات مورد نیاز:

 

برد آردوینو و کابل رابط

1 عدد
نمایشگر LCD کاراکتری 16×2 1 عدد
سنسور دما و رطوبت DHT11 1 عدد
پتانسیومتر 10kΩ 2 عدد
بردبورد 1 عدد
سیم جامپر 1 بسته

 


معرفی LCD

درون LCD کاراکتری یک صفحه شامل کریستال مایع وجود دارد که به ولتاژ الکتریکی حساس بوده و با اعمال ولتاژ از خود نور ساطع می‌کند. صفحه کریستال مایع بین دو صفحه از جنس شیشه قرار دارد که آن را در جای خود نگه داشته و از آن محافظت می‌کنند. دلیل اینکه به این نوع LCD ، کاراکتری می‌گویند این است که صفحه آن به تعدادی بخش‌های مربعی تقسیم شده است و به صورت پیش‌فرض هر کدام از این بخش‌ها یک کاراکتر (شامل عدد، حرف، علامت) را نشان می‌دهد. LCD ها با تعداد کاراکترهایی که نمایش می‌دهند مشخص می‌شوند؛ مثلا نمونه بسیار معروفی که در این آموزش هم ما از آن استفاده کرده‌ایم، مدل 16×2 است به این معنا که صفحه LCD دارای ١٦ ستون و ٢ ردیف است.

LCD کاراکتری

LCD کاراکتری نسبت به اکثر ماژول‌ها دارای تعداد زیادی پایه است (١٦ تا) ؛ اما نگران نباشید چون لازم نیست از همه آنها استفاده کنید! پایه‌های D0 تا D7 (٨ بیت) برای انتقال داده کاراکترها به صورت سریال استفاده می‌شود. با این وجود می‌توانید بجای ٨ بیت، داده‌ها را به صورت ٤ بیتی (با استفاده از ٤ پایه D4 تا D7) بفرستید. این کار سرعت انتقال را کمتر می‌کند؛ البته معمولا نه آنقدر که قابل تشخیص باشد، پس با خیال راحت داده‌ها را به صورت ٤ بیتی انتقال دهید. پایه‌های شماره ١ (VSS) و ٢ (VDD) به ترتیب منفی و مثبت LCD اند. پایه RS وضعیت LCD را بین دو حالت دستور (Instruction) و داده (Data) و پایه RW وضعیت LCD را بین دو حالت خواندن (Read) و نوشتن (Write) انتخاب می‌کند. همچنین پایه Enable) E) برای انتقال اطلاعات از حافظه LCD به نمایشگر استفاده می‌شود. خوشبختانه با استفاده از کتابخانه LiquidCrystal می‌توانید کار با وضعیت پایه‌ها را به نرم‌افزار واگذار کنید. این کتابخانه به صورت پیش‌فرض در نرم‌افزار آردوینو وجود دارد. دو بخش مهم دیگر در پایه‌های LCD وجود دارد: تنظیم نور نوشته‌ها (V0) و تنظیم نور پس‌زمینه (A, K). می‌توانید پایه‌های V0 و A را با یک مقاومت به 5V+ وصل کنید اما پیشنهاد می‌کنم برای اینکه خیلی راحت بتوانید روشنایی صفحه را به میزان دلخواه تنظیم کنید، از دو پتانسیومتر استفاده کنید؛ یکی برای پایه V0 و دیگری برای پایه A. به این ترتیب می‌توانید با تغییر مقدار مقاومت پتانسیومتر، صفحه نمایشگر را به حالتی که وضوح دلخواه‌تان را داشته باشد برسانید.


LCD صنعت بازاز


راه اندازی LCD

برای شروع باید پایه‌های LCD را به برد وصل کنید. برای راحتی کار می‌توانید ابتدا آنرا به یک برد بورد متصل کرده و سپس از برد بورد به آردوینو سیم‌کشی کنید. پایه‌ها را مطابق جدول زیر به آردوینو وصل کنید.

 

شماره پین LCD

نام پین

وظیفه

محل اتصال

1

VSS

قطب منفی

GND

2

VCC

قطب مثبت

+5V

3

VEE

تنظیم میزان روشنایی کاراکترها

پتانسیومتر شماره 1

4

RS

Register select :
Instruction register = 0

Data register = 1

پایه 2 دیجیتال

5

RW

Read / Write

Write mode = 0

Read = 1

GND

6

E

Enable

Latch data to LCD = 0

Disable = 1

پایه 3 دیجیتال

7

D0

Data bit 0

-

8

D1

Data bit 1

-

9

D2

Data bit 2

-

10

D3

Data bit 3

-

11

D4

Data bit 4

پایه 4 دیجیتال

12

D5

Data bit 5

پایه 5 دیجیتال

13

D6

Data bit 6

پایه 6 دیجیتال

14

D7

Data bit 7

پایه 7 دیجیتال

15

A

تنظیم میزان روشنایی نور پس‌زمینه

پتانسیومتر شماره 2

16

K

قطب منفی روشنایی پس‌زمینه

GND

مدار LCD

 

ستاپ LCD

حالا LCD آماده انجام کارهای جذاب است. از اینجا به بعد همه چیز به خلاقیت شما وابسته است. در این قسمت قصد داریم برنامه‌ای بنویسیم که در سطر اول LCD عبارت !Hello world را نوشته و در سطر دوم زمانی که از ابتدای شروع فرمان گذشته را بر حسب دقیقه و ثانیه مانند یک ساعت دیجیتال نشان دهد.
قبل از اینکه نرم‌افزار را اجرا کنید، بد نیست با چند دستور و تابع مهم در آردوینو آشنا شوید. برای استفاده از LCD باید از کتابخانه LiquidCrystal استفاده کنید. این کتابخانه به صورت پیش‌فرض در نرم‌افزار آردوینو موجود است. این کتابخانه را در ابتدای کدتان به صورت زیر فراخوانی کنید:

#include <LiquidCrystal.h>


همچنین پس از تعریف کتابخانه باید یک شیء از جنس LCD تعریف شود. مثلا:

LiquidCrystal lcd(RS,E,D4,D5,D6,D7)


که ورودی‌های آن عدد پین‌هایی است که به پایه‌های LCD که در دستور فوق مشخص شده‌ است وصل شده‌اند. همان طور که می‌دانید پس از تعریف شیء، توابع داخلی آنرا می‌توانید به صورت زیر فراخوانی کنید:

lcd.function()


در ادامه برای سادگی، از دستورات داخلی LCD بدون پیش‌وند lcd نام می‌بریم.
دستور ()millis مثل یک ساعت است که از زمانی که فراخوانی می‌شود شروع به اندازه‌گیری زمان بر حسب میلی‌ثانیه می‌کند. دستور مشابه دیگری نیز وجود دارد به نام ()micros که زمان را بر حسب میکروثانیه اندازه می‌گیرد. همچنین عملگر % باقیمانده تقسیم یک عدد بر عدد دیگر را می‌دهد. مثلا اگر زمان را بر حسب ثانیه داشته باشید و آنرا با n نشان دهید، عبارت n/60 تعداد دقیقه و n%60 تعداد ثانیه‌های ساعت دیجیتال ما را محاسبه خواهد کرد. ابتدا سعی کنید خودتان برنامه‌ این پروژه را بنویسید و بعد برنامه زیر را اجرا کنید. برنامه پیشنهادی ما به صورت زیر است. برنامه را بارگذاری کنید و از آن لذت ببرید.

/*
SanatBazar
Arduino Tutorial Series
Author: Davood Dorostkar
Website: www.sanatbazar.com


LCD Connections:
RS --> 2              RW  --> GND
E  --> 3              VSS --> GND
D4 --> 4              VDD --> +5V
D5 --> 5              V0  --> Potentiometer #1
D6 --> 6              A   --> Potentiometer #2
D7 --> 7              K   --> GND

*/

#include <LiquidCrystal.h>
#define RS 2
#define E 3
#define D4 4
#define D5 5
#define D6 6
#define D7 7
LiquidCrystal lcd(RS, E, D4, D5, D6, D7);

void setup()
{
  lcd.begin(16, 2);
}

void loop()
{
  lcd.clear();
  lcd.print("Hello world!");
  int minute = millis() / 1000 / 60;
  lcd.setCursor(0, 1);
  if (minute < 10)
    lcd.print("0");
  lcd.print(minute);
  lcd.setCursor(2, 1);
  lcd.print(":");
  int second = (millis() / 1000) % 60;
  lcd.setCursor(3, 1);
  if (second < 10)
    lcd.print("0");
  lcd.print(second);
  delay(500);
}

تایمر lcd


نمایش دما و رطوبت در LCD

معمولا هدف از استفاده از LCD ترکیب شدن با اجزای دیگر یک سیستم است تا وضعیت سنسورها، محل موتورها و غیره را نشان دهد. در این قسمت قصد داریم که یک نمونه کوچک از این کار را انجام دهیم. می‌خواهیم سنسور دما و رطوبت را مانند آنچه که در قسمت سوم آموزش آردوینو توضیح دادیم راه‌اندازی کرده و این بار دما و رطوبت را بجای رایانه در LCD نمایش دهیم. با این کار می‌توانید دستگاه هواشناسی‌تان را ساخته و در محلی که دوست دارید، بدون اینکه نیازی به رایانه باشد نصب کنید.
در اینجا ما برای اندازه‌گیری دما و رطوبت از ماژول DHT11 استفاده کرده‌ایم. این ماژول سه پایه دارد: پایه‌های مثبت و منفی که سمت چپ و راست آن قرار دارند و به 5V+ و GND آردوینو وصل می‌شوند و پایه وسط که پایه داده سنسور است. این پایه را به پین ٨ دیجیتال آردوینو وصل کنید.

dht11

اتصالات LCD نیازی به تغییر ندارد. حالا می‌توانید برنامه زیر را در آردوینو بارگذاری کرده و نتیجه را در نمایشگر ببینید.

/*
SanatBazar
Arduino Tutorial Series
Author: Davood Dorostkar
Website: www.sanatbazar.com

LCD Connections:
RS --> 2              RW  --> GND
E  --> 3              VSS --> GND
D4 --> 4              VDD --> +5V
D5 --> 5              V0  --> Potentiometer #1
D6 --> 6              A   --> Potentiometer #2
D7 --> 7              K   --> GND

*/

#include <dht.h>
dht DHT;
#define DHT11_PIN 8

#include <LiquidCrystal.h>
#define RS 2
#define E  3
#define D4 4
#define D5 5
#define D6 6
#define D7 7
LiquidCrystal lcd(RS,E,D4,D5,D6,D7);

void setup(){
  lcd.begin(16, 2);
}
void loop()
{
  int t = DHT.read11(DHT11_PIN);
  lcd.setCursor(0,0);
  lcd.print("Temp = ");
  lcd.print((int)DHT.temperature);
  lcd.print(" C");
  lcd.setCursor(0,1);
  lcd.print("Humidity = ");
  lcd.print((int)DHT.humidity);
  lcd.print(" %");
  delay(2000);
}

LCD دما و رطوبت

آردوینو را از رایانه جدا کرده و با آداپتور به برق شهری یا باتری وصل کنید. در صورت نیاز می‌توانید با کلید ریست آردوینو برنامه را مجددا فراخوانی کنید.


نمایش کاراکتر شخصی با LCD

اگر از نزدیک به LCD نگاه کنید متوجه می‌شوید که هر کدام از کاراکترهای آن به صورت پیوسته نمایش داده نمی‌شود و خود به تعدادی پیکسل جدا از هم تقسیم شده است. به طور معمول هر کاراکتر با استفاده از یک ماتریس از پیکسل‌ها شامل ٨ سطر و ٥ ستون ساخته می‌شود.
برد الکترونیکی که در قسمت پشت LCD قرار دارد وظیفه دارد تا دستوراتی که به صورت کاراکتر به آن ارسال می‌شود را به ماتریسی از پیکسل‌ها تبدیل کند و بر روی صفحه نمایش دهد. شاید تا اینجا حدس زده باشید که احتمالا بتوانید دستور نمایش کاراکترها را شخصی‌سازی کنید. حدستان درست است! این یکی از جذابیت‌های دنیای الکترونیک است که تقریبا هر چیزی در دسترس و قابل برنامه‌ریزی است. شما می‌توانید کاراکتر جدیدی تعریف کرده و در LCD نمایش دهید. برای تولید هر کاراکتر باید ابتدا یک آرایه ٨ تایی (به تعداد سطرهای پیکسلی) ایجاد کنید که هر درایه آن می‌تواند یک عدد از ٠  تا ٣٢ باشد (تعداد ستون‌های کاراکتر ٥ تا است به این معنی که هر ستون شامل ٢٥ یا ٣٢ حالت است). تعریف این عدد می‌تواند در مبنای ١٠ (مثلا ١٣) ، در مبنای ٢ یا Binary (مثلا B01101) یا در مبنای ١٦ یا hexadecimal (مثلا 0x0D) نوشته شود. برای مثال تعریف شکلک لبخند در یک کاراکتر می‌تواند به صورت زیر باشد:

 باینری ایموجی لبخند

byte smiley[] = {
  B00000,
  B00000,
  B01010,
  B00000,
  B10001,
  B01110,
  B00000,
  B00000
};

 
به شکل بالا نگاه کنید. در این شکل سطر اول و دوم همه پیکسل‌ها خاموش‌اند، پس دو درایه اول کاراکتر به صورت B00000 هستند. همچنین در سطر سوم پیکلس دوم و چهارم روشن‌اند پس درایه سوم کاراکتر به صورت B01010 نوشته شده که معادل عدد ١٠ است.
پس از تعریف کاراکترهای شخصی باید با استفاده از دستور (createChar(n,name آنرا برای LCD تعریف کنید. ورودی اول شماره کاراکتر و ورودی دوم نام کاراکتری است که قبلا ساخته‌اید. پس از این کار در طول برنامه، کاراکتر با شماره آن فراخوانی می‌شود. با استفاده از کتابخانه LiquidCrystal می‌توانید حداکثر تا ٨ کاراکتر شخصی بسازید. برای نمایش کاراکترهای خاص از دستور ((write(byte(n استفاده می‌شود که در آن n شماره کاراکتر تعریف شده است.
برنامه زیر را بر روی آردوینو بارگذاری کنید. در این برنامه از چند دستور خاص در کتابخانه LiquidCrystal استفاده شده است: دستور (setCursor(n,m که نشانگر را برای نوشتن کاراکتر جدید به محل مورد نظر شما می‌برد و دستور ()clear که کل صفحه نمایشگر را پاک می‌کند. برای اینکه روش ایجاد کاراکتر را بهتر متوجه شوید، شکل‌های لبخند، ساعت شنی و چند شکل دیگر (برنامه را اجرا کنید تا شکل آنها را ببینید!) در مبناهای ٢، ١٠ و ١٦ تعریف شده‌اند. با اجرای برنامه، کاراکترها به صورت پشت سر هم ظاهر می‌شوند تا اینکه صفحه پر شود.

/*
SanatBazar
Arduino Tutorial Series
Author: Davood Dorostkar
Website: www.sanatbazar.com

LCD Connections:
RS --> 2              RW  --> GND
E  --> 3              VSS --> GND
D4 --> 4              VDD --> +5V
D5 --> 5              V0  --> Potentiometer #1
D6 --> 6              A   --> Potentiometer #2
D7 --> 7              K   --> GND

*/

#include <LiquidCrystal.h>
#define RS 2
#define E  3
#define D4 4
#define D5 5
#define D6 6
#define D7 7
LiquidCrystal lcd(RS,E,D4,D5,D6,D7);

// Definitions of characters:

byte smiley[] = {
  B00000,
  B00000,
  B01010,
  B00000,
  B10001,
  B01110,
  B00000,
  B00000
};
byte diamond[] = {
  0,
  4,
  10,
  17,
  10,
  4,
  0,
  0
};
byte arrow[] = {
  B00100,
  B01110,
  B11111,
  B00100,
  B00100,
  B00100,
  B00100,
  B00100
};
byte newShape[] = {
  B11111,
  B10001,
  B10001,
  B00100,
  B00100,
  B10001,
  B10001,
  B11111
};
byte sandglass[] = {
  0x1F,
  0x0E,
  0x04,
  0x04,
  0x04,
  0x04,
  0x0E,
  0x1F
};

void setup() {
  lcd.createChar(0, smiley);
  lcd.createChar(1, arrow);
  lcd.createChar(2, newShape);
  lcd.createChar(3, sandglass);
  lcd.createChar(4, diamond);
  lcd.begin(16, 2);
}

void loop() {
  int numberOfCharacters=0;
  lcd.clear();
  lcd.setCursor(0,0);
  for (int i=0; i<32; i++){
    if (numberOfCharacters==16) {
      lcd.setCursor(0,1);
    }
    lcd.write(byte(i%5));
    numberOfCharacters++;
    delay(1000);
  }
}

LCD کاراکتر شخصی

نتیجه‌گیری

در این آموزش نحوه کار با LCD کاراکتری را یاد گرفتید و به اهمیت آن پی بردید. از LCD کاراکتری در ساخت دستگاه‌هایی مانند پرینتر سه‌بعدی هایپرکیوب استفاده شده است.
در آموزش بعدی، نحوه راه‌اندازی و کار با انواع LED را خواهید آموخت.
نظرات شما باعث بهبود محتوای آموزشی ما می‌شود. اگر این آموزش را دوست داشتید، همین‌طور اگر سوالی در مورد آن دارید، از شنیدن نظراتتان خوشحال خواهیم شد.

خواندن 14846 دفعه
داوود درستکار

داوود درستکار دانش‌آموخته کارشناسی مهندسی مکانیک از دانشگاه صنعتی اصفهان و کارشناسی ارشد از دانشگاه تهران است. وی همچنین عضو تیم تحقیقاتی مرکز سیستمها و فناوریهای پیشرفته دانشگاه تهران (CAST) است. داود مسلط به طراحی و تحلیل سیستم‌های دینامیکی، طراحی و ساخت ربات، کنترل سیستم‌های غیرخطی و پیاده‌سازی سیستم‌های هوشمند با استفاده از آردوینو است. مهمترین علاقه او در حوزه رباتیک، پرنده‌های بدون سرنشین، رباتهای توانبخشی و ساخت تجهیزات هوشمندسازی و کنترل می‌باشد.

کاربرانی که در این گفتگو شرکت کرده اند

نظرات (17)

  1. احمد

سلام میشه از این نمایشگر به جای نمایشگر یک وسیله الکترونیکی مثل اسپیکر استفاده کرد

 
  1. پشتیبانی    احمد

سلام دوست عزیز
به طور کلی اگر سخت افزار الکتریکی اسپیکر شما قابلیت ارتباط با نمایشگر LCD کاراکتری داشته باشد میتوانید از این ماژول استفاده کنید. البته باید بررسی شود که تراشه الکترونیکی موجود در سخت افزار اسپیکر برنامه (فیرمور) مخصوصLCD کاراکتری...

سلام دوست عزیز
به طور کلی اگر سخت افزار الکتریکی اسپیکر شما قابلیت ارتباط با نمایشگر LCD کاراکتری داشته باشد میتوانید از این ماژول استفاده کنید. البته باید بررسی شود که تراشه الکترونیکی موجود در سخت افزار اسپیکر برنامه (فیرمور) مخصوصLCD کاراکتری را داشته باشد.

ادامه مطلب
 
  1. محمدرضا

دامنه ی ارسال اعداد از 0 تا 9 باشه

 
  1. محمدرضا

سلام من میخواستم در آردوینو نور یک ال ای دی وصل شده به پایه ی۱۳ از طریق سریال مانیتور کنترل کنم.
میشه منو راهنمایی کنید؟

 
  1. پشتیبانی    محمدرضا

سلام محمد رضا عزیز
کاری که شما می خواهید انجام بدید صرفا از طریق پایه های آنالوگ و یا pwm قابل انجام است. از آنجایی که پین 13 آردوینو یونو pwm نبوده بنابراین نمی توان از این پین برای انجام چنین کاری استفاده کرد. اما چنانچه قصد استفاده از یک برد...

سلام محمد رضا عزیز
کاری که شما می خواهید انجام بدید صرفا از طریق پایه های آنالوگ و یا pwm قابل انجام است. از آنجایی که پین 13 آردوینو یونو pwm نبوده بنابراین نمی توان از این پین برای انجام چنین کاری استفاده کرد. اما چنانچه قصد استفاده از یک برد دیگر و یا یک پین دیگر دارید می توانید با کمی تغییر در کد از لینک زیر استفاده کنید.
https://www.youtube.com/watch?v=fo48Dps6SgM
موفق باشید

ادامه مطلب
 
  1. رضا

سلام روز خوش برای ساخت دوربین عکاسی استفاده از arduino بهتره یا raspberry pi ؟؟؟؟

 
  1. پشتیبانی    رضا

سلام رضا عزیز
خب طبیعتا بردهای raspberry pi برای این منظور قابلیت های خیلی بیشتری دارند که با نگاهی به دیتاشیت های انها متوجه میشید.
موفق باشید

 
  1. ناصر

سلام ممنون اون کد Hello world رو که زدم کامپایل شد ولی اون کد نمایش دما و رطوبط رو که زدم کامپایل نشد و برای من نمایش دما و رطوبت مهمه و اگه میشه راهنماییم کنین

 
  1. پشتیبانی    ناصر

سلام مجدد ناصر عزیز
پس شما کتابخانه DHT رو ندارید که باید دانلود کنید. برای توضیحات بیشتر در رابطه با راه اندازی سنسور دما DHT به آموزش "معرفی و راه‌اندازی سنسورهای دما و رطوبت با آردوینو" در لینک زیر از همین سایت صنعت بازار مراجعه کنید:

ادامه مطلب
 
  1. ناصر

وقتی که من کد رو میزنم و میزنم که کد کامپایل بشه میزنه compil error

 
  1. پشتیبانی    ناصر

ناصر عزیز
به احتمال بسیار زیاد شما کتابخونه lcd رو ندارید که باید دانلود و در کتابخونه آردوینو قرار بدید. سپس کد اول که Hello world رو نمایش میده اجرا کنید که اگر ارور میداد می تونید Arduino IDE رو دوباره نصب کنید. می تونه مشکل از برد آردوین وشما...

ناصر عزیز
به احتمال بسیار زیاد شما کتابخونه lcd رو ندارید که باید دانلود و در کتابخونه آردوینو قرار بدید. سپس کد اول که Hello world رو نمایش میده اجرا کنید که اگر ارور میداد می تونید Arduino IDE رو دوباره نصب کنید. می تونه مشکل از برد آردوین وشما هم باشه.
موفق باشید

ادامه مطلب
 
  1. ناصر

سلام ببخشید من کدی رو که شما اینجا داده بودید رو زدم ولی در زمان کامپایل کردن کد با مشکل مواجه شدم نیشه من رو راهنمایی کنید.

 
  1. پشتیبانی    ناصر

سلام ناصر عزیز
کد دوباره تست شد و مشکلی نداره لطفا بیان کنید مشکل چی هست و با چه ارروری مواجه میشید تا بررسی بشه.
موفق باشید

 
  1. محمد

سلام.ممنون از سایت خوبتون.
من پروژه لوکس متر با lcdرو انجام دادم ولی lcdی سری شکل و علامت سوال به جای مقادیر من نشون میده.دلیلش چیه؟
برنامه ای که نوشتم رو هم تست کردم فقط با lcdمشکل دارم.لطفا راهنماییم کنید.تشکر

 
  1. پشتیبانی    محمد

سلام دوست عزیز
طبق همین اموزش ابتدا پیش برید تا از صحیح بودن اتصالاتتون و تغذیه برد و نمایشگر مطمئن بشید بعد پروژه لوکس متر خودتون رو راه اندازی کنید. احیانا از منبع تغذیه مجزا استفاده نمی کنید؟ چون در این صورت برای برد هم باید از آن را متصل...

سلام دوست عزیز
طبق همین اموزش ابتدا پیش برید تا از صحیح بودن اتصالاتتون و تغذیه برد و نمایشگر مطمئن بشید بعد پروژه لوکس متر خودتون رو راه اندازی کنید. احیانا از منبع تغذیه مجزا استفاده نمی کنید؟ چون در این صورت برای برد هم باید از آن را متصل کنید. احتمال زیاد اتصالات ال سی دی شما ایراد داشته باشه. دقت کنید اتصال اشتباهی رخ نداده باشه! همچنین دقت کنید که آیا delay رو استفاده کردید؟ شاید سیگنال رو از دست میدین.
موفق باشید

ادامه مطلب
 
  1. حمید

سلام خیلی ممنون از آموزشتون.
اگر بخوایم دما رو با دقت دهم سانتی گراد در LCD نشون بده باید چیکار کنیم؟

 
  1. پشتیبان    حمید

سلام حمید عزیز
میتونید قبل از نمایش دما این کدها رو قرار بدین و بعد متغیر temp رو نمایش بدین

float temp = DHT.temperature;
long val = (long)(temp * 10L);
temp = ((float)val) /10.0;

 
هیچ نظری در اینجا وجود ندارد

نظر خود را اضافه کنید.

ارسال نظر بعنوان یک مهمان
پیوست ها (0 / 3)
مکان خود را به اشتراک بگذارید

محتوای آموزشی استفاده شده در این سایت محافظت شده می باشد و هرگونه کپی برداری از محتواهای تولید شده توسط تیم صنعت بازار موجب پیگرد خواهد بود. استفاده از مطالب صنعت بازار تنها با ذکر منبع به صورت لینک فعال بلامانع است

ما را دنبال کنید:

Copyright © 2017-2018 | Sanatbazar.com