第 27卷第 2期
2008年 6月
武 汉 工 业 学 院 学 报
Jourmal of Wuhan Polytechnic University
V01.27No.2
Jun.20o8
文章编号 :1009-4881(2008)02-0048-04
多种字库在嵌人式系统中的应 用
余 辉 ,张志俊
(1.中南 民族大学 外语学 院,湖北 武汉 430074;2.中南 民族大学 计算机科 学学 院 ,湖北 武汉 430074)
摘 要 :越来越 多的嵌入式 系统或设 备上 需要应用 多种 中、西文文 字 ,开发 中设计 自定义 的用
户点 阵字库 ,需要选择合适 的字符编码 ,要从 已有的字库 中提取所 需的 字模 ,要考虑 字模 扫描
方式 ,还 需要 合理安排 字模 的存储 以及 快速 的字符检 索方 法。结合 开发 实践 ,系统介绍 了与之
相关的几种常用方法 ,以期对 开发应 用有益 。
关键 词 :字库 ;字模 ;嵌 入 式 ;LCD显示
中图分类号 :rip 391.1 文献标 识码 :A
O 引 言
在以单片机 或嵌入式 处理器作为核心的各类系
统或设备 的开发过程中,字符特别是汉字在 LED或
LCD上 的显示 、对打印机的输 出,以及字符点阵字
库的组织和存储等设计 ,通 常是开发者需要重点加
以考虑的问题¨ 。为了界面上的美观 ,又常常需要
采用 多种形 式 的字符 ¨ ,例如汉字有 宋 体、楷 体、黑
体 ,以及简体 、繁体等不同的字体 ,又有 如 16×16、
24 x24、48×48等不 同大小的 点 阵形 式 。此 时 ,有
关字库的设计将更加麻烦 ,问题将会更加突 出。比
较简单的方法是选用 自带字库的外围设备 ,显然 ,这
样会使 设计受到限制 ,且 这 些设 备 也不一定符合要
求。根据应用的需要 ,开发者建立系统的用户字库 ,
则是 比较可行的一种方法。汉字符号成千上万 ,将
全部汉字点阵字模都存放在系统中也是不现实 的,
况且实 际使用时汉字的用量也是 极其有 限的。对于
建立用户字库 ,首先是从已有的中、西文字库中提取
需要用到的字符的点阵字模 ;然后根据编程的方
便对 字模的扫描方 式 进行 调 整;为 了最 大 限度 地 减
小存储容量 ,在系统中要合理地安排字模的存储方
式 ;而为了在程序运行时能快速地得到字符 的对应
字模 ,还需采取合适的字符检索方法 。本文针对用
收稿 日期 :2008-02-25
作者简介 :余辉 (1964一),女 ,湖北省武汉市人 ,实验师。
户字库的设计 ,介绍 了作者在实践中用到的几种方
法 ,它们 在智 能仪表 或测控 系统中得到实际应用 ,效
果 良好 。
1 典型字库 结构分析
1.1 字符 编码
西文字 符采 用 ASCII编码 ,一个 字 节表示 一个
符号 ,共 256个 字 符 。 为 了与 中 文 兼 容,用 7位
ASCII(最高位为 0)表示西文 ,共 128个符号 。进一
步压缩 ,可省略 33个不常用 的特殊符号,保留编码
20H一7EH的共 95个常用的数字、字母和剩余 的特
殊符号 。
中文 字 符按 国标 GB2312.80规定用 机 内码 表
示 ,一个字 符 占 2个 字节 ,两字节 最高位 均 为 1。
GB2312-80规定中文字符用 区码加位 码定义,中文
字符库包括若干个区 ,每 区 94个字符。1—9区定
义 了 619个 常 用全 角 符号,16—87区定义 了 6763
个常 用 汉 字。对 区 位 码 做 一 个 固 定 偏 移 (加
0AOAOH)即得到机内码 。实际开发应用 中常常只
需用到极少量的中文字符 (笔者在一台测量仪设计
中用了不到 150个 )。中文字符可以仍采用机 内码
编码 ,而仅保 留所用字符的字模数据。
1.2 标 准字库
用户字库的中、西文点阵字模需要从标准字库
维普资讯 http://www.cqvip.com