NELSCONELSCOحمیدرضا محبوب مقدم
← بازگشت به نمونه‌کارهاسیستم‌های تعبیه‌شده (Embedded)

TouchGFX روی فلش خارجی QSPI — STM32H7B0

کارفرما
محصول تعبیه‌شده‌ی داخلی
سال
2024
دسته‌بندی
سیستم‌های تعبیه‌شده (Embedded)
TouchGFX روی فلش خارجی QSPI — STM32H7B0

نلسکو یک محدودیت حافظه‌ی روی‌تراشه را با بوت کردن یک رابط کامل TouchGFX از فلش خارجی QSPI حل کرد، کاری که عمیقاً به دانش معماری ARM Cortex-M7، فرآیند بوت STM32H7 و پریفرال QSPI نیاز دارد.

بوت‌لودر سفارشی برای راه‌اندازی سخت‌افزار، نگاشت حافظه در حالت اجرا-در-جا (XIP) و پرش تمیز به اپلیکیشن روی فلش خارجی QSPI.

External Loader سفارشی برای STM32CubeProgrammer جهت برنامه‌ریزی مستقیم فلش QSPI از داخل IDE، و یک رابط کامل TouchGFX با تعامل دکمه‌محور برای صحه‌گذاری عملکرد.

چالش پروژه

کد اپلیکیشن TouchGFX از حافظه‌ی داخلی STM32H7B0 فراتر رفته بود. باید میکروکنترلر را وادار می‌کردیم که به‌جای حافظه‌ی داخلی، کل اپلیکیشن را از فلش خارجی QSPI واکشی و اجرا کند، و ابزار برنامه‌ریزی (STM32CubeProgrammer) نیز به‌طور پیش‌فرض از حافظه‌ی خارجی پشتیبانی نمی‌کرد.

رویکرد ما

یک بوت‌لودر سفارشی نوشته شد که سخت‌افزار را راه‌اندازی می‌کند، حافظه را در حالت اجرا-در-جا (XIP) نگاشت می‌کند و به‌صورت تمیز به اپلیکیشن خارجی پرش می‌کند. سپس یک External Loader سفارشی برای STM32CubeProgrammer توسعه یافت تا برنامه‌ریزی فلش QSPI مستقیماً از داخل IDE ممکن شود، و یک رابط کامل TouchGFX با تعامل دکمه‌محور برای صحه‌گذاری بر کارایی سامانه ساخته شد.

نتیجه

این کار محدودیت حافظه‌ی روی‌تراشه را برطرف کرد، برنامه‌ریزی فلش خارجی را مستقیماً از داخل IDE ممکن ساخت و اجرای روان یک رابط کامل TouchGFX را از حافظه‌ی خارجی نشان داد، همراه با تجربه‌ی عملی در بوت STM32H7 و QSPI.

نتایج پروژه

  • عبور از محدودیت حافظه‌ی روی‌تراشه‌ی STM32H7B0
  • برنامه‌ریزی فلش خارجی QSPI مستقیم از IDE
  • اجرای روان رابط کامل TouchGFX از حافظه‌ی خارجی
STM32H7STM32H7B0TouchGFXQSPIXIPBootloaderARM Cortex-M7

پروژه‌ای مشابه دارید؟

با تیم فنی نلسکو در ارتباط باشید تا نیازهای پروژه شما را بررسی کنیم.