打印
[STM32F4]

用字模生成的GN2312文件可以直接以bin文件形式写入吗

[复制链接]
135|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
nuc990|  楼主 | 2025-3-12 09:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用pctocld生成GB2312字库,生成de xxx.fon文件,本质是二进制文件,那么用串口通信把这个.fon文件写入到外部spl flash,然后单片机用编码取值公式计算要取出的汉字。有个疑问,这个fon文件的头部是直接是汉子第一个编码吗,还是还有文件头信息?

使用特权

评论回复
沙发
公羊子丹| | 2025-3-13 08:20 | 只看该作者
xxx.fon 可能有文件头,建议先用 hex 工具看看前几个字节是什么,确认数据结构。

使用特权

评论回复
板凳
周半梅| | 2025-3-13 08:22 | 只看该作者
GB2312 字库一般是按 16x16 或 24x24 点阵存储的,最好看看 pctocld 生成的格式,有可能有额外信息。

使用特权

评论回复
地板
帛灿灿| | 2025-3-13 08:23 | 只看该作者
直接 bin 方式写入 SPI Flash 没问题,但要保证单片机读取时能正确解析,先手动读取前几字节试试。

使用特权

评论回复
5
童雨竹| | 2025-3-13 08:25 | 只看该作者
你是用 STM32F4 直接访问 SPI Flash 还是通过 文件系统?如果是裸读写,要特别注意字库数据的存储偏移。

使用特权

评论回复
6
万图| | 2025-3-13 08:26 | 只看该作者
这个 fon 文件用 Hextool 或 UltraEdit 打开,看看开头是不是 汉字编码,有些字库会有 索引表 之类的头部信息。

使用特权

评论回复
7
Wordsworth| | 2025-3-13 08:27 | 只看该作者
GB2312 码是 双字节 编码,取值公式计算出来的偏移地址要和 fon 文件格式对应,不然取出的字模可能错位。

使用特权

评论回复
8
Bblythe| | 2025-3-13 08:29 | 只看该作者
pctocld 生成的 FON 文件不一定是 纯点阵数据,可能会带一些额外的 字模描述信息,建议看看官方文档说明。

使用特权

评论回复
9
Pulitzer| | 2025-3-13 08:30 | 只看该作者
你要用 串口 写 SPI Flash,建议先小规模测试,比如写 一个汉字的字模数据,然后手动读出来对比。

使用特权

评论回复
10
Uriah| | 2025-3-13 08:31 | 只看该作者
STM32F4 访问 SPI Flash 是用 QSPI 还是 普通 SPI?不同方式的 寻址方式 可能会影响数据读取。

使用特权

评论回复
11
Clyde011| | 2025-3-13 08:33 | 只看该作者
直接 bin 方式存储 FON 文件没问题,但要保证 STM32 代码能正确解析,最好写个小工具先验证格式。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

111

主题

221

帖子

0

粉丝