STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
STM32F1 EMWIN
开发手册 V2.0
−ALIENTEK STM32F1 EMWIN 开发教程
本教程适用于 ALIENTEK 所有 STM32F1 开发板
1
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
广州市星翼电子科技有限公司
淘宝店铺 1:http://eboard.taobao.com
淘宝店铺 2:http://openedv.taobao.com
技术支持论坛 (开源电子网) :www.openedv.com
官方网站:www.alientek.com
最新资料下载链接:http://www.openedv.com/posts/list/13912.htm
E-mail: 389063473@qq.comQQ: 389063473
咨询电话:020-38271790
传真号码:020-36773971
团队:正点原子团队
正点原子,做最全面、最优秀的嵌入式开发平台软硬件供应商。
友情提示
如果您想及时免费获取“正点原子”最新资料,敬请关注正点原子
微信公众平台,我们将及时给您发布最新消息和重要资料。
关注方法:
(1)微信“扫一扫”,扫描右侧二维码,添加关注
(2)微信添加朋友公众号输入“正点原子”关注
(3)微信添加朋友输入“alientek_stm32”关注
2
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
文档更新说明
版本
版本更新说明
负责人 校审 发布日期
初稿:
第一章 STemWin 无操作系统移植
第二章 StemWin 带操作系统移植
第三章 在 PC 上仿真 StemWin 移植
第四章 文本显示
第五章 数值显示
第六章 2D 绘图
第七章 显示位图
第八章 颜色
第九章 存储设备
第十章 窗口管理
第十一章 GUIBulider 的使用
第十二章 对话框
V1.0
第十三章 窗口小工具(控件)
左忠凯 刘军
2015.4.25
第十四章 BUTTON 控件
第十五章 CHECKBOX 控件
第十六章 DROPDOWN 控件
第十七章 EDIT 控件
第十八章 FRAMEWIN 控件
第十九章 字体
第二十章 XBF 格式字体显示
第二十一章 TTF 格式字体显示
第二十二章 汉字显示(外部存储器)
第二十三章 BMP 图片显示
第二十四章 JPEG 图片显示
第二十五章 GIF 图片显示
3
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
版本
版本更新说明
负责人 校审 发布日期
V1.0 第二十六章 PNG 图片显示
左忠凯 刘军
2015.4.25
修改:
V2.0
操作系统升级到 UCOSIII。
左忠凯 刘军
2015.6.26
4
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
目录
EMWIN 开发手册 ............................................. 错误!未定义书签。
第一章 STemWin 无操作系统移植 .............................................. 12
1.1 移植准备工作 ..................................................................................................... 13
1.2 向工程添加文件 ................................................................................................. 14
1.3 修改工程文件 .................................................................................................... 16
1.4 触摸屏移植 ........................................................................................................ 20
1.5 综合测试程序编写 ............................................................................................ 26
1.6 下载验证 ............................................................................................................ 28
第二章 STemWin 带操作系统移植 .............................................. 29
2.1 移植准备工作 .................................................................................................... 30
2.2 向工程添加以及修改相应文件 ........................................................................ 30
2.3 编写综合测试程序 ............................................................................................ 33
2.4 下载验证 ............................................................................................................ 35
第三章 在 PC 上仿真 STemWin ................................................. 36
3.1 准备 emWin 仿真文件 ....................................................................................... 37
3.2 打开 emWin 仿真文件 ....................................................................................... 37
3.3 进行仿真 ............................................................................................................ 39
3.4 emWin 仿真文件介绍 ......................................................................................... 41
3.4.1 Application 文件 .............................................................................................. 41
3.4.2 Config 文件 ...................................................................................................... 42
3.4.3 GUI 文件 .......................................................................................................... 45
3.4.4 Sample 文件 ..................................................................................................... 45
3.5 Hello Word! ....................................................................................................... 46
第四章 文本显示 ........................................................... 50
4.1 基本文本显示 .................................................................................................... 51
4.2 文本显示 API 函数 ............................................................................................. 51
4.3 重点 API 函数简介 ............................................................................................. 52
4.3.1 GUI_SetTextMode() ......................................................................................... 52
4.3.2 GUI_SetTextAlign() ......................................................................................... 53
4.3.3 GUI_Clear()和 GUI_DispCEOL() ................................................................... 53
4.3.4 GUI_DispStringInRectWrap() .......................................................................... 54
5
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
4.4 演示实例 ............................................................................................................ 54
第五章 数值显示 ........................................................... 57
5.1 数值显示 API 函数 ............................................................................................ 58
5.2 显示十进制数值 ................................................................................................ 58
5.3 显示浮点数值 .................................................................................................... 60
5.4 二进制和十六进制数值显示 ............................................................................ 61
5.5 综合演示例程 ..................................................................................................... 62
第六章 2D 绘图 ............................................................. 64
6.1 图形库基本 API 简介 ........................................................................................ 65
6.1.1 画笔大小 .......................................................................................................... 65
6.1.2 基本绘图例程 .................................................................................................. 65
6.1.3 Alpha 混色 ........................................................................................................ 66
6.2 其他图形绘制 API 函数 .................................................................................... 67
6.2.1 绘制线条 ......................................................................................................... 67
6.2.2 其他图形绘制函数 ......................................................................................... 69
6.3 综合演示例程 ..................................................................................................... 70
第七章 显示位图 ........................................................... 76
7.1 位图转换器 ........................................................................................................ 77
7.1.1 位图转换器简介 ............................................................................................. 77
7.1.2 位图转换器的使用 ......................................................................................... 77
7.2 位图绘制 API 简介 ............................................................................................ 80
7.3 综合演示例程 .................................................................................................... 81
第八章 颜色 ............................................................... 84
8.1 预定义的基本颜色 ............................................................................................. 85
8.2 调色板 ................................................................................................................ 85
8.3 颜色 API 函数 .................................................................................................... 87
8.3 综合演示例程 .................................................................................................... 87
第九章 存储设备 ........................................................... 91
9.1 存储设备简介 .................................................................................................... 92
9.1.1 存储设备初窥 ................................................................................................. 92
9.1.2 内存要求 ......................................................................................................... 93
9.2 存储设备基本 API 函数 .................................................................................... 94
9.2.1 GUI_MEMDEV_Clear() .................................................................................. 95
6
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
9.2.2 GUI_MEMDEV_CopyToLCD() ...................................................................... 95
9.2.3 GUI_MEMDEV_CopyToLCDAt() .................................................................. 95
9.2.4 GUI_MEMDEV_Create() ................................................................................ 96
9.2.5 GUI_MEMDEV_Delete() ................................................................................ 96
9.2.6 GUI_MEMDEV_Select() ................................................................................. 96
9.2.7 存储设备演示例程 ......................................................................................... 96
9.3 分段存储设备 .................................................................................................... 99
9.3.1 分段存储简介 ................................................................................................. 99
9.3.2 分段存储设备演示例程 ................................................................................. 99
9.4 自动设备对象 .................................................................................................. 102
9.4.1 自动设备对象简介 ....................................................................................... 102
9.4.2 自动设备对象 API 函数 ............................................................................... 102
9.4.3 自动设备对象演示例程 ............................................................................... 105
第十章 窗口管理器 ........................................................ 109
10.1 窗口术语说明 ................................................................................................ 110
10.2 窗口回调机制 ................................................................................................. 111
10.2.1 不使用回调渲染 .......................................................................................... 111
10.2.2 使用回调渲染 .............................................................................................. 111
10.2.3 背景窗口重绘和回调 ................................................................................. 112
10.2.4 无效化 ......................................................................................................... 112
10.2.5 渲染透明窗口 ............................................................................................. 113
10.2.6 自动使用存储设备 ..................................................................................... 113
10.3 消息 ................................................................................................................ 113
10.3.1 消息结构 ..................................................................................................... 113
10.3.2 消息类型 ..................................................................................................... 114
10.4 窗口管理器 API 函数 .................................................................................... 115
10.5 演示例程 ........................................................................................................ 118
10.5.1 窗口重绘 ..................................................................................................... 118
10.5.1 窗口管理 API 函数使用 ............................................................................. 121
10.5.3 窗口裁剪 ..................................................................................................... 126
第十一章 GUIBulider 的使用 ................................................ 131
11.1 GUIBulider 简介 ............................................................................................. 132
11.2 GUIBulider 使用步骤 ..................................................................................... 134
7
STM32F1 EMWIN 开发手册
ALIENTEK STM32F103 全系列开发板 STemWin 开发教程
11.3 GUIBulider 输出 ............................................................................................. 145
11.4 修改 C 文件 .................................................................................................... 148
11.5 LCD 显示结果 ................................................................................................ 150
第十二章 对话框 .......................................................... 151
12.1 对话框基本原理 ............................................................................................ 152
12.2 创建对话框 .................................................................................................... 152
12.2.1 对话框资源表 ............................................................................................. 152
12.2.2 对话框回调函数 ......................................................................................... 153
12.2.3 初始化对话框 ............................................................................................. 154
12.3 定义小工具功能 ............................................................................................ 156
12.4 对话框 API 函数 ............................................................................................ 158
12.4.1 GUI_CreateDialogBox() .............................................................................. 158
12.4.2 GUI_ExecCreatedDialog() ........................................................................... 158
12.4.3 GUI_ExecDialogBox() ................................................................................. 158
12.4.4 GUI_EndDialog() ......................................................................................... 159
第十三章 窗口小工具(控件) ................................................ 160
13.1 小工具基础知识 ............................................................................................ 161
13.1.1 可用小工具 ................................................................................................. 161
13.1.2 了解重绘机制 ............................................................................................. 162
13.1.3 如何使用小工具 ......................................................................................... 163
13.2 通用控件 API 函数 ........................................................................................ 164
13.2.1 用于控件的 WM 函数 ................................................................................ 164
13.2.2 常用 API 函数 ............................................................................................. 164
13.2.3 用户绘制控件 ............................................................................................. 165
第十四章 BUTTON 控件 ...................................................... 167
14.1 BUTTON 控件简介 ........................................................................................ 168
14.2 通知代码 ........................................................................................................ 168
14.3 键盘反应 ........................................................................................................ 168
14.4 常用 API 函数 ................................................................................................. 168
14.5 BUTTON 控件基础例程 ................................................................................ 169
14.5.1 程序设计 ..................................................................................................... 169
14.5.2 下载验证 ..................................................................................................... 172
14.6 BUTTON 控件显示位图 ................................................................................ 173
8