اطلاعیه

Collapse
No announcement yet.

حد پایین RAM برای EMWIN

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    حد پایین RAM برای EMWIN

    با سلام خدمت دوستان عزیز

    مشکلی که من داشتم در کار با EMWIN این هستش که در برنامه ای که من دارم تنها نصف صفحه رنگ آمیزی می شود و یا به جای رسم یک دایره کامل نصف آن را نشان می دهد. در این رابطه سوال زیر را در اینترنت قرار دادم: ولی جواب درستی را نگرفتم . یکی از دوستان می گفت که مشکل از کمبود حافظه برای EMWIN می باشد برا ی همین این سوال را در اینجا قرار دادم. من در رابطه با تخصیص حافظه در EMWIN برای STM32F103RE می خواستم در رابطه با محاسبه حد min حافظه ای که باید برای emwin در نظر داشت تظرتون رو بدونم. برای مثال برای tft با درایور ILI9325 و 320x240 پیکسل مقدار :
    کد:
    [LEFT]#define GUI_NUMBYTES 
    [/LEFT]
    رو چقدر باید تعریف کرد و اینکه
    کد:
    [LEFT]#define GUI_BLOCKSIZE 0x80
    [/LEFT]
    چی هستش ?
    و آیا RAM مورد استفاده قرار می گیرد یا ROM?

    من در انجمن SEGGER در لینک زیر دیدم که این روش رو برای محاسبه حافظه EMWIN معرفی کرده:
    https://forum.segger.com/index.php/T...mory-or-SDRAM/

    کد:
    It has a size of x * y * BPP * number of buffers
    static U8 _aVRAM0[XSIZE_PHYS * YSIZE_PHYS * NUM_BUFFERS * NUM_VSCREENS * BYTE_PER_PIXEL_0] __attribute__ ((section (".EXT_MEM")))
    ;
    منظور از
    کد:
    BYTE_PER_PIXEL
    چه مقداری می باشد و کجا تعریف می شود؟
    و توضیحی که در MANUAL EMWIN ارائه شده مطابق عکس زیر چه معنایی داره:


    و آیا مطابق MANUAL EMWIN و بر اساس استفاده از متغییر GUIDRV_FlexColor در برنامه من و مطابق شکل زیر :


    مقدار BPP برابر 16 می باشد. و بر این اساس برای کار با 320*240 پیکسل باید 153600 بایت استفاه کرد و البته معایب کمبود حافظه چه جیزی خواهد بود؟.
    آبا برای کار با :
    کد:
    [LEFT]GUI_SetBkColor(GUI_GREEN);
    [/LEFT]
    این کمبود حافظه چطور خودشو نشون میده؟

    با تشکر.
    جدیدترین ویرایش توسط soheil_sabz; ۲۱:۰۸ ۱۳۹۷/۱۲/۰۱.

    #2
    پاسخ : حد پایین RAM برای EMWIN

    سلام.
    شاید سوال من هم مرتبط باشه. نمیدونم.!
    در GUI Builder وقتی تصویر با اندازه و حجم کم میزارم، در کامپایل Keil خطایی نمیده و میتونم برنامه را اجرا کنم.
    اما اگر تصاویر بزرگ باشه و با تعداد رنگ بیشتر، کامپایلر keil خطای کمبود حافظه میده.
    چطور میشه این خطا را رفع کرد؟
    .\PSB_Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching GUIDEV_StaticDevices.o(.data).
    .\PSB_Project.axf: Error: L6407E: Sections of aggregate size 0x20 bytes could not fit into .ANY selector(s).

    دیدگاه

    لطفا صبر کنید...
    X