制作字库(Bin文件合并 C2BIN)
一、点阵文件生成
1、使用点阵字库生成器生成文字的点阵信息,采用 UNICODE 编码批量生成。
2、如果具有 C 文件的字库,例如 STM32 开发板的库函数
x:\en.stm32cubef4\STM32Cube_FW_F4_V1.14.0\Utilities\Fonts
中的字库 C 文件,可以使用 C2B转换助手,这个软件可以将 C 文件中的字符数组信息转换成 bin 文件。结果如下图所示:
使用时,尽量将开头无关的注释删除,但不要多删,保证 C 语言数组的正确。
二、BIN 文件合并
1、由于使用点阵字库生成器时,只有 UNICODE 编码才可以批量生成,在只需要显示英文,中文和常见的符号时,一般只需取 UNICODE 中的如下范围即可,
0x0000~0x007F 向下兼容ASCII,取得英文和常见符号0x4E00~0x9FFF 中文常见字
2、因此,生成的字库文件一般有两个文件,此时,需要使用二进制文件合并工具 UBIN 来就将两个文件合并成一个文件,便于烧录。关于这个软件的使用,可看百度教程。
3、在合并文件时,两个文件中可以有一定的空余间隙,这只需要修改偏移量。勾选插入,设置一个大于第一个文件大小的绝对地址。
三、检验字库信息
1、若使用 C2BIN 软件,需要首先确认这个步骤生成的字库信息是正确的。一般看前后的数据是否正确,还有文件生成的大小。例如,C 文件中,一个字符使用 3x24 共 72 个字节来表示,共有 95 个字符,则生成后的 bin 文件的末地址应为 95*72-1 = 6839 = 1AB7h。使用 UltraEdit 打开 bin 文件,看下文件大小是否符合。
2、合并两个字库的 bin 文件后,一般先查看下由于偏移而产生的地址上的数据是否为 0x00,之后再将两个文件的大小相加后与合并文件的大小比较,看是否一致。之后再简单比较下文件开头和结束的数据是否一致就可以确认数据的正确性了。注意,这里的文件大小并不是系统显示的文件占用空间或大小,而是使用 UltraEdit 之类的软件打开文件后查看文件的末尾地址。
制作字库(Bin文件合并 C2BIN)相关推荐
- bin文件以及bin文件合并
一.bin文件格式 bin文件是 纯机器指令,她没有类似hex/hrec中包含的地址标识.长度标识. 她是默认从地址0开始排列的代码指令. 二.bin文件合并 文件:bootloader.bin ...
- ESP32 bin文件生成及多个bin文件合并指南
文章目录 1. 前言 2. 硬件及分区表 3. 编译 4. 烧录 4.1 使用 idf flash 命令烧录 4.2 使用 Flash Download Tools 工具烧录 4.3 Flash Do ...
- hex文件、bin文件 合并删除编辑
分享一个 hex文件和 bin文件 合并删除编辑 开源软件.可以在 keil.gcc 编译完成后进行批处理.适合hex bin 互转,合并 删除 拆分 等. 开源地址:https://github.c ...
- STM32F103CB IAP+APP BIN文件合并烧写
J-Flash工具 选择第一个文件 Merge第二个文件 设置起始地址
- 用WINHEX合并两个或多个BIN文件
用WINHEX合并两个或多个bin文件非常简单,只需要复制粘贴就可以了. 下面讲解把a.bin文件和b.bin文件合并的步骤. 1.复制a.bin文件粘贴到旁边,然后把名字改为ab.bin,意味着这是 ...
- 合并BIN文件的两种方法
合并BIN文件的两种方法 在单片机的开发过程中,经常需要将两个单独的BIN文件合并成一个文件,方便烧写和生产.下面结合STM32的IAP Bootloader Code和Application Cod ...
- Python应用开发——制作bin文件
Python应用开发--制作bin文件 目录 Python应用开发--制作bin文件 前言 1 环境搭建 2 代码编写与测试 结束语 前言 什么是bin? bin是二进制文件,其用途依系统或应用而定. ...
- python 二进制文件合并_python 读写和合并二进制bin文件,,在烧录程序的时候,需...
python 读写和合并二进制bin文件,,在烧录程序的时候,需 在烧录程序的时候,需要将多个二进制bin文件合成一个,并且要指定数据段地址偏移量,在数据段之间的地址填充默认值0xff.因为不想手动操 ...
- J-LINK直接烧录.bin文件到开发板
1.使用的程序 步骤: 点击 File->Open date file 设置下载的起始地址 点击->Connect进行连接. 点击->Production Programming/F ...
最新文章
- 使用LaTeX排版如何方便地引用多篇参考文献(不使用插件)
- No Module Named '_pywrap_tensorflow_internal'
- 圆角有边框背景色时,背景色溢出问题
- linux命令route
- React Native中文网
- Linux环境进程间通信(二): 信号--转载
- 代理类Proxy------ WeakHashMap----ReferenceQueue---- Reference
- 计算机第二课堂教学计划,小学的第二课堂教学计划
- java简单ai聊天_一个hello/hi的简单的网络聊天程序——JAVA
- VS Code 翻译插件
- python和java先学哪个-java和python先学哪个
- 十一、 人工变量之 “大M” 法
- Toad:基于 Python 的标准化评分卡模型
- Word打开目录导航、多页视图显示文章的方法
- 杭州某天使内部邮件曝光:移动互联网创业机会只剩3年
- idb的安装log及解决办法
- 从svn拉下的代码无状态图标(绿色对勾)的解决方法
- Java后端开发需要掌握什么
- 任正非,你也太能装逼了吧?
- 计算机的可持续发展问题,可持续发展视角下的计算机教育优化
热门文章
- 微信内置浏览器不支持下载APK(APP)软件的解决方法
- Mysql忽略大小写 如何处理
- Linux ALSA音频系统:platform,machine,codec
- elementUI分页组件实现表格数据序号累加功能
- 基于JAVA的疫情防控核酸检查管理系统【数据库设计、源码、开题报告】
- c语言程序设计CDIO,C语言程序设计(基于CDIO思想)(第2版)
- BZOJ1112洛谷P3466 [POI2008]KLO-Building blocks(砖头)[对顶堆学习笔记]
- 正则匹配6到16位字符组合(且只能为数字、字母、下划线)
- 航测相关软件教材分享
- ssm springboot网络订餐点餐跑腿系统java 小程序025