کتابخانه LVGL برای نمایش‌گرهای TFT LCD (قسمت اول)

blog
۱۴۰۱-۰۵-۰۵
5 دقیقه

رابط کاربری 

همه‌ی سیستم‌های کامپیوتری بخشی برای ارتباط با کاربر دارند. این بخش می‌تواند به‌سادگی قرار دادن تعدادی کلید و چراغ، تا اَشکال کامل‌تری چون نمایشگر رنگی و ورودی‌های اشاره‌گر مثل USB، موس، ورودی و خروجی موردنیاز دستگاه را تأمین نماید. به‌طورکلی به این بخش از سیستم‌های کامپیوتری چه در سیستم‌های گسترده و چه در سیستم‌های نهفته (Embedded)، “رابط کاربری” یا “User Interface” می‌گویند. با سیسوگ همراه باشید.

رابط‌ کاربری از لحاظ ساختار داخلی شامل موارد زیر است:

  • بخش نمایشگر یا خروجی (مثل چراغ، buzzer، TFT LCD و …)
  • بخش ورودی (مثل کلید، Touch Screen، موس و …)

از طرف دیگر انواع آن، به دو دسته‌ی کلی زیر تقسیم می‌شوند:

  • رابط کاربری غیرگرافیکی (Non Graphical User Interface[NGUI])
  • رابط کاربری گرافیکی (Graphical User Interface[GUI])

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

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

کتابخانه LVGL برای نمایش‌گرهای TFT LCD (قسمت اول)

 توجه: در این نوشته، نمایشگر گرافیکی به ماژولی اطلاق می‌شود که تصویر دلخواهی را به نمایش‌می‌گذارد. لذا شامل مواردی چون نمایش‌گر کاراکتری نمی‌شوند. 

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

بدون توجه به تکنولوژی ساخت ماژول‌های نمایشگر و نوع ورودی آن، می‌توان دسته‌بندی کلی زیر را برای رابط‌های کاربری گرافیکی در نظر گرفت:

  1. رابط کاربری گرافیکی با نمایشگر گرافیکی تک‌رنگ (Monochrome Display)
  2. رابط کاربری گرافیکی با نمایشگر گرافیکی رنگی (Color Display)

که پیچیدگی استفاده از آن‌ها به همان ترتیب بالا است.

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

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

 

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

 

کتابخانه LVGL برای نمایش‌گرهای TFT LCD (قسمت اول)

 

اصول ارتباط سخت‌افزاری نمایش‌گر گرافیکی

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

رابط کاربری در LVGL

همان‌طور که در شکل مشخص شده است، شامل سه بخش اصلی است که در ادامه به توضیح مختصر هر یک می‌پردازیم.

  1. نمایشگر: شامل دو بخش اصلی چیپ درایور (Display Driver Chip) و مدار تغذیه است. البته بخشی که شامل سلول‌های نورانی است و معمولاً از طریق تحریک ترانزیستورهای FET تصویر را به نمایش درمی‌آورند نشان داده نشده است. این سلول‌ها به تعداد Resolution افقی و عمودی در دو بعد صفحه قرارگرفته‌اند. وظیفه‌ی روشن، خاموش کردن این ترانزیستورها با چیپ درایور است که معمولاً به شکل Chip on Glass Package و در پشت صفحه‌ی نمایشگر تعبیه می‌شوند. مدارات تغذیه هم برای ایجاد سطوح مثبت و منفی مورد نیاز Backlight و سلول‌های نورانی طراحی می‌شوند. ارتباط ماژول نمایشگر از طریق واسط سخت‌افزاری که مثلاً در ماژول‌های رنگی واسط موازی RGB (تعبیه‌شده در چیپ درایور) است، برقرار می‌گردد.
  2. بورد کنترلر: این بخش شامل چیپ کنترلر (Display Controller Chip) است که وظیفه‌ی آن شامل موارد زیر است:
  • داشتن بافر (حافظه‌ی RAM) لازم که دیتای pixelهای نمایشگر را در خود دارد.
  • تبدیل واسط ارتباطی پردازنده به واسط چیپ درایور (مثلا واسط RGB)
  • تولید سیگنال‌های زمانی مورد نیاز برای Refresh کردن ماژول نمایشگر با فرکانس مناسب.

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

توجه: چیپ درایور(Display Driver) و چیپِ کنترلر(Display Controller) وظایف کاملا متفاوتی دارند، لذا باید به درستی به هر یک در جایگاه خود اشاره کرد.

  1. بورد اصلی (میکروکنترلر): برای ارتباط میکروکنترلرها با ماژول‌های نمایشگر رنگی و تک‌رنگ، برخی واسط‌های سخت‌افزاری استاندارد سریال و موازی در زیر آورده شده است:
  • واسط سریال SPI
  • واسط سریال I2C
  • واسط موازی RGB
  • واسط موازی Intel 8080
  • واسط موازی Motorola 6800

کتابخانه LVGL برای نمایش‌گرهای TFT LCD (قسمت اول)

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

در این قسمت کلیتی از اصول سخت‌افزاری ماژول نمایشگر گرافیکی ارائه شد. هر یک از بخش‌های مورد اشاره دارای جزییاتی است که برای آشنایی بهتر با آن‌ها می‌توان به Application Note های مختلف مراجعه کرد. برای نمونه از لینک زیر استفاده کنید.

متن کاربردی شرکت ST در مورد اصول ارتباط نمایش‌گرهای TFT LCD

 

اطلاعات
3
0
لینک و اشتراک
profile

Saber Yousefi

متخصص الکترونیک

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد. جستجو در آیسی
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد.
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند.
family

دیدگاه ها

profile
VHD گفت :
۱۴۰۱-۰۵-۰۸ ۱۷:۲۷

تشکر
ادامه پیدا کنه عالیه

profile
Zeus ‌ گفت :
۱۴۰۱-۰۵-۰۹ ۱۰:۵۲

سپاس از لطف شما

profile
سعید گفت :
۱۴۰۱-۰۵-۰۷ ۲۰:۱۸

عالی بود لطفآ ادامه دهید
ممنون بابت زحماتتون

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله