点阵编码打印输出的原理(打印机、LCD)
这篇文章主要记录下点阵编码如何打印出字或者字符的。
文中采用“反字模软件”和“字模3”两款软件帮助理解,感谢写这两款软件的作者。
一、点阵编码和ASCII编码对比
为了方便说明,这里用一个字举例。“火”。
1、ASCII编码
一个中文用两个字节表示 0xBB, 0xF0,非常普通,计算机可以通过ASCII编码直接打印出汉字。
2、点阵编码
点阵编码的字节数取决于使用的字体以及字体大小。
这里使用 宋体 常规 16*16 生成点阵编码。这里的16*16表示像素点。
上面十六个字节打印上半个字,下面十六个字节打印下半个字
(1)纵向取模 字节正序
0x00,0x00,0x03,0x1C,0x00,0x00,0x00,0xFF,0x00,0x00,0x02,0x04,0x18,0x00,0x00,0x00,
0x01,0x81,0x02,0x04,0x08,0x30,0xC0,0x00,0xC0,0x30,0x08,0x04,0x02,0x01,0x01,0x00,
完整字:
上半个字:
下半个字:
二、点阵编码打印成字的原理
这里引用上面 “火” 这个字的点阵编码。纵向取模 字节正序。
0x00,0x00,0x03,0x1C,0x00,0x00,0x00,0xFF,0x00,0x00,0x02,0x04,0x18,0x00,0x00,0x00,
0x01,0x81,0x02,0x04,0x08,0x30,0xC0,0x00,0xC0,0x30,0x08,0x04,0x02,0x01,0x01,0x00,
这里用excel打点表示
上半个字二进制形式:
A1-A8: 0x00:0000 0000
B1-A8: 0x00:0000 0000
C1-A8: 0x03:0000 0011
D1-A8: 0x1C:0001 1100
E1-A8: 0x00:0000 0000
F1-A8: 0x00:0000 0000
G1-A8: 0x00:0000 0000
H1-A8: 0xFF:1111 1111
I1-A8: 0x00:0000 0000
J1-A8: 0x00:0000 0000
K1-A8: 0x02:0000 0020
L1-A8: 0x04:0000 0100
M1-A8: 0x18:0001 1000
N1-A8: 0x00:0000 0000
O1-A8: 0x00:0000 0000
P1-A8: 0x00:0000 0000
下半个字二进制形式:
A9-A16: 0x01:0000 0001
B9-A16: 0x81:1000 0001
C9-A16: 0x02:0000 0010
D9-A16: 0x04:0000 0100
E9-A16: 0x08:0000 1000
F9-A16: 0x30:0011 0000
G9-A16: 0xC0:1100 0000
H9-A16: 0x00:0000 0000
I9-A16: 0xC0:1100 0000
J9-A16: 0x30:0011 0000
K9-A16: 0x08:0000 1000
L9-A16: 0x04:0000 0100
M9-A16: 0x02:0000 0010
N9-A16: 0x01:0000 0001
O9-A16: 0x01:0000 0001
P9-A16: 0x00:0000 0000
这里二进制的 1 表示该像素点要打一个点,0表示该像素不打点。
纵向取模:表示一个字节的8个bit竖着打印的
字节正序:表示一个字节的8个bit是从高位到地位以此从上到下打印的
三:点阵编码的其他类型
以上例子使用的是 纵向取模 字节正序 的排法。并且是 阴码的格式。
下面列举各种不同的类型以及释意
1、阴码和阳码
阴码:1 为亮,0为灭
阳码:0 为亮,1为灭
2、纵向取模 字节正序
0x00,0x00,0x03,0x1C,0x00,0x00,0x00,0xFF,0x00,0x00,0x02,0x04,0x18,0x00,0x00,0x00,
0x01,0x81,0x02,0x04,0x08,0x30,0xC0,0x00,0xC0,0x30,0x08,0x04,0x02,0x01,0x01,0x00,
左上角为起始点,A1到A8为第一个字节,从高位到低位依次从上到下填写。
字节顺序从左到右填写。填完上半行再填下半行。
先填完上半行再填下半。
3、纵向取模 字节倒序
左上角为起始点,A1到A8为第一个字节,从低位到高位依次从上到下填写。
字节顺序从左到右填写。填完上半行再填下半行。
4、横向取模 字节正序
左上角为起始点,A1到H1为第一个字节,从高位到低位依次从左到右填写。
字节顺序从左到右填写。一行两个字节。填完上半行再填下半行。
5、横向取模 字节倒序
左上角为起始点,A1到H1为第一个字节,从低位到高位依次从左到右填写。
字节顺序从左到右填写。一行两个字节。填完上半行再填下半行。
点阵编码打印输出的原理(打印机、LCD)相关推荐
- 【嵌入式系统开发16】基于OLED屏显和汉字点阵编码原理显示姓名学号,湿度温度,滚动长字符
要求 理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能: 显示自己的学号和姓名: 显示AHT20的温度和湿度: 上下或左右的滑动显示长字符,比如"H ...
- OLED屏显和汉字点阵编码
目录 一.SPI协议 (1)SPI协议简介 (2)SPI物理层 (3)协议层 (4)SPI 基本通讯过程 (5)CPOL/CPHA 及通讯模式 (6)通讯引脚 (7)SPI优缺点 二.OLED (1) ...
- 点阵字库的生产原理(转)
源:点阵字库的生产原理 所有的汉字或者英文都是下面的原理, 由左至右,每8个点占用一个字节,最后不足8个字节的占用一个字节,而且从最高位向最低位排列. 生成的字库说明:(以12×12例子) 一个汉字占 ...
- 点阵LCD12864的显示原理(不带字库)
点阵LCD12864的显示原理(不带字库) 在数字电路中,所有的数据都是以0和1保存的,对LCD控制器进行不同的数据操作,可以得到不同的结果.对于显示英文操作,由于英文字母种类很少,只需要8位(一字节 ...
- 彻底弄懂base64的编码与解码原理
作者介绍 背景 base64的编码原理网上讲解较多,但解码原理讲解较少,并且没有对其中的内部实现原理进行剖析.想要彻底了解base64的编码与解码原理,请耐心看完此文,你一定会有所收获. 涉及算法与逻 ...
- 音视频同步原理解析;音频编码和解码原理
视频流中的DTS/PTS到底是什么? DTS(解码时间戳)和PTS(显示时间戳)分别是解码器进行解码和显示帧时相对于SCR(系统参考)的时间戳.SCR可以理解为解码器应该开始从磁盘读取数据时的时间. ...
- 12864点阵液晶显示模块的原理
12864点阵液晶显示模块的原理 12864点阵液晶显示模块(LCM)就是由128*64个液晶显示点组成的一个128列*64行的阵列. 每个显示点对应一位二进制数,1表示亮,0表示灭.存储这些点阵信息 ...
- OLED屏显示和汉字点阵编码原理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.认识I2C协议 二.基于IIC协议在OLED屏上实现显示相关信息 1.显示自己的学号和姓名 2.显示AHT20的温 ...
- 【点阵液晶编程连载二】LCD 驱动的基本流程
2. LCD 驱动的基本流程 介绍基本的流程控制方法,这里重在介绍方法,从时序的模拟或者是总线的连接,到利用LCD 的特性来做一些显示的处理,如单色液晶如何显示一个点,彩色LCD 如何显示一个点的关系 ...
最新文章
- 考前自学系列·计算机组成原理·控制器的组成及各部分的功能
- php json java_php 解析java传过来的json数据
- 锤子剪刀布 (20)
- boost::multi_array模块测试 index_gen 的代码
- 菜鸟的成长记录--linux 通配符和特殊字符集合的使用
- 2020 存储技术热点与趋势总结
- hyperledger caliper 测试配置yaml
- matlab随机线性微分方程,基于MATLAB的随机线性微分方程的求解
- CorelDRAW2022矢量绘图软件老牌的矢量图形制作工具
- usaco 1.1 greedy gift givers
- 超难打地鼠 【安卓游戏】
- 判断IP是否在IP段内
- Spark开发环境的搭建(一)
- 解决fileReader读取文件乱码
- 有什么好的学编程的网站或者是软件?『编程入门』?
- 关于Andriod org.gradle.api.tasks.TaskExecutionException: Execution failed for task 问题及解决办法
- matlab画图总结——二维图plot函数、图形标注和坐标轴控制、饼图、条形图、排列图;三维图的绘制
- 【Vue】qq浏览器打开空白
- 开始甲骨文培训了,第一天说了一下上课学习规矩及计算机基础
- scite可以编程c语言不,SciTE中文使用步骤.doc
热门文章
- PyQt使用ICE框架实现通信
- linux iw 命令
- Java中动态加载字节码的方法 (持续补充)
- java运维软件下载_开源运维自动化平台-opendevops
- WIN10笔记本偶然会出现插入USB设备的时候报错:无法识别的usb设备,前一个设备不正常......
- 小时候短暂的武校经历!
- 人工智能数学课高等数学线性微积分数学教程笔记(2. 一元函数微分学)
- oj记录 牛客小I白月赛50 C减法与求余 (思维
- 【附源码】Python计算机毕业设计美容美发店会员管理系统
- python最新版本安卓下载_Python文档app最新版下载-Python文档app安卓版下载v1.0- 游侠下载站...