میکروکنترلرهای ARM همه مطالب

آموزش کتابخانه emwin

آموزش کتابخانه emwin

-کتابخانه emwin چیست؟

اگر تجربه  کار با نمایشگرهای رنگی را داشته اید و یا به تازگی قصد ساخت یک دستگاه الکترونیکی با رابط کاربری گرافیکی را  دارید قطعا باید بدانید که ساخت یک رابط گرافیکی کاربر پسند بر روی صفحه نمایش های رنگی کاری دشوار و چالش برانگیز است.شاید نوشتن متن به تنهایی با استفاده از نرم افزارهای کمکی ویندوز برای تبدیل کاراکتر به کدهای برنامه کمی راحت باشد اما نمایش کامپوننت هایی مانند کلید ها ، لیست باکس ها ، شاخص ها و اشکال هندسی و … قطعا کاری زمانبر و سخت است. برای حل این مشکل باید به سراغ کتابخانه های گرافیکی رفت . این کتابخانه ها معمولا تجاری بوده و برای استفاده از آنها باید هزینه لازم را پرداخت نمود . اما در این بین کتابخانه های رایگان نیز وجود دارند که می توانید از آنها در پروژه های خود استفاده نمایید. یکی از معروفترین کتابخانه موجود که به صورت رایگان در دسترس می باشد کتابخانه گرافیکی emwin  نام دارد.کتابخانه emwin  در واقع یک کتابخانه کامل برای طراحی محیط گرافیکی بر روی نمایشگرها می باشد. کتابخانه emwin  قابلیت نصب بر روی انواع میکروکنترلرها و سیستم های EMBEDED را دارا می باشد. کارایی بالای این کتابخانه در ایجاد یک محیط کاربری زیبا و منحصر به فرد باعث شده که افرادو شرکت های بسیاری در دنیا از این کتابخانه در محصولات خود استفاده نمایند. کتابخانه emwin  محصول شرکت آلمانی Segger  می باشد که علاوه بر emwin کتابخانه های بسیار زیادی را برای استفاده در سیستم های embeded طراحی نموده است.

زبان برنامه نویسی کتابخانه emwin :

کتابخانه emwin نوشته شده به زبان C وقابل استفاده در انواع پلتفرم ها ازجمله keil , IAR و … است. همچنین از کتابخانه گرافیکی emwin می توان در پروژه های c++ نیز استفاده نمود.از دیگر قابلیت های کتابخانه emwin امکان استفاده از این پکیج در محیط های برنامه نویسی single-task و multi-task و سازگار با انواع سیستم عامل ها رایج (RTOS)درریزپردازنده ها مانند Embos و RTX  و ..است.

آموزش کتابخانه emwin

کتابخانه emwin بر روی کدام lcd ها قابل پیاده سازی است:

از کتابخانه emwin بر روی انواع LCD ها با هر ابغاد و اندازه ای و هر نوع درایوری قابل پیاده سازی می باشد. در واقع کتابخانه emwin مستقل از هرنوع درایور lcd و هر نوع پردازنده می باشد. به عنوان مثال اگر از کاربران میکروکنترلر های stm32 هستید به راحتی می توانید از این کتابخانه در پروژه های تولید شده با استفاده از stm32cubemx استفاده نمایید.انعطاف این کتابخانه باعث شده تار بتوان انواع پروژه های صنعتی و کاربردی را طراحی و اجرا نمود.

آموزش کتابخانه emwin

-کارایی بالا در emwin :

کتابخانه emwin یا stemwin یک بسته گرافیکی با قابلیت مصرف حداقل میزان RAM و ROM و بهینه شده برای استفاده در انواع میکروکنترلرها بدون تاثیر قابل توجه در سرعت نمایش است.کتابخانه گرافیکی emwin قابلیت پیاده سازی بر روی انواع صفحه نمایش های رنگی با کنترلرهای متفاوت را دارا می باشد. lcd های موجود در بازار در سایزهاو کنترلرهای مختلفی از جمله ili9325 , ssd1963 , ili93200,ili9300  و وجود دارد که به راحتی می توان کتابخانه emwin یا stemwin را بر روی آنها پیاده سازی نمود.

آموزش کتابخانه emwin

-شبیه سازی Emwin  در کامپیوتر :

وبسایت رسمی segger.com  سازنده کتابخانه emwin  این امکان را فراهم نموده است که کاربرانی که از این کتابخانه استفاده می کنند بتوانند قبل از اجرای برنامه بر روی میکروکنترلر ، کدهای نوشته شده خود را بر روی کامپیوتر تست و خطایابی کنند.درواقع به همراه این بسته یک پروژه برای استفاده در محیط برنامه نویسی ویؤوال استودیو Visual studio  ارائه شده است . که براحتی می توانید از این پروژه استفاده نمایید.

آموزش کتابخانه emwin

برای آموزش کتابخانه emwin از کجا شروع کنیم:

کتابخانه emwin یا stemwin یک بسته گرافیکی با قابلیت مصرف حداقل میزان RAM و ROM و بهینه شده برای استفاده در انواع میکروکنترلرها بدون تاثیر قابل توجه در سرعت نمایش است.کتابخانه گرافیکی emwin قابلیت پیاده سازی بر روی انواع صفحه نمایش های رنگی با کنترلرهای متفاوت را دارا می باشد. lcd های موجود در بازار در سایزهاو کنترلرهای مختلفی از جمله ili9325 , ssd1963 , ili93200,ili9300  و وجود دارد که به راحتی می توان کتابخانه emwin یا stemwin را بر روی آنها پیاده سازی نمود.با استفاده از کتابخانه emwin می توان انواع اپلیکیشن ها برای دستگاههای سیار که با باتری تغذیه می شوند تا سیستم هایی با پیچیدگی و پردازش سنگین برای نمایش تصاویر و انیمیشن را طراحی نمود. در حال حاضر پکیج گرافیکی emwin ساخت کمپانی segger در انواع پلتفرم ها از جمله محصولات صنعتی , اینترنت اشیاء ، اتومبیل ، شبکه ، دستگاههای پزشکی ، هواشناسی و … مورد استفاده قرار می گیرد.ram

-میزان مصرف حافظه در کتابخانه emwin :

همانطور که در بالا توضیح دادیم کتابخانه emwin قابلیت پیاده سازی بر روی انواع میکروکنترلر ها از جمله میکروکنترلرهای 16 بیتی تا 32 بیتی را دارا می باشد . اما یکی از مسائل مهم در استفاده از کتابخانه emwin وجود حداقل میزان RAM و ROM یا به اصطلاح حافظه FLASH برای راه اندازی می باشد . فرص کنید قصد پیاده سازی کتابخانه emwin را بر روی یک LCD 3.2 اینچ را دارید . بنا به گفته مرجع اصلی emwin  حداقل میزان حافظه برای راه اندازی بدون داشتن هیج گونه پنجره ای به شرح زیر می باشد:

RAM:100 bytes

STACK:600 bytes

ROM: 10-25 kbytes

اما برا ارائه یک اپلیکیشن با کیفیت و پویا مقدار حافظه پیشنهادی به شرح زیر می باشد:

RAM:2-6 Kb (بستگی به تغداد پنجره های مورد استفاده دارد)

STACK:1200-1800 bytes  (بستگی به تغداد توابع مورد استفاده دارد)

ROM: 30-60 Kb  (بستگی به تغداد توابع مورد استفاده دارد)

از آنجا که در حال حاضر استفاده از میکروکنترلرهای 32 بیتی arm  از جمله میکروکنترلرهای شرکت NXP مانند LPC1768, LPC1788,..  میکروکنترلرهای شرکت ST MICROELECTRONIC سری  STM32FXXX و اتمل سری at91 در دنیا رواج پیدا کرده است می تواند کزینه های مناسبی برای استفاده از کتابخانه گرافیکی emwin  باشد.

-نوشتن عبارات فارسی در emwin  :

شاید برای شما جای سوال باشد که آیا میتوان با استفاده از کتابخانه emwin  عبارات فارسی را بر روی lcd نمایش داد ؟ بله . پکیج emwin  به همراه تعدادی نرم افزار ویندوز ارائه می شود که یکی از این نرم افزار fontconverter.exe  می باشد .با استفاده از این نرم افزار براحتی قادر خواهید بود هر فونتی که در ویندوز کامپیوتر خود نصب کرده اید را به راحتی به فایل های برنامه برای استفاده در کتابخانه emwin  تبدیل کنید . همچنین اندازه فونت و ویژگی های فونت مانند Italic  و bold قابل اعمال می باشد.

-نمایش تصاویر با فرمت های مختلف در کتابخانه emwin :

کتابخانه emwin  قادر به نمایش تصاویر با فرمت های مختلف از جمله jpeg  و png و gif و bmp را دارا می باشد. همانطور که می دانید به غیر از فرمت bmp بقیه تصاویر دارای کدبندی و فشردگی می باشند . اما کتابخانه emwin  قابلیت پخش همه فرمت های ذکر شده را دارد.

آموزش کتابخانه emwin
نمایش تصویر با فرمت JPG

کامپوننت ها و عناصر مورد استفاده در کتابخانه emwin :

با استفاده از کتابخانه جامع emwin  قادر خواهید انواع کامپوننت ها را تنها با چند خط کد برنامه بر روی نمایشگر خود نمایش دهید .کامپوننت های موجود در کتابخانه emwin  شامل مواردی از جمله Button , Dropdown , Edit , …  می باشد.

آموزش کتابخانه emwin
آموزش کتابخانه emwin

به زودی آموزش های کامل کتابخانه گرافیکی emwin  را دروبسایت فارس الکترونیک به شما علاقه مندان ارائه خواهیم نمود.

موفق و پیروز باشید.

2 دیدگاه

  • با سلام
    ممنون از آموزش هاتون و لطفا آموزش emwin را برای stm32 بزارید چون اکثر آموزش ها بر پایه lpc هست
    ممنون.
    به شدت منتظر آموزش کامل هستم

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

4 + 16 =