1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zlgopen-awtk

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
how_to_optimize_for_512K_flash.md 2.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 22:52 91e8897

Оптимизация под 512K Flash

Фон

  • В дефолтном режиме, demo1 на STMF103 занимает следующее пространство:
Program Size: Code=222780 RO-data=232212 RW-data=720 ZI-data=53440  

Для платформы с ограничением в 512К Flash, доступное пространство для приложения становится меньше. В этом разделе представлены методы дальнейшей оптимизации пространства.

AWTK оптимизация

    1. Повышение уровня оптимизации компилятора на один уровень (O1):

Можно оптимизировать около 30К пространства:

Program Size: Code=193658 RO-data=232214 RW-data=720 ZI-data=53440  
    1. Удаление поддержки алгоритма Unicode переноса строки.

Измените файл awtk_config.h, удалив определение WITH_UNICODE_BREAK.

//#define WITH_UNICODE_BREAK 1

Можно оптимизировать примерно 50К пространства:

Program Size: Code=190338 RO-data=186674 RW-data=400 ZI-data=53440  
    1. Удаление ненужного формата bitmap.

Для LCD в формате BGR565, измените файл awtk_config.h и добавьте макроопределение:

/**
 * Для платформ с ограниченным объёмом Flash памяти (512K), и LCD в формате BGR565. Если требуется дальнейшая оптимизация пространства, удалите избыточный код поддержки форматов bitmap. Определите этот макрос.
 * Другие форматы LCD можно настроить самостоятельно: в src/blend/soft_g2d.c сохраните необходимые форматы.
 */
#define LCD_BGR565_LITE 1

Можно оптимизировать приблизительно 30K пространства:

Program Size: Code=163602 RO-data=186498 RW-data=400 ZI-data=53440  
    1. Повышение уровня оптимизации компилятора ещё на один уровень (O2):

Можно дополнительно оптимизировать около 10К пространства:

Program Size: Code=149510 RO-data=186494 RW-data=400 ZI-data=53440  
    1. Удаление ненужных элементов управления:

В целом, можно оптимизировать около 20К пространства.

APP оптимизация

  • При разработке интерфейса избегайте использования inline стилей. Используйте общие стили, чтобы уменьшить использование RAM и Flash.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zlgopen-awtk.git
git@api.gitlife.ru:oschina-mirror/zlgopen-awtk.git
oschina-mirror
zlgopen-awtk
zlgopen-awtk
master