ARM, STM32, بلاگ خبری, توصیه شده, معرفی, مقاله

QT برای میکروکنترلر‌ها

Qt برای میکروکنترلر
مطمئنا اگر یک مهندس الکترونیک فعال در حوزه صنعت باشید حتما با چالشی به نام GUI برخورد کرده‌اید به طور مثال شما یک پروژه را از لحاظ سخت‌افزاری به نحو احسنت انجام داده‌اید و بسیار عالی کار می‌کند اما اگر برای سخت‌افزار خود یک محیط گرافیکی عالی درست نکنید در واقع می‌توان گفت که بخش بزرگی از پروژه شما نا تمام مانده است که اگر هم دقت کنید بیشترین مهندسین الکترونیک در این بخش دچار مشکل هستند. در این مقاله می‌خواهیم به معرفی یک ابزار کاملا کاربردی برای ایجاد یک محیط گرافیکی برای دستگاه‌های الکترونیکی بپردازیم.

GUI چیست؟

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

QT چیست؟

کیوت (به انگلیسیQt) یک ابزار متن‌باز است که مجموعه‌ای از کتابخانه‌ها و سرآیندهای نوشته‌شده به زبان ++C در آن موجود است. که به برنامه‌نویس امکان توسعه آسان نرم‌افزارهای کاربردی را می‌دهد. کیوت شامل چندین کلاس برای کار با واسط گرافیکی، چندرسانه، ابزارهای پایگاه‌داده، شبکه و … است. نرم‌افزارهای نوشته شده با ابزار کیوت قادراند تا با استفاده از یک کامپایلر زبان سی‌پلاس‌پلاس برای طیف وسیعی از سیستم‌عامل‌ها از جمله گنو/لینوکس (نسخه‌های رومیزی و وسیله‌های قابل حمل)، ویندوز، ویندوز CE، مک‌اواس و … مورد استفاده قرار گیرند. بدین ترتیب حمل نرم‌افزار نوشته شده بدون تغییر در متن کد نوشته شده امکان‌پذیر است. از کیوت در زبان‌های برنامه‌نویسی متعددی مانند ++C و جاوا وپایتون می‌توان استفاده‌کرد. خب تا اینجا که مطالعه کردید در واقع یک توضیح کلی از QT بود اما جدیدا نسخه‌ای از این نرم‌افزار منتشر شده است که دقیقا هم با این عنوان زیر می‌باشد.

QT برای میکروکنترلر‌ها QT چیست؟

در واقع در ورژن جدید این نرم‌افزار همانطوری که در تیتر مشاهده می‌کنید نسخه‌ ای ارائه شده است، که برای ایجاد یک محیط گرافیکی برای میکروکنترلر‌ها می‌باشد و نکته جالب اینجا است که گفته شده است محیط گرافیکی موردنظر بدون سیستم عامل روی دستگاه موردنظر عمل می‌کند. در واقع به جرات می‌توان گفت از این به بعد هر شخصی که مقداری با میکروکنترلر‌ها کار کرده باشد به راحتی می‌تواند یک محیط کاملا گرافیکی را برای سخت‌افزار موردنظر خود درست کند.( البته نه اینکه قبلا نشه اینکارو کرد در واقع این ابزار کار رو برای ما راحت‌تر کرده دوستانی که با Nodered کار کرده باشند بهتر متوجه موضوع خواهند شد اما کلیت ماجرا ساختن یک محیط گرافیکی زیباتر با دردسر کمتره). در حالی که کاربران برنامه های خود را می‌توانند برای میکروکنترلر‌ها ایجاد کنند، توسعه دهندگان می توانند از زبان UI قدرتمند QML و مجموعه کنترلهای Qt Quick آماده نیز استفاده کنند. از جمله ابزارهای جدید طراحی و توسعه Qt شامل Qt Design و Qt Creator می‌باشد که از توسعه ابزار جدید گرافیکی پشتیبانی می کند. تیم Qt همچنین اطمینان می دهد که کاربران فعلی Qt می توانند به توسعه برنامه های کاربردی خود برای میکروکنترلر‌ها ادامه دهند. به عبارتی می توانند UI طراحی شده خود را با یک پلتفرم سخت افزاری پشتیبانی شده نیز امتحان کنید. شما میتوانید لایبرری های دمو این برنامه را از از این آدرس  دانلود نمایید. در حال حاضر، Qt به طور خاص برای میکروکنترلرهای سری Arm Cortex-M تولید شده است، و با بعضی از آن‌ها تست شده است که در ادامه آن‌ها را ذکر می‌کنیم.  
  • STM32F769i-DISCO
  • STM32F7508-DK
  • I.MX RT1050-EVKB
  • Renesas RH850
  در  ادامه می‌توانید نسخه آزمایشی راه‌اندازی ترموستات را با مشخصات زیر می توانید بر روی برد NXP I.MX RT1050-EVKB که اجرا شده است مشاهده کنید.
  • Screen Resolution of 480×272, Color -16 bit
  • Frame Rate 60 FPS
  • SRAM Used 1625 KB
  • FrameBuffer 522KB
  منبع
BLO OM

درباره BLO OM

«السَّلَامُ عَلَیْکَ یَا أَبَا عَبْدِ اللَّهِ، السَّلَامُ عَلَیْکَ وَ رَحْمَهُ اللَّهِ وَ بَرَکَاتُهُ».

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

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

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

12 دیدگاه در “QT برای میکروکنترلر‌ها

  1. mohsen گفت:

    سلام خسته نباشید
    تشکر از نویسنده مقاله و سایت سیسوگ
    بین نرم افزار مختلف برای ساخت محیط گرافیکی برای میکروکنترلر مثل qt touchgfx emwin .. به نظر شما کامل ترین و بهترین محیط کدام است؟

    1. زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      خیلی بستگی داره که بخواید چه کاری انجام بدید و چقدر قدرت پردازشی داشته باشید
      هر کدوم از کتابخانه ها قابلیت ها ومحدودیت های خاص خودشون رو دارن – ولی من به شخصه کتابخانه lvgl را پیشنهاد میکنم چرا که رایگان است متن باز است و به سرعت در حال پیشرفت است و گرافیک خیلی خوبی داره.

  2. حسین گفت:

    سلام.
    این qt برای میکروهای کم حجم مثل stm32f103c8t6 قابل استفاده هست ؟
    یک کتابخانه دیگه هست به اسم st emwin که از شرح امکاناتش فهمیدم به در این میکرو نمیخوره .
    راستش یک مدتی هست یک ایده برای نوشتن یک کتابخانه منوی ساده برای این قبیل میکروها توی ذهنمه ، منتها با خودم گفتم از شما بپرسم
    ببینم همچین چیزی هست؟
    که الکی وقتم رو نگذارم.
    با سپاس

    1. زئوس Zeus زئوس Zeus گفت:

      از qt تنها توی میکروکنترلرهایی با ظرفیت حافظه زیاد میشه استفاده کرد وضعیت emwin باز مقداری بهتره ولی اصلا توصیه اش نمی کنم چون پولیه و نسخه رایگانش محدودیت زیاد داره 🙂
      من همیشه از کارهای گرافیکی بدم می اومده :/
      کتابخونه متن بازی که میتونم بهتون معرفی کنم که لایت هم هست کتابخانه littlevgl یه نگاهی بهش بندازید
      https://littlevgl.com/

      1. حسین گفت:

        اختیار داری جناب زئوس هیچی مثل کارای گرافیکی کیف نمیده .
        st یک نسخه رایگان عرضه کرده به نام st emwin . باهاش کار نکردم ولی گمان نمیکنم محدودیتی داشته باشه .
        این کتابخانه پیشنهادی شما رو نگاه کردم .
        حداقل حافظه رم و فلش مورد نیاز کم بود flash 80KB ram 10…20KB که نوشته برای very essential components. ولی هنوز ازحد میکروی stm32f103c8 فراتره.
        البته برای فلش 128 ظاهرا کار میده .
        البته چیزی که توی ذهنمه خیلی ساده تر از این حرفهاست .چیز ساده تری از littlevgl تقریبا شبیه همون منوهای ساده لیستی که با 4 یا 5 دگمه کار میکنه .و شکل گرافیکی زیبا داشته باشه؟
        چیزی وجود داره توی این مایه ها؟
        سپاس.

        1. زئوس Zeus زئوس Zeus گفت:

          خوب نظر ها متفاوته من از هرچیزی که گرافیک داشته باشه فراری ام 🙂 (یه دلیل منطقیش اینه که گرافیک زمان زیادی رو باید صرف طراحی کنید و کد زیادی رو برای هندل کردن ایونت های گرافیکی بنویسید).
          خوب این کتابخانه st که رایگان هم هست دچار محدودیت هست مثلا تا اونجا که یادمه مولتی ترد رو پشتیبانی نمیکنه – یا برخی المان های گرافیکی پیش رفته رو نداشت مثلا کتابخونه دکد png یا اینطور چیزایی بود – این بررسی من مربوط به ۳ سال پیشه شاید الان چیزهایی تغییر کرده باشه که ازش اطلاعی ندارم
          خوب تو این مایه ها امم – من که چیزی یادم نمیاد به کتابخانه های uGUI هم نگاهی بندازید دیگه چیزی سراغ ندارم.
          خواهش میکنم

          1. حسین گفت:

            سپاس جناب زئوس .

          2. زئوس Zeus زئوس Zeus گفت:

            خواهش میکنم دوست عزیز 🙂

  3. مجید مردانه مجید گفت:

    سلام

    این ابزار رو چطور میشه دانلود کرد ؟ منظورم Qt for MCUs هست

    1. زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      جزییات بیشترش رو از لینک زیر مشاهده کنید
      https://www.qt.io/qt-for-mcus

  4. حمید گفت:

    سلام
    وقت بخیر
    ممنون از مطالب مفیدتون
    چه طور می تونیم این محیط qt برای میکرو دانلود کنیم

    1. زئوس Zeus زئوس Zeus گفت:

      https://www.qt.io/qt-for-mcus
      جزییات بیشترش رو میتونید در این لینک ببینید
      دمو هم برای دانلود گذاشته