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

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

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

 

کار با LCD گرافیکی (128×64)


۱. مقدمه

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


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

  • رایج‌ترین مدل: 128×64 پیکسل (مدل KS0108).
  • تک‌رنگ (سیاه و سفید).
  • دارای ۲۰ پایه: تغذیه، دیتا و کنترل.
  • تغذیه: +۵ ولت مستقیم.
  • پایه‌های دیتا: ۸ خط (D0 تا D7).
  • پایه‌های کنترل: RS، RW، E، Reset، Chip Enable و …

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

  • پایه‌های دیتا (D0 تا D7) → یک پورت کامل از میکرو (مثلاً PortB).
  • پایه‌های کنترل → پایه‌های مختلف از PortC.
  • پایه‌های تغذیه و بک‌لایت → +۵ ولت و زمین.
  • پتانسیومتر برای تنظیم کنتراست.

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

کد ساده:

' پروژه نمایش متن روی LCD گرافیکی
$regfile = "m32def.dat"
$crystal = 1000000
$lib "glcdKS108.lbx"

Config Graphlcd = 128 * 64sed , Dataport = PortB , Controlport = PortC , Ce = 4 , Ce2 = 3 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 2

Setfont Font8x8
Cls
Lcdat 1 , 1 , "Salam"
End

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

  • $lib "glcdKS108.lbx" → معرفی کتابخانه مخصوص LCD گرافیکی.
  • Config Graphlcd … → معرفی نوع LCD و پایه‌های اتصال.
  • Setfont Font8x8 → انتخاب فونت پیش‌فرض.
  • Cls → پاک کردن صفحه.
  • Lcdat 1 , 1 , "Salam" → نمایش متن “سلام” در مختصات سطر ۱، ستون ۱.

۶. دستورات گرافیکی مهم

  • Pset x , y , 255 → روشن کردن پیکسل در مختصات (x,y).
  • Pset x , y , 0 → خاموش کردن پیکسل.
  • Line (x1,y1)-(x2,y2) , 255 → رسم خط بین دو نقطه.
  • Circle (x,y) , r , 255 → رسم دایره با شعاع r.
  • Box (x1,y1)-(x2,y2) , 255 → رسم مستطیل.

۷. پروژه عملی: رسم اشکال هندسی

کد:

Cls
Line (10,10)-(100,10) , 255
Circle (64,32) , 20 , 255
Box (20,20)-(60,40) , 255
End

توضیح: یک خط، یک دایره و یک مستطیل روی LCD رسم می‌شود.


۸. نمایش تصاویر

  • تصاویر باید به فرمت BMP سیاه و سفید با اندازه 128×64 تبدیل شوند.
  • با ابزار Graphic Converter در BASCOM، فایل BMP به فرمت BGF تبدیل می‌شود.
  • سپس با دستور Showpic تصویر نمایش داده می‌شود.

کد:

$include "picture.bgf"
Cls
Showpic
End

۹. طراحی فونت فارسی

  • با ابزار Font Editor می‌توان فونت جدید طراحی کرد.
  • هر کاراکتر در یک جدول ۸×۸ پیکسل تعریف می‌شود.
  • می‌توان کاراکترهای فارسی مثل “س”، “ل”، “ا”، “م” را طراحی کرد و با دستور Chr() نمایش داد.

۱۰. تمرین‌ها

  1. یک منو طراحی کنید که با کلیدهای کی‌پد بین گزینه‌ها جابه‌جا شود و روی LCD گرافیکی نمایش داده شود.
  2. یک نمودار ساده رسم کنید که مقدار دما را نشان دهد.
  3. یک تصویر ساده (مثلاً لوگو) طراحی کنید و روی LCD نمایش دهید.

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

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

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

🔹 جلسه ششم: کار با تایمرها و شمارنده‌ها (Timer/Counter) برای ایجاد تأخیر دقیق و شمارش رویدادها.

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

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