دسته‌بندی نشده

آموزش BASCOM AVR – بسکام – جلسه سوم

 

📘 آموزش BASCOM AVR – بسکام – جلسه سوم

 

کار با LCD کاراکتری (۲×۱۶)


۱. مقدمه

در جلسات قبل یاد گرفتیم چطور LED را روشن و خاموش کنیم و با کلید ورودی بگیریم. اما در پروژه‌های واقعی، نیاز داریم اطلاعات را به کاربر نمایش دهیم. ساده‌ترین ابزار نمایش، LCD کاراکتری است. این نمایشگر می‌تواند متن، عدد و نمادها را نشان دهد و در پروژه‌هایی مثل ساعت دیجیتال، دماسنج یا قفل رمز دیجیتال استفاده می‌شود.


۲. معرفی LCD کاراکتری

  • LCD کاراکتری متداول‌ترین نوع نمایشگر است.
  • پرکاربردترین مدل: ۲ سطر × ۱۶ ستون (یعنی ۳۲ کاراکتر همزمان).
  • پایه‌ها:
    • پایه‌های تغذیه (+۵ ولت و GND)
    • پایه کنتراست (با پتانسیومتر تنظیم می‌شود)
    • پایه‌های دیتا (DB0 تا DB7)
    • پایه‌های کنترل (RS، RW، E)
    • پایه‌های بک‌لایت (چراغ پشت صفحه)

۳. نحوه اتصال LCD به میکرو

  • پایه VCC → +۵ ولت
  • پایه GND → زمین
  • پایه VEE → پتانسیومتر برای تنظیم کنتراست
  • پایه RS → یک پایه از میکرو (مثلاً PortD.0)
  • پایه RW → زمین (چون فقط می‌خواهیم بنویسیم)
  • پایه E → یک پایه از میکرو (مثلاً PortD.1)
  • پایه‌های DB4 تا DB7 → چهار پایه از میکرو (مثلاً PortD.2 تا PortD.5)
  • پایه‌های LEDA و LEDK → تغذیه بک‌لایت

۴. کدنویسی در BASCOM

کد ساده:

' پروژه نمایش متن روی LCD
$regfile = "m32def.dat"
$crystal = 1000000

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = PortD.2 , Db5 = PortD.3 , Db6 = PortD.4 , Db7 = PortD.5 , E = PortD.1 , Rs = PortD.0

Cls
Lcd "Hello AVR"

۵. توضیح خط‌به‌خط کد

  • Config Lcd = 16 * 2 → معرفی نوع LCD (۲×۱۶).
  • Config Lcdpin = Pin … → معرفی پایه‌های متصل به LCD.
  • Cls → پاک کردن صفحه نمایش.
  • Lcd "Hello AVR" → نمایش متن “Hello AVR” روی LCD.

۶. دستورات مهم LCD در BASCOM

  • Cls → پاک کردن صفحه.
  • Lcd "Text" → نمایش متن.
  • Locate x , y → تعیین موقعیت مکان‌نما (سطر و ستون).
  • Cursor On / Cursor Off → روشن یا خاموش کردن مکان‌نما.
  • Cursor Blink → مکان‌نما چشمک‌زن.
  • Shiftlcd Left / Right → جابجایی متن به چپ یا راست.

۷. پروژه عملی: متن متحرک

کد:

Dim I As Byte
Cls
Lcd "AVR Learning"

Do
   For I = 1 To 10
      Shiftlcd Right
      Waitms 250
   Next I

   Wait 2

   For I = 1 To 10
      Shiftlcd Left
      Waitms 250
   Next I

   Wait 2
Loop
End

توضیح: متن “AVR Learning” به سمت راست حرکت می‌کند، سپس به سمت چپ برمی‌گردد و این کار تکرار می‌شود.


۸. پروژه عملی: نمایش عدد روی LCD

کد:

Dim Counter As Byte
Counter = 0

Do
   Incr Counter
   Locate 2 , 1
   Lcd "Count=" ; Counter
   Wait 1
Loop
End

توضیح: هر ثانیه یک واحد به شمارنده اضافه می‌شود و روی LCD نمایش داده می‌شود.


۹. نکات عملی

  • اگر LCD چیزی نشان نداد، پتانسیومتر کنتراست را تنظیم کنید.
  • اگر فقط مربع‌های سیاه دیده شد، پایه‌های دیتا یا کنترل اشتباه وصل شده‌اند.
  • همیشه RW را به زمین وصل کنید تا LCD در حالت نوشتن باشد.

۱۰. تمرین‌ها

۱. متن دلخواه خود را روی LCD نمایش دهید.

  1. یک شمارنده بسازید که با فشار کلید مقدارش تغییر کند و روی LCD نمایش داده شود.
  2. متن را به صورت متحرک از راست به چپ حرکت دهید.

نتیجه جلسه سوم

در این جلسه یاد گرفتیم:

  • LCD کاراکتری چیست و چگونه به میکرو وصل می‌شود.
  • دستورات مهم BASCOM برای کار با LCD.
  • پروژه‌های عملی نمایش متن، شمارنده و متن متحرک.

🔹 جلسه چهارم: کار با کی‌پد ماتریسی و ساخت ماشین حساب ساده.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *