OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4435|回复: 11

把字库写到EPPROM

[复制链接]

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
发表于 2016-6-17 15:06:07 | 显示全部楼层 |阅读模式
1金钱
大神们,      我之前把字库写到程序里面去了,后来字太大了,程序编译报错,我现在想把字库写到EPPROM里面去,但是不知道怎么去写,大家有没有好的建议,最好有个例程,或者链接指导我一下,谢谢

最佳答案

查看完整内容[请看2#楼]

仔细看了下, “RW-data=5976”,明显你把字库放到RAM了,你要加个const让编译器自动放到flash去
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2016-6-10
在线时间
19 小时
发表于 2016-6-17 15:06:08 | 显示全部楼层
仔细看了下, “RW-data=5976”,明显你把字库放到RAM了,你要加个const让编译器自动放到flash去
回复

使用道具 举报

13

主题

448

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1755
金钱
1755
注册时间
2015-2-7
在线时间
369 小时
发表于 2016-6-17 17:50:39 | 显示全部楼层
综合参考一下原子哥的IIC\SPI、汉字显示实验嘛,希望能对你有帮助
回复

使用道具 举报

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
 楼主| 发表于 2016-6-17 20:26:38 | 显示全部楼层
电子之旅 发表于 2016-6-17 17:50
综合参考一下原子哥的IIC\SPI、汉字显示实验嘛,希望能对你有帮助

那个视频我看了,但是那是生成全部的字库,但是我不需要那么字。用到的也就100来个。
我能不能把字模生成的十六进制的数存到EPPROM里面,之后用到的时候再读取出来?
回复

使用道具 举报

15

主题

172

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1276
金钱
1276
注册时间
2016-5-31
在线时间
499 小时
发表于 2016-6-17 20:44:53 | 显示全部楼层
简单的一个方法就是:
     你的CPU有空余的引脚的话, 可以使用这个引脚作为输入判断,
     1、上电之前,这个引脚是低电平的话,就调用:写字库到EEPROM;
     2、正常工作,这个引脚是高电平,就不执行写字库的程序,执行你的应用程序。
   
回复

使用道具 举报

15

主题

172

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1276
金钱
1276
注册时间
2016-5-31
在线时间
499 小时
发表于 2016-6-17 20:46:53 | 显示全部楼层
我还有高级的方法,你悬赏的金钱太少了,就不告诉你了!
高级的方法就是:
     在你下载你的应用程序到CPU的同时,把字库数据一并写入到EEPROM内部。
     
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-6-18 20:37:42 | 显示全部楼层
wzy1992 发表于 2016-6-17 20:26
那个视频我看了,但是那是生成全部的字库,但是我不需要那么字。用到的也就100来个。
我能不能把字模生 ...

100来个字,直接放内部flash吧,速度快。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
 楼主| 发表于 2016-6-20 09:28:30 | 显示全部楼层
正点原子 发表于 2016-6-18 20:37
100来个字,直接放内部flash吧,速度快。

我原先是直接把所有的字用一个.h文件写到程序里面,后来程序编译的时候报错了。

.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching menu_handle.o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching fingerprint.o(.bss).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching system_stm32f0xx.o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching display_time.o(.bss).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching display_time.o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching p8563.o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching finger_print..o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching delay.o(.data).
.\Out\Project.axf: Error: L6406E: No space in execution regions with .ANY selector matching stdout.o(.data).
.\Out\Project.axf: Error: L6407E: Sections of aggregate size 0x2b8 bytes could not fit into .ANY selector(s).

当我把其中一些字库删除,程序能编译通过。我的SRAM是8KB,flash是64KB
Program Size: Code=10332 RO-data=384 RW-data=5976 ZI-data=2048  

当我把字库删除只剩下一个字的时候
Program Size: Code=10324 RO-data=384 RW-data=1176 ZI-data=2048  
这个问题,希望等到原子哥的帮助,谢谢
回复

使用道具 举报

1

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2016-6-10
在线时间
19 小时
发表于 2016-6-20 09:58:37 | 显示全部楼层
看下你的字库头文件,100多个字应该才2K大小吧,怎么会放不下
回复

使用道具 举报

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
 楼主| 发表于 2016-6-20 13:41:59 | 显示全部楼层
达克罗德 发表于 2016-6-20 09:58
看下你的字库头文件,100多个字应该才2K大小吧,怎么会放不下

我十分的感谢你。
希望以后多多指导。
QQ:1069257466
回复

使用道具 举报

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
 楼主| 发表于 2016-6-20 13:43:01 | 显示全部楼层
我要十分的感谢你。
回复

使用道具 举报

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2016-3-9
在线时间
24 小时
 楼主| 发表于 2016-6-20 13:43:39 | 显示全部楼层
达克罗德 发表于 2016-6-17 15:06
仔细看了下, “RW-data=5976”,明显你把字库放到RAM了,你要加个const让编译器自动放到flash去

十分的感谢你。希望以后多多指导
Q,
1069257466
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-12 18:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表