### 点阵LED显示原理及点阵汉字库的编码和从标准字库中提取汉字编码的方法
#### 实验目的
1. **理解LED点阵显示原理:**
- 掌握LED点阵显示的基本概念和技术原理,包括如何通过控制LED的阴阳极端口电平来实现LED的点亮和熄灭。
2. **掌握中英文字符显示方法:**
- 学习如何编程控制LED点阵显示中英文字符,理解点阵显示中字符编码的表示方法以及如何将字符编码转换为具体的显示点阵数据。
3. **学习标准汉字编码提取方法:**
- 了解如何从标准汉字库(如ASC16、HZ16)中提取特定汉字的编码,并将这些编码应用于LED点阵显示中,以便实现汉字的显示。
#### 点阵LED显示原理
- **基本原理:**LED点阵是由多个LED发光二极管按照一定的规则排列组成的矩阵结构,通常用于显示文字、图像等信息。每个LED都可以独立控制其亮灭状态,通过组合不同的亮灭状态可以形成各种图案或文字。
- **控制方法:**LED点阵通常采用行列扫描的方式进行控制。具体来说,通过控制行输入线(一般控制阳极)和列输入线(一般控制阴极)的电平,可以实现对每个LED点亮与否的精确控制。例如,在一个16×16的点阵中,可以通过控制16行和16列的电平来实现任意点的亮灭,从而构成完整的图案或文字。
- **硬件配置:**
- 在本实验中,使用了4块WTD3088点阵模块组成16×16的大型点阵,满足汉字显示的需求。
- 使用74LS273芯片控制行输入线,通过调整其输出状态来控制LED阳极的电平,进而控制LED的点亮。
- 使用74LS374芯片控制列输入线,通过调整其输出状态来控制LED阴极的电平。
- 使用74LS139芯片作为地址译码器,产生四个地址片选信号,用于控制不同的行和列。
#### 点阵汉字库的编码
- **汉字编码原理:**汉字编码是将汉字按照一定规则转化为数字形式的过程。在点阵显示中,每个汉字都被表示为一组特定的点阵数据,这些数据定义了LED点阵中哪些点应该点亮、哪些点应该熄灭。
- **标准字库介绍:**
- **ASC16:**一种用于存储ASCII字符的16×16点阵的字库。
- **HZ16:**一种用于存储汉字的16×16点阵的字库。
- **提取汉字编码的方法:**
- 可以使用专门的工具软件(如Basc16.exe、BHz16.exe)从标准字库中提取单个字符的点阵数据。
- 用户需要输入所需的字符(对于汉字还需启动相应的汉字环境),软件会自动从标准字库中提取该字符的点阵数据并保存为特定格式的文件(如.dat文件)。
- 用户可以将提取的数据直接应用到程序中,注意字节排列顺序和每位与显示点的对应关系,有时还需要对提取的数据进行适当修改才能适应实际需求。
#### 实验程序示例
- **程序设计思路:**
- 初始化阶段,通过设置行和列的初始电平来关闭所有LED,确保显示屏幕为空白状态。
- 编程控制行和列的电平,以逐行扫描的方式显示指定的字符。
- 使用预设的字符点阵数据来控制每个LED的状态,实现字符的显示。
- **程序代码分析:**
- 实验程序中定义了行和列控制地址的宏(如CSR1、CSR2、CSC1、CSC2等),以及初始化LED点阵显示的步骤。
- 通过循环控制行和列的电平,逐行显示字符的点阵数据。
- 通过调用预先准备好的字符点阵数据(如ASCE)来显示特定字符。
通过以上内容的学习,可以全面理解点阵LED显示原理及汉字编码提取方法,为实现复杂的文字和图形显示打下坚实的基础。