基於STemWin的STM32開發與實踐

基於STemWin的STM32開發與實踐

《基於STemWin的STM32開發與實踐》是2015年電子工業出版社出版的圖書,作者是白永斌、張漢光、黃強。

內容簡介

本書全面、深入地介紹了STemWin圖形用戶界面系統(GUI)的強大功能和使用方法。內容涵蓋STemWin的基礎知識、移植方法,BMP、JPEG、GIF、PNG等圖片檔案的解碼顯示和所有控制項的使用方法,並提供了完善的漢字顯示方案。本書採用“理論+實驗”的編寫方式,配套大量的實驗例程,圖文並茂,內容通俗易懂,可以幫助讀者快速掌握STemWin的套用技術。

目錄

第1章 STemWin基礎知識

1.1 STemWin概述

1.1.1 STemWin、emWin、μCGUI之間的關係

1.1.2 SEGGER公司介紹

1.1.3 STemWin介紹

1.1.4 STM32F103和STM32F407跑STemWin性能測試

1.2 STemWin5.xx的移植

1.2.1 關於STemWin移植的重要說明

1.2.2 移植前的準備工作

1.2.3 STemWin的裸機移植

1.2.4 STemWin帶RTOS的移植

1.3 RA8875屏觸摸校準自適應

1.3.1 觸摸校準基礎知識介紹

1.3.2 觸控螢幕校準步驟

1.3.3 觸摸參數自動載入

1.4 μCGUIBulder4.0和GUIBulder5.22的使用方法

1.4.1 GUIBulder5.22的使用步驟

1.4.2 μCGUIBulder4.0的使用

1.4.3 將生成的代碼移植到STM32-V5開發板

1.5 emWin5.24模擬器與查看器

1.5.1 emWin5.24模擬器

1.5.2 emWin5.24查看器

第2章 STemWin文本與數值顯示

2.1 文本顯示

2.1.1 簡單文本顯示

2.1.2 文本顯示模式

2.1.3 GUI_DispStringInRectWrap函式的使用

2.1.4 文本顯示實例——自動換行的實現

2.2 數值顯示

2.2.1 十進制數的顯示

2.2.2 十六進制數和二進制數的顯示

2.2.3 浮點數的顯示

第3章 2D圖形庫

3.1 基本繪圖

3.1.1 畫筆設定

3.1.2 基本繪製

3.1.3 Alpha混合

3.2 繪製流點陣圖

3.2.1 生成C流檔案

3.2.2 移植到開發板

3.3 繪製圖形

3.3.1 繪製多邊形

3.3.2 繪製圓

3.3.3 繪製橢圓

3.3.4 繪製弧線

3.3.5 繪製線圖

3.3.6 繪製餅圖

第4章 STemWin圖片顯示

4.1 BMP圖片顯示

4.1.1 BMP圖片支持

4.1.2 繪製已經載入到存儲器的BMP圖片

4.1.3 繪製無須載入到存儲器的BMP圖片

4.2 JPEG圖片顯示

4.2.1 JPEG圖片支持

4.2.2 繪製已載入到存儲器的JPEG圖片

4.2.3 繪製無須載入到存儲器的JPEG圖片

4.3 GIF圖片顯示

4.3.1 GIF圖片支持

4.3.2 繪製已載入到存儲器的GIF圖片

4.3.3 繪製無須載入到存儲器的GIF圖片

4.4 PNG圖片顯示

4.4.1 PNG圖片支持

4.4.2 繪製已載入到存儲器的PNG圖片

4.4.3 繪製無須載入到存儲器的PNG圖片

第5章 STemWin字元顯示

5.1 STemWin支持字型

5.1.1 字型類型

5.1.2 字元集

5.1.3 標準字型

5.2 STemWin漢字顯示

5.2.1 漢字顯示基礎知識

5.2.2 漢字顯示方式

5.3 STemWin外語支持

5.3.1 Unicode

5.3.2 阿拉伯語支持

5.3.3 泰語支持

5.3.4 Shift JIS支持

5.4 外置字型(XBF)

5.4.1 XBF格式字型生成方法

5.4.2 XBF移植

5.5 系統獨立字型(SIF)

5.5.1 SIF格式字型生成方法

5.5.2 SIF移植

5.6 矢量字型(TrueType)

5.6.1 矢量字型概述

5.6.2 STemWin對矢量字型的支持

5.6.3 在模擬器上運行矢量字型

5.6.4 矢量字型移植

第6章 STemWin游標

6.1 STemWin支持的游標效果

6.2 在模擬器上演示游標

6.3 在模擬器上演示動態游標

第7章 STemWin支持的顏色

7.1 預定義顏色

7.2 固定調色板及其說明

7.3 在模擬器上演示顏色條測試例程

第8章 Sprite

8.1 Sprite概述

8.2 在模擬器上演示Sprite實例

第9章 STemWin抗鋸齒(AA)技術

9.1 抗鋸齒(AA)基礎知識

9.1.1 抗鋸齒質量

9.1.2 抗鋸齒字型

9.1.3 高解析度坐標

9.2 抗鋸齒API函式實例演示

9.3 抗鋸齒(AA)實例

9.3.1 實例1——AA_HiResAntialiasing

9.3.2 實例2——AA_HiResPixels

9.3.3 實例3——AA_Lines

第10章 STemWin多任務設計

10.1 模擬器多任務設計

10.1.1 單任務系統(超級循環)

10.1.2 多任務系統:一個任務調用emWin

10.1.3 多任務系統:多個任務調用emWin

10.1.4 官方推薦運行方式

10.1.5 在模擬器上運行多任務

10.2 μCOS-Ⅲ多任務設計

10.2.1 單任務系統(超級循環)

10.2.2 多任務系統:一個任務調用emWin

10.2.3 多任務系統:多個任務調用emWin

第11章 STemWin輸入設備

11.1 指針輸入設備(搖桿)

11.1.1 概述

11.1.2 指針輸入設備(API)

11.1.3 五向搖桿操作游標

11.2 鍵盤輸入(實體按鍵操作控制項)

11.2.1 概述

11.2.2 驅動層API

11.2.3 實體按鍵操作

第12章 STemWin視窗管理器

12.1 回調機制

12.1.1 術語說明

12.1.2 回調機制、無效化和渲染

12.2 訊息類型

12.2.1 訊息結構

12.2.2 訊息類型

12.2.3 系統類型訊息實例

12.2.4 指針輸入設備(PID)類型訊息實例

12.2.5 通知代碼類型訊息實例

12.3 定時器使用

12.3.1 定時器功能介紹

12.3.2 在桌面視窗上使用定時器實例

12.3.3 在對話框上使用定時器實例

12.4 ToolTips的使用

12.4.1 ToolTips概述

12.4.2 ToolTips實例

12.5 視窗管理器實例

12.5.1 用戶自定義訊息類型實例

12.5.2 桌面視窗回調函式實例

12.5.3 WM_Redraw.c實例

12.5.4 WM_Sample.c實例

12.5.5 WM_LateClipping.c實例

12.5.6 WM_Video.c實例

第13章 STemWin控制項

13.1 控制項基礎知識

13.1.1 當前支持的控制項

13.1.2 控制項的重繪機制

13.1.3 控制項使用方法

13.1.4 控制項配置選項

13.1.5 通用控制項API

13.1.6 常用函式

13.2 對話框基礎知識

13.2.1 對話框概述

13.2.2 創建對話框

13.2.3 對話框API

13.3 按鈕控制項

13.3.1 按鈕控制項概述

13.3.2 按鈕控制項實例

13.3.3 在對話框上使用按鈕控制項

13.4 複選框控制項

13.4.1 複選框控制項概述

13.4.2 複選框控制項實例——WIDGET_CheckBox實例

13.5 下拉列表控制項

13.5.1 下拉列表控制項概述

13.5.2 下拉列表控制項實例——WIDGET_Dropdown實例

13.5.3 在對話框上使用下拉列表控制項

13.6 編輯控制項

13.6.1 編輯控制項概述

13.6.2 編輯控制項實例——WIDGET_Edit實例

13.6.3 在對話框上使用編輯框控制項

13.7 框架視窗控制項

13.7.1 框架視窗控制項概述

13.7.2 框架視窗控制項實例——WIDGET_FrameWin實例

13.8 圖形控制項

13.8.1 圖形控制項概述

13.8.2 圖形控制項實例——WIDGET_GraphYT實例

13.8.3 使用GUIBulder建立Graph控制項

13.9 標題控制項

13.9.1 標題控制項概述

13.9.2 標題控制項實例——WIDGET_Header實例

13.9.3 使用GUIBulder建立HEADER控制項

13.10 列表框控制項

13.10.1 列表框控制項概述

13.10.2 列表框控制項實例——WIDGET_ListBox實例

13.10.3 在對話框上使用列表框控制項

13.11 選單控制項

13.11.1 選單控制項概述

13.11.2 選單控制項實例——WIDGET_Menu實例

13.11.3 使用GUIBulder建立MENU控制項

13.12 訊息框控制項

13.12.1 訊息框控制項概述

13.12.2 訊息框控制項實例

13.13 多行文本控制項

13.13.1 多行文本控制項概述

13.13.2 多行文本控制項實例——WIDGET_Multiedit實例

13.13.3 使用μCGUIBulder建立多行文本控制項

13.14 多頁控制項

13.14.1 多頁控制項概述

13.14.2 多頁控制項實例——WIDGET_ Multipage實例

13.14.3 使用GUIBulder建立多頁控制項

13.15 進度條控制項

13.15.1 進度條控制項概述

13.15.2 進度條控制項實例——WIDGET_Progbar實例

13.15.3 使用μGUIBulder建立進度條控制項

13.16 單選按鈕控制項

13.16.1 單選按鈕控制項概述

13.16.2 單選按鈕控制項實例——DIALOG_Radio實例

13.16.3 使用GUIBulder建立單選按鈕控制項

13.17 滾動條控制項

13.17.1 滾動條控制項概述

13.17.2 滾動條控制項實例——DIALOG_Scrollbar實例

13.17.3 使用GUIBulder建立滾動條控制項

13.18 滑塊控制項

13.18.1 滑塊控制項概述

13.18.2 滑塊控制項實例——DIALOG_SliderColor實例

13.18.3 使用GUIBulder建立滑塊控制項

13.19 文本控制項

13.19.1 文本控制項概述

13.19.2 使用GUIBulder建立文本控制項

13.20 視窗控制項

13.20.1 視窗控制項概述

13.20.2 視窗控制項實例——WIDGET_Window實例

13.21 SPINBOX控制項

13.21.1 SPINBOX控制項概述

13.21.2 SPINBOX控制項實例——WIDGET_Spinbox實例

13.21.3 使用GUIBulder建立SPINBOX控制項

13.22 LISTVIEW控制項

13.22.1 LISTVIEW控制項概述

13.22.2 LISTVIEW控制項實例——WIDGET_ListView實例

13.22.3 使用GUIBulder建立LISTVIEW控制項

13.23 在對話框上繪製2D圖形的方法

附錄A 安富萊STM32-V5開發板套件

A.1 簡介

A.2 硬體配置

A.3 文檔教程

A.4 技術支持

相關詞條

熱門詞條

聯絡我們