emWin5.24 VS2008模拟LCD12864 stm32 RTX移植 【worldsing笔记】
emWin for 12864 并口移植
源代码下载:RTX_emWin5.24_Keil_VS2008-20141122.zip
硬件环境:
CPU: stm32f103ve
LCD:st7920控制器 12864 并口
软件环境:
Keil MDK4.74
VS2008
emWin5.24
使用rtx操作系统
1、实现emWin5.24在keil 和vs2008同一代码的工程,vs2008目录实现在FMC的官方模拟器上的模拟,Keil目录实现在stm32f103ve 驱动12864 的并口屏
2、支持12x12和16x16的汉字,两种字体已经添加在VS工程,因为汉字库比较占用stm32的flash资源,所有,keil就加了12x12的汉字,但是flash占用的
数量依然很大,可以用guiFont工具生成指定汉字库的小字库;
3、工程目录说明:
Keil工程结构:
|- app
| |- main.c 代码入口 rtx操作系统入口
| |- SimSun_1212.c guiFont工具生成指定汉字库的小字库
| \_ Dialog.c 用户的gui入口代码,以MainTask()入口
|
|- emWin5.24/userFont 用户自定义的字体
|
|- emWin5.24/config GUI的配置和LCD的配置
| |- GUIConf.c GUI配置
| \_ LCDConf.c LCD的配置
|
|- emWin5.24/driver
| |- GUIDRV_Template.c 驱动接口统一格式
| \_ lcd12864.c 12864底层接口
|
|- emWin5.24/osPort 操作系统接口
| \_ GUI_X_RTX.c Keil官方自带的rtx系统与GUI接口
|
|- emWin5.24/lib Keil官方自带的emWiwn的库文件,位于C:\Keil\ARM\Segger\emwin\lib
| \_GUI_CM3.lib 针对CM平台优化的GUI库文件
|
|- rtx/config Keil官方自带的rtx配置
| \_RTX_conf_CM.c
|
|- stLib stm32官方标准外设库
|
\_ readme 工程说明
3、工程设置里需要target->Operating system->RTX kernel
另外,keil需要有RL-ARM的库的Lisence的授权否则无法编译
4、移植时需要修改emWin5.24/driver和emWin5.24/config目录的文件,驱动移植需要改:GUIDRV_Template.c的第192行和第147行;
5、增加字体或是修改字体时需要注意修改编码格式,否则无法正常显示。
Keil 工程

VS2008 工程模拟

emWin5.24 VS2008模拟LCD12864 stm32 RTX移植 【worldsing笔记】的更多相关文章
- STM32上移植ds1307笔记
PS:网上关于ds1307的资料最多还是基于51等单片机的,和stm32上还是略有差别,代码是参考了http://www.openedv.com/posts/list/20167.htm 但是他的代码 ...
- 3.emWin5.26(ucGui)VS2008 2-D图形库-基本绘图【Worldsing笔记】
UCGUI(emWin) 2-D图形库--之基本板绘图,在ucgui的基本绘图功能上来看,功能还是比较全的,本例程主要使用基本的接口,两个主要的概念是绘制(draw)和填充(Fill),这两的区别是一 ...
- 74HC595 for STM32 源代码【worldsing笔记】
74HC595是硅结构的CMOS器件, 兼容低电压TTL电路,遵守JEDEC标准. 74HC595是具有8位移位寄存器和一个存储器,三态输出功能. 移位寄存器和存储器是分别的时钟. 数据在SHcp(移 ...
- DS18B20 for STM32 源代码 【worldsing笔记】
DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式:温度测量范围为-55℃-+125℃,可编程为9位-12位A/D转换精度,测温分辨率可达0.0625℃.主 ...
- ucos实时操作系统学习笔记——操作系统在STM32的移植
使用ucos实时操作系统是在上学的时候,导师科研项目中.那时候就是网上找到操作系统移植教程以及应用教程依葫芦画瓢,功能实现也就罢了,没有很深入的去研究过这个东西.后来工作了,闲来无聊就研究了一下这个只 ...
- stm32寄存器版学习笔记07 ADC
STM32F103RCT有3个ADC,12位主逼近型模拟数字转换器,有18个通道,可测量16个外部和2个内部信号源.各通道的A/D转换可以单次.连续.扫描或间断模式执行. 1.通道选择 stm32把A ...
- stm32寄存器版学习笔记06 输入捕获(ETR脉冲计数)
STM32外部脉冲ETR引脚:TIM1-->PA12;TIMER2-->PA0:TIMER3-->PD2;TIMER4-->PE0… 1.TIM2 PA0计数 配置步骤 ①开启 ...
- stm32寄存器版学习笔记05 PWM
STM32除TIM6和TIM7外都可以产生PWM输出.高级定时器TIM1和TIM8可以同时产生7路PWM,通用定时器可以产生4路PWM输出. 1.TIM1 CH1输出PWM配置步骤 ①开启TIM1时钟 ...
- stm32寄存器版学习笔记03 外部中断
stm32的每个I/O口都可以作为中断输入,要把I/O口设置为外部中断输入,必须将I/O口设置为上拉/下拉输入 或 浮空输入(但浮空的时候外部一定要带上拉或下拉电阻,否则可能导致 中断不停的触发),干 ...
随机推荐
- Core Text
Core Text 本文所涉及的代码你可以在这里下载到 https://github.com/kejinlu/CTTest,包含两个项目,一个Mac的NSTextView的测试项目,一个iOS的Cor ...
- 【解题报告】[动态规划] RQNOJ - PID15 / 采药
原题地址:http://www.rqnoj.cn/problem/15 好久以前做的题了,是个背包问题,就不解释了. #include<stdio.h> #define MAX 100 i ...
- HDU 4750
解题方法,,,首先应该可以看出来是一颗 最小生成树,任意一条的边的价值是不同的:所以计算出最小生成树的每一条边有多少对顶点满足他的 f 值就是这条边的 权值,因此可以在生成最小生成树的时候,进行一下统 ...
- phonegap 退出确认
实现 再按一次退出 ,这里只针对 主active继承 DroidGap 或者CordovaActive 以下有2种 方案1: 重写CordovaWebView类 新建类NobackWebView p ...
- linux shell中的 #!/bin/bash
#!/bin/bash是指此脚本使用/bin/bash来解释执行. 其中,#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径. bash只是shell的一种,还有很多其它shell,如:sh ...
- delete之后千万要记得将指针置空,即勿重复delete!!!
下面这段代码有什么问题吗?(Arduino上运行) class C{ public: C(){ ptr = ]; } ~C(){ if(ptr!=NULL)delete [] ptr; } void ...
- PHP遍历数组
foreach PHP代码: <?php $url = array( '新浪' =>'www.sina.com' , '雅虎' =>'www ...
- AspNetPager 自定义html
如果,上面的分页控件里面,成功和失败都是我自己添加的,使用方法如下 anp.CustomInfoHTML = "总计%RecordCount%条记录,成功" + Success + ...
- 分享我的PL/SQL的优化设置,为开发全面提速
打开[工具]–[首选项]: 1.登陆历史:勾选[存储历史]和[带口令存储],方便下次登陆,免去每次都输入密码的烦恼: 2.编辑器: a.勾选[语法高亮]允许: b.关键词大小写选择大写: c.配置自动 ...
- Python开发者最常犯的10个错误
Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰富和强大的类库.与其它大多数程序设计语言使用大括号不一样 ,它使用缩进来定义语句块. 在平时的工作中,Python开发者很容易犯一些小错 ...