共2条
1/1 1 跳转至页
ADS1,FLASH,RAM ADS1.2怎样将字库定义到FLASH里面,而不是RAM里面

问
ADS1.2怎样将字库定义到FLASH里面,而不是RAM里面
答 1:
最晕的办法是转换字库文件为文本文件看着乐声电子辛苦的份上...
这个我在DSP的5402中搞过文件格式转换,即将bin/hex格式转换为C源文件的
"内部const数组"格式.
用VC/VB/DELPHI/BC等转换为一个"字库数据头文件"
内部格式:
const char hz16k[0xxxxx] = {
0xff,0xff,0xff,0xff,0xff,...0xff
};
这样,在C编译时只需包含此"字库数据头文件"即可.
第1次晕,以后就不在晕了...
答 2: HOTPOWER,有时感觉很难理解你说的话.可能是我太笨了. 答 3: 好像hotpower理解反了乐声电子的字库本来就是code.c里的一个数组,现在是想把编译出来的数组定位在flash里(还是要既定位在code区里,也在flash里?)。
我提到的方法,编译后还是在ram里吗? 答 4: 我以为是大数据库书写手痛呢不过这确实是一种免除书写的好办法...
可能乐声电子知道我在Keil中没问题
全部变量用const,局部函数内用static const.
不过我不知为何特别厌烦ADS,以至于连编译器都没装,故不能做实验.
非常抱歉不能帮上忙,虽然我看着乐声电子很辛苦也着急... 答 5: hotpower的那个我也看过了看来这点比ads方便些。
如果ads编译实在不行的话,我想可以先假设字库的地址,然后工程里不加入字库文件,直接编译,根据生成的bin的大小,得到bin的尾部地址,然后程序里写入该地址,重新生成bin,再用16进制编辑器在bin尾部添上字库。 答 6: 直接把字库烧到flash里面然后通过绝对地址来访问 答 7: ADS1.2的编译不知为什么不行. 答 8: 3种都是不错的方法:1,使用2楼的方法,先绕下,把2进制的文件,先转成数组,在使用数组定义。
建议:使用命令行工具,直接把文件转换成光0xff,0xff,0xff,0xff,0xff,...0xff
这样的TXT文件,再到代码里面
const char hz16k[]=
{
#include "xx.txt"
};
在编译起里面设置,每次便宜前,先运行下工具,这样保证每次便宜都得到更新。
2。使用编程起便到FLASH里面。通过绝对地址访问。由于字库是固定的,无须每次都下在,节约调试时大量的代码下载时间。
3。估计代码多大,自己写个程序,把字符复在程序后面,这样需要自己写MAKE文件,调试的时候,不能直接载入ELF文件,需要先LOAD BIN,再使用不载程序,载符号表的方式,载如ELF文件。 答 9: 程序中DCD\DCB就可以了 答 10: HOTPOWER,有时感觉很难理解你说的话. 答 11: 这就对了
这个我在DSP的5402中搞过文件格式转换,即将bin/hex格式转换为C源文件的
"内部const数组"格式.
用VC/VB/DELPHI/BC等转换为一个"字库数据头文件"
内部格式:
const char hz16k[0xxxxx] = {
0xff,0xff,0xff,0xff,0xff,...0xff
};
这样,在C编译时只需包含此"字库数据头文件"即可.
第1次晕,以后就不在晕了...
答 2: HOTPOWER,有时感觉很难理解你说的话.可能是我太笨了. 答 3: 好像hotpower理解反了乐声电子的字库本来就是code.c里的一个数组,现在是想把编译出来的数组定位在flash里(还是要既定位在code区里,也在flash里?)。
我提到的方法,编译后还是在ram里吗? 答 4: 我以为是大数据库书写手痛呢不过这确实是一种免除书写的好办法...
可能乐声电子知道我在Keil中没问题
全部变量用const,局部函数内用static const.
不过我不知为何特别厌烦ADS,以至于连编译器都没装,故不能做实验.
非常抱歉不能帮上忙,虽然我看着乐声电子很辛苦也着急... 答 5: hotpower的那个我也看过了看来这点比ads方便些。
如果ads编译实在不行的话,我想可以先假设字库的地址,然后工程里不加入字库文件,直接编译,根据生成的bin的大小,得到bin的尾部地址,然后程序里写入该地址,重新生成bin,再用16进制编辑器在bin尾部添上字库。 答 6: 直接把字库烧到flash里面然后通过绝对地址来访问 答 7: ADS1.2的编译不知为什么不行. 答 8: 3种都是不错的方法:1,使用2楼的方法,先绕下,把2进制的文件,先转成数组,在使用数组定义。
建议:使用命令行工具,直接把文件转换成光0xff,0xff,0xff,0xff,0xff,...0xff
这样的TXT文件,再到代码里面
const char hz16k[]=
{
#include "xx.txt"
};
在编译起里面设置,每次便宜前,先运行下工具,这样保证每次便宜都得到更新。
2。使用编程起便到FLASH里面。通过绝对地址访问。由于字库是固定的,无须每次都下在,节约调试时大量的代码下载时间。
3。估计代码多大,自己写个程序,把字符复在程序后面,这样需要自己写MAKE文件,调试的时候,不能直接载入ELF文件,需要先LOAD BIN,再使用不载程序,载符号表的方式,载如ELF文件。 答 9: 程序中DCD\DCB就可以了 答 10: HOTPOWER,有时感觉很难理解你说的话. 答 11: 这就对了
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
电流检测模块MAX4080S被打赏10分 | |
【我踩过的那些坑】calloc和malloc错误使用导致跑飞问题排查被打赏50分 | |
多组DCTODC电源方案被打赏50分 | |
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 | |
【我踩过的那些坑】杜绑线问题被打赏50分 | |
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 |