本文作者:Miler Shao
1、STemWIN到底是個什么東東?先得說說emWin,emWin是德國Segger公司推出的圖形界面庫(GUI)。STemWIN就是ST公司與SEGGER公司合作而產生的基于SEGGER圖形庫的專業級圖形庫。該庫只能應用于STM32 MCU硬件,且免費地以LIB文件的形式提供給STM32用戶?梢栽谌我庑枰狶CD/TFT顯示的STM32應用產品上構建圖形用戶界面。
2、為什么要這個圖形界面庫? 很多產品需要人機交互,人機交互往往需要LCD圖形顯示,所以就需要在產品開發應用過程中設計LCD圖形界面。STemWin提供了很多控件,在制作那些是比較復雜、絢麗的界面時,使用這些控件可以相對方便輕松地完成復雜的界面設計,并大大減少開發設計工作量。
3、在哪里可以找到STemWIN圖形庫? 它集成在STM32CUBE的固件包里。(比如 STM32CubeF2、STM32CubeF3 和STM32CubeF4、STM32CubeF7)。可在意法半導體的網站上免費下載 (http://www.st.com/stm32cube)。  4、圖形庫的軟件包內含有所有 STemWin 功能嗎?
是的, 所交付的鎖定的二進制文件在編譯階段已經使能了所有的功能。 
5、最后提交的的二進制文件會不會太龐大? 這個取決于具體應用。編譯器僅考慮從外部函數所調用的部分;因此,未使用的資源不會包含在最終應用程序代碼當中。
6、STemWin 庫該如何配置(在生成二進制文件過程中)? 使用 GUIConf.h 位于Libraries\STemWinLibraryXYZ\Config\)文件來生成 STemWin 二進制文件。 文件內容如下所示: #define GUI_NUM_LAYERS (2) #define GUI_DEFAULT_FONT &GUI_Font6x8 #define GUI_SUPPORT_TOUCH (1) #define GUI_SUPPORT_MOUSE (1) #define GUI_SUPPORT_UNICODE (1) #define GUI_WINSUPPORT (1) #define GUI_SUPPORT_MEMDEV (1) #define GUI_SUPPORT_AA (1) #define WM_SUPPORT_STATIC_MEMDEV (1)
7、如何支持新的 LCD 控制器? 為了支持任意類型的 LCD控制器,用戶需要實現兩個配置文件: LCDConf.c/.h GUIConf.c/.h (細節可以閱讀 ST官方文檔AN4323第3.1 節文件的內容。)
8、必須強制使用 FreeRTOS 操作系統嗎? 那倒不是, 可以使用任何其它操作系統。但需要對應的GUI_X_OS.c 文件(細節可以閱讀ST官方文檔AN4323 第3.1.3節)。
9、項目編譯時沒有報錯,但運行應用程序時沒有顯示輸出。 這個問題可能由以下原因產生: 堆棧過小,尤其是堆[HEAP]的大小。 顯示控制器初始化出錯。 顯示接口配置出錯。
10、上面提到的文檔AN4323哪里去找? 簡單,你可以去ST 中文網WWW.STMCU.COM.CN或者英文網 WWW.ST.COM 搜索STEMWIN或AN4323 都可以。 |