Добавление STemWin в проект.
1 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 добавить файл библиотеки STemWin532_CM4_Keil.lib для проекта без RTOS
STemWin532_CM4_OS_Keil.lib для RTOS
2 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> inc добавить все заголовочные h файлы. с прототипами функций из lib файла
3 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> Config добавить
файлы конфигурации GUI
GUIConf.c
GUIConf.h
и дисплея
для дисплеев без контроллера LTDC (RGB)
LCDConf_Lin_Template.c
LCDConf_Lin_Template.h
для дисплеев с контроллером
LCDConf_FlexColor_Template.c
LCDConf_FlexColor_Templateh
4 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> OS добавить
GUI_X.c для проекта без RTOS
GUI_X_OS.c для RTOS
Для Keil библиотека emWin находится в папке
Keil -> ARM -> PACK -> Keil-Middleware -> 7.4.0 -> emWin
The function GUI_Init() calls the functions (please make sure those functions to not cause the hard fault)
1 - GUI_X_Config()
2 - LCD_X_Config()
3 - LCD_X_DisplayDriver() - которая вызывает при первом обращении процедуру настройки и инициализации дисплея
4 - GUI_X_Init
#if defined (STM32F429X)
#define GUI_NUMBYTES (1024) * 96 // x KByte
#elif defined (STM32F40XX) || defined (STM32F2XX) || defined (STM32F10X_HD_VL)
#define GUI_NUMBYTES (1024) * 512 // x KByte
#elif defined (STM32F10X_HD)
#define GUI_NUMBYTES (1024) * 53 // x KByte
#elif defined (STM32F10X_MD)
#define GUI_NUMBYTES (1024) * 10 // x KByte
#elif defined (STM32F10X_MD_VL) || defined (STM32F0XX)
#define GUI_NUMBYTES (1024) * 3 // x KByte
#elif defined (STM32F30X)
#define GUI_NUMBYTES (1024) * 25 // x KByte
#elif defined (STM32F37X)
#define GUI_NUMBYTES (1024) * 22 // x KByte
#elif defined (STM32L1XX_HD)
#define GUI_NUMBYTES (1024) * 35 // x KByte
#elif defined (STM32L1XX_MD)
#define GUI_NUMBYTES (1024) * 6 // x KByte
#else
#define GUI_NUMBYTES (1024) * 40 // x KByte
#endif
GUIConf.h
/* 32 bit aligned memory area */
U32 extMem[GUI_NUMBYTES / 4];
Для размещения рабочего буфера STemWin адресам SDRAM
/* 32 bit aligned memory area */
#ifdef __ICCARM__
#pragma location=0x68000000
static __no_init U32 extMem[GUI_NUMBYTES / 4];
#elif defined (__CC_ARM)
static U32 extMem[GUI_NUMBYTES / 4] __attribute__((at(0x68000000)));
#elif defined (__GNUC__)
static U32 extMem[GUI_NUMBYTES / 4] __attribute__((section(".ExtRAMData")));
#endif
Есть в демо STemWin
Адрес подставить, где размещена SDRAM
1 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 добавить файл библиотеки STemWin532_CM4_Keil.lib для проекта без RTOS
STemWin532_CM4_OS_Keil.lib для RTOS
2 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> inc добавить все заголовочные h файлы. с прототипами функций из lib файла
3 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> Config добавить
файлы конфигурации GUI
GUIConf.c
GUIConf.h
и дисплея
для дисплеев без контроллера LTDC (RGB)
LCDConf_Lin_Template.c
LCDConf_Lin_Template.h
для дисплеев с контроллером
LCDConf_FlexColor_Template.c
LCDConf_FlexColor_Templateh
4 - из папки STemWin_Library_V1.2.0 -> Library -> STemWinLibrary532 -> OS добавить
GUI_X.c для проекта без RTOS
GUI_X_OS.c для RTOS
Для Keil библиотека emWin находится в папке
Keil -> ARM -> PACK -> Keil-Middleware -> 7.4.0 -> emWin
The function GUI_Init() calls the functions (please make sure those functions to not cause the hard fault)
1 - GUI_X_Config()
2 - LCD_X_Config()
3 - LCD_X_DisplayDriver() - которая вызывает при первом обращении процедуру настройки и инициализации дисплея
4 - GUI_X_Init
#if defined (STM32F429X)
#define GUI_NUMBYTES (1024) * 96 // x KByte
#elif defined (STM32F40XX) || defined (STM32F2XX) || defined (STM32F10X_HD_VL)
#define GUI_NUMBYTES (1024) * 512 // x KByte
#elif defined (STM32F10X_HD)
#define GUI_NUMBYTES (1024) * 53 // x KByte
#elif defined (STM32F10X_MD)
#define GUI_NUMBYTES (1024) * 10 // x KByte
#elif defined (STM32F10X_MD_VL) || defined (STM32F0XX)
#define GUI_NUMBYTES (1024) * 3 // x KByte
#elif defined (STM32F30X)
#define GUI_NUMBYTES (1024) * 25 // x KByte
#elif defined (STM32F37X)
#define GUI_NUMBYTES (1024) * 22 // x KByte
#elif defined (STM32L1XX_HD)
#define GUI_NUMBYTES (1024) * 35 // x KByte
#elif defined (STM32L1XX_MD)
#define GUI_NUMBYTES (1024) * 6 // x KByte
#else
#define GUI_NUMBYTES (1024) * 40 // x KByte
#endif
GUIConf.h
/* 32 bit aligned memory area */
U32 extMem[GUI_NUMBYTES / 4];
Для размещения рабочего буфера STemWin адресам SDRAM
/* 32 bit aligned memory area */
#ifdef __ICCARM__
#pragma location=0x68000000
static __no_init U32 extMem[GUI_NUMBYTES / 4];
#elif defined (__CC_ARM)
static U32 extMem[GUI_NUMBYTES / 4] __attribute__((at(0x68000000)));
#elif defined (__GNUC__)
static U32 extMem[GUI_NUMBYTES / 4] __attribute__((section(".ExtRAMData")));
#endif
Есть в демо STemWin
Адрес подставить, где размещена SDRAM
Комментариев нет:
Отправить комментарий