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