你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
emWin外部字库使用遇挫
[复制链接]
翔飞
提问时间:2014-3-24 20:08 /
emWin5.12
芯片选用STM32F103VC
LCD使用TFT1289
参照
[STemWin教程入门篇]
第六期:emWin5.20汉字显示方法二(将字库放到外部Flash,SD卡等)
移植了字库,并显示出来
如图,使用外部字库时,字体可以正常显示,但是背景却出现了好多黑色的区域,(不使用外部字库时背景正常)
还请各位帮忙分析原因
。。。
这里是程序
GUI+OS.zip
(2.53 MB, 下载次数: 196)
2014-3-24 20:03 上传
点击文件名下载附件
赞
0
收藏
1
评论
16
分享
发布时间:2014-3-24 20:08
举报
请先
登录
后回复
16个回答
glcd
回答时间:2016-7-12 16:03:23
a0a.1 0b0c
【能接emWin的SPI串口屏】
GLCD功能类似于SPI串口屏,只是SPI接口通信更快速,以至能作为emWin(第三方界面软件库)的图形显示屏,弥补emWin使用字库/图片麻烦以及刷屏慢的缺点,这样emWin做界面就更精美、便捷!
emWin界面软件库是运行在用户CPU中的;GLCD负责储存字库和图片,以及接收由emWin发出的绘图指令,并且执行这些绘图指令以显示文字、图片、2D图形等,绘图指令代替像素操作可大大减轻用户CPU的负担;GLCD还管理触摸屏、鼠标、键盘、蜂鸣器、RTC时钟等外设。
更多介绍请看:
www.neqee.com
赞
0
评论
回复
支持
反对
随缘浪子2013
回答时间:2016-5-22 23:35:14
a0a.1 0b0c
十分感谢分享.....
赞
0
评论
回复
支持
反对
那片清茶
回答时间:2014-3-25 09:12:37
a0a.1 0b0c
RE:emWin外部字库使用遇挫
是不是扫描出现问题了。
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-25 10:09:15
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 2 楼 于2014-03-25 09:12:37发表:
是不是扫描出现问题了。
不使用外部字库的时候,显示是正常的。
赞
0
评论
回复
支持
反对
我爱下载
回答时间:2014-3-25 10:12:22
a0a.1 0b0c
RE:emWin外部字库使用遇挫
字库是自己做的还是直接利用现成的字库啊,是不是字库的解析有问题
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-25 11:57:11
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 4 楼 于2014-03-25 10:12:22发表:
字库是自己做的还是直接利用现成的字库啊,是不是字库的解析有问题
直接利用现成的,
system.zip
(1.21 MB, 下载次数: 100)
2014-3-25 11:55 上传
点击文件名下载附件
赞
0
评论
回复
支持
反对
废鱼
回答时间:2014-3-25 17:19:30
a0a.1 0b0c
RE:emWin外部字库使用遇挫
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-25 20:43:54
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 6 楼 于2014-03-25 17:19:30发表:
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
先上一张正常的图
使用自动存储,创建对话框,建立按钮 TEXT ,字体全部使用emwin自带字体
11111111111111111111111111111
程序使用自动存储,创建一个对话框,在对话框里建立一个 按钮(显示emwin自带英文字符) 和 一个TEXT文本(显示外部字库的汉字)“世界人民需要你”
实际显示如图
背景出现了黑色的区域,但是 TEXT可正常显示字体,点击 按钮 之后按钮上的字符没有出现乱码的现象
222222222222222222222222222222222222
不使用自动存储的情况,如下图,TEXT不能正常显示汉字,按钮可正常显示字符
点击按钮之后,按钮上的英文字符也不能正常显示了,如图
貌似跟存储设备也有关系,关闭了之后,背景显示倒是正常了,可是点击按钮之后,按钮显示的字符又不正常了。
3333333333333333333333333333333333
不创建对话框,直接在LCD绘制汉字,程序
实际显示如下(关闭或者开启自动存储,效果都是一样)
背景是正常的,显示字体是不正常的
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-25 20:50:20
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 6 楼 于2014-03-25 17:19:30发表:
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
好像得出一点结论
背景不能正常显示跟 自动存储有关
汉字不能正常显示,也许该按你说的看下字库读出的数据
还有一个问题,有存储设备的时候,字体可以正常显示,不使用的时候,按钮和TEXT显示都会乱码
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-25 23:42:22
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 6 楼 于2014-03-25 17:19:30发表:
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
问题出在FATFS读取TF卡的函数,我把字体的编码直接给缓冲区,这样没有一点问题,
还不清楚是Fatfs还是SDIO的问题。
我用printf打印出来GUI_FontDataBuf的数据,也没发现什么问题,纠结。。。
赞
0
评论
回复
支持
反对
废鱼
回答时间:2014-3-26 11:39:58
a0a.1 0b0c
RE:emWin外部字库使用遇挫
这样就要看你读取出来的数据了。另外,你要注意一下显示的时候,一般以\0结束,如果没有\0他会把后面的数据也显示的。建议你显示的时候加一个长度的处理,不要用strlen来判断长度。
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-26 14:24:45
a0a.1 0b0c
回复:emWin外部字库使用遇挫
SD_Init(); SDIO初始化函数
这个函数影响,不管使不使用外部字库,只要加载了它,就有问题。
赞
0
评论
回复
支持
反对
废鱼
回答时间:2014-3-26 15:00:49
a0a.1 0b0c
RE:emWin外部字库使用遇挫
SD初始化过程应该不会和LCD产生冲突,产生冲突的应该也只有IO口。这样仿真一下,SD初始化过程中,哪儿引起的冲突。是由于IO口,还是其他的。
赞
0
评论
回复
支持
反对
翔飞
回答时间:2014-3-26 19:49:34
a0a.1 0b0c
回复:emWin外部字库使用遇挫
回复第 12 楼 于2014-03-26 15:00:49发表:
SD初始化过程应该不会和LCD产生冲突,产生冲突的应该也只有IO口。这样仿真一下,SD初始化过程中,哪儿引起的冲突。是由于IO口,还是其他的。
来结贴
可能是我的芯片的问题,单独使用TF卡和FSMC时都没问题,就是使能SDIO时钟之后就不正常了
换块板子,正常显示。
感谢大家帮助,感谢 安
赞
0
评论
回复
支持
反对
废鱼
回答时间:2014-3-27 10:13:57
a0a.1 0b0c
RE:emWin外部字库使用遇挫
如果有问题,欢迎来提问。大家共同学习。
赞
0
评论
回复
支持
反对
feiante-155820
回答时间:2014-4-12 16:26:25
a0a.1 0b0c
RE:emWin外部字库使用遇挫
仿真看看你实际读到的数据吧,没有用外部存储可以正常显示,说明你的显示驱动和程序应该是正确的,用了外部存储不能正常显示,可能就是显示的数据不对,比如背景的数据。
赞
0
评论
回复
支持
反对
1
2
/ 2 页
下一页
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
GLCD功能类似于SPI串口屏,只是SPI接口通信更快速,以至能作为emWin(第三方界面软件库)的图形显示屏,弥补emWin使用字库/图片麻烦以及刷屏慢的缺点,这样emWin做界面就更精美、便捷!
emWin界面软件库是运行在用户CPU中的;GLCD负责储存字库和图片,以及接收由emWin发出的绘图指令,并且执行这些绘图指令以显示文字、图片、2D图形等,绘图指令代替像素操作可大大减轻用户CPU的负担;GLCD还管理触摸屏、鼠标、键盘、蜂鸣器、RTC时钟等外设。
更多介绍请看:www.neqee.com
RE:emWin外部字库使用遇挫
回复:emWin外部字库使用遇挫
是不是扫描出现问题了。
不使用外部字库的时候,显示是正常的。
RE:emWin外部字库使用遇挫
回复:emWin外部字库使用遇挫
字库是自己做的还是直接利用现成的字库啊,是不是字库的解析有问题
直接利用现成的,
RE:emWin外部字库使用遇挫
回复:emWin外部字库使用遇挫
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
先上一张正常的图
使用自动存储,创建对话框,建立按钮 TEXT ,字体全部使用emwin自带字体
11111111111111111111111111111
程序使用自动存储,创建一个对话框,在对话框里建立一个 按钮(显示emwin自带英文字符) 和 一个TEXT文本(显示外部字库的汉字)“世界人民需要你”
实际显示如图
背景出现了黑色的区域,但是 TEXT可正常显示字体,点击 按钮 之后按钮上的字符没有出现乱码的现象
222222222222222222222222222222222222
不使用自动存储的情况,如下图,TEXT不能正常显示汉字,按钮可正常显示字符
点击按钮之后,按钮上的英文字符也不能正常显示了,如图
貌似跟存储设备也有关系,关闭了之后,背景显示倒是正常了,可是点击按钮之后,按钮显示的字符又不正常了。
3333333333333333333333333333333333
不创建对话框,直接在LCD绘制汉字,程序
实际显示如下(关闭或者开启自动存储,效果都是一样)
背景是正常的,显示字体是不正常的
回复:emWin外部字库使用遇挫
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
好像得出一点结论
背景不能正常显示跟 自动存储有关
汉字不能正常显示,也许该按你说的看下字库读出的数据
还有一个问题,有存储设备的时候,字体可以正常显示,不使用的时候,按钮和TEXT显示都会乱码
回复:emWin外部字库使用遇挫
仿真看一下,显示下个字体的时候,字库读取的数据是什么样的。能不能把你说的两种情况发一下图片。
问题出在FATFS读取TF卡的函数,我把字体的编码直接给缓冲区,这样没有一点问题,
还不清楚是Fatfs还是SDIO的问题。
我用printf打印出来GUI_FontDataBuf的数据,也没发现什么问题,纠结。。。
RE:emWin外部字库使用遇挫
回复:emWin外部字库使用遇挫
SD_Init(); SDIO初始化函数
这个函数影响,不管使不使用外部字库,只要加载了它,就有问题。
RE:emWin外部字库使用遇挫
回复:emWin外部字库使用遇挫
SD初始化过程应该不会和LCD产生冲突,产生冲突的应该也只有IO口。这样仿真一下,SD初始化过程中,哪儿引起的冲突。是由于IO口,还是其他的。
来结贴
可能是我的芯片的问题,单独使用TF卡和FSMC时都没问题,就是使能SDIO时钟之后就不正常了
换块板子,正常显示。
感谢大家帮助,感谢 安
RE:emWin外部字库使用遇挫
RE:emWin外部字库使用遇挫