书签 分享 收藏 举报 版权申诉 / 11

基于RA8870控制器的液晶模块自定义符号和图形的显示方法.pdf

  • 上传人:62****3
  • 文档编号:4642065
  • 上传时间:2018-10-23
  • 格式:PDF
  • 页数:11
  • 大小:408.76KB
  • 摘要
    申请专利号:

    CN201110317992.7

    申请日:

    2011.10.19

    公开号:

    CN102522067A

    公开日:

    2012.06.27

    当前法律状态:

    终止

    有效性:

    无权

    法律详情:

    未缴年费专利权终止IPC(主分类):G09G 3/36申请日:20111019授权公告日:20130619终止日期:20151019|||授权|||公开

    IPC分类号:

    G09G3/36

    主分类号:

    G09G3/36

    申请人:

    长安大学

    发明人:

    段晨东; 秦刚; 代杰

    地址:

    710064 陕西省西安市南二环中段

    优先权:

    专利代理机构:

    西安恒泰知识产权代理事务所 61216

    代理人:

    李郑建

    PDF完整版下载: PDF下载
    内容摘要

    本发明公开了一种基于RA8870控制器的液晶显示模块用户自定义的、任意尺寸的汉字字符和图形符号的显示方法,该方法将自定义字符或图形符号用字型点阵方法构建,以RA8870控制器的16×8半字型和16×16全字型基本显示模式为基础,把自定义的字符点阵字型分割成16×8的半字型子模块,并进行编码。显示时,按字型结构特征及拟定的顺序,把字型子模块依次读入RA8870控制器的CGROM。然后,指定显示起始位置,用显示位置计算公式,按照自定义字符或图形的结构,计算出每个子字型模块显示坐标位置;再以不同的调用方式实现显示字符的字型装配,在液晶显示模块上呈现完整的字符和图形。

    权利要求书

    1: 一种基于 RA8870 控制器液晶显示模块的自定义字符和图形符号显示方法, 其特点 在于, 该方法首先构建显示字符或图形符号的字型点阵, 以 RA8870 控制器的 16×8 半字型 和 16×16 全字型基本显示模式为基础, 把自定义的字符点阵字型分割成 16×8 的半字型子 字型块, 并进行编码 ; 显示时, 首先把需要显示的字型以子字型模块的编码形式, 按字型结 构特征及拟定的顺序, 依次读入 RA8870 控制器的 CGROM, 并确定每个子字型模块在 CGROM 中 的编号 ; 其次, 指定该字符在液晶模块上的显示起始位置, 按照自定义字符或图形的结构, 通过显示位置计算公式, 计算出每个子字型模块显示坐标位置 ; 然后, 采用半字型或全字型 方式的调用方式, 把 CGROM 中的子字型模块按指定显示位置调入 DDRAM, 实现显示字符的字 型装配, 在液晶显示模块上呈现完整的字符和图形 ; 所述的字型模块的编码是行形式的二进制编码, 字型点阵中需显示的点定义为 1, 无需 显示的点定义为 0 ; 需要反色显示时, 则反之 ; 每 8 位二进制构造一个编码, 一个子字型模块 由 16 个 8 位二进制编码构成 ; 所述的自定义的字符点阵的字高是 16 的整数倍, 字宽是 8 的整数倍, 不是整数倍数时, 在构建字型点阵时用 0 补足 8 位 ; 所述的自定义的字符点阵分割方法是 : 把自定义的字符点阵按照 8×16 点阵分解成若干个子模块, 称为字型点阵子模块, 然 后, 对每个子模块编码, 构成 16 个字节的子字型模块编码 ; 自定义字符或图形的显示方法是 : (1) 把自定义的字符点阵写入 RA8870 的 CGRAM, 具体方法是 : 设置 RA8870 设置为图形 模式, 设置 CGRAM 控制寄存器为允许写入 CGRAM 状态, 指定字型点阵写入 CGRAM 的区域, 依 次把字型模块的 16 个字节编码存入 CGRAM 的指定区域, 每次写入一个子模块编码 ; 并把每 个子模块按其在 CGRAM 的存储顺序编号 ; (2) 写入 CGRAM 时, 按照字符和图形的结构, 自左向右、 由上而下, 依次把字型点阵子模 块的编码写入 RA8870 的 CGRAM ; (3) 自定义字符或图形显示, 具体方法为 : 把 RA8870 设置为文本模式, 设置文字控制寄 存器 0 使 RA8870 选择 CGRAM 字型, 选择显示存储区 DDRAM 的写入区域, 指定字符或图形在 液晶模块的显示位置坐标, 从 CGRAM 中提取字型编码 ; (4) 字符或图形显示时, 按照显示字符的字型构造特征, 提取字型编码 ; (5) 从 CGRAM 提取字型编码的方式是以 RA8870 的半字型或全字型模式提取。

    说明书


    基于 RA8870 控制器的液晶模块自定义符号和图形的显示 方法

        【技术领域】
         本发明属于彩色液晶显示模块的汉字显示技术领域, 具体涉及一种基于 RA8870 控制器的液晶显示模块用户自定义的、 任意尺寸的汉字字符和图形符号的显示方法。背景技术
         目前, TFT 液晶显示模块质量轻、 厚度薄, 辐射少, 数字化, 被广泛应用在智能仪器 仪表领域。 在智能仪器仪表上, 液晶显示模块用于监控参数数值显示、 实时参数曲线显示和 提供报警信息, 因此, 不同字体、 不同大小的文字或符号提示必不可少。
         RA8870 控制器是瑞佑科技有限公司 (RAiO Technology Inc.) 出品的一款文字 / 图形 TFT 液晶控制器, 支持 640×480 点分辨率的数字或模拟 TFT 液晶显示模块。RA8870 内 置了 ISO8859 的 4 种字体的字母及符号 1024 个, 以半字型 8×16 点阵模式显示。另外, 它 提供了按照 GB-2312 和 BIG-5 编码访问外部汉字字型 ROM 的功能, 以全字型 16×16 点阵模 [1] 式显示 。金鹏实业有限公司出品的彩色显示模块 OCM480272T430 采用了 RA8870 控制器 作为驱动器件, 该模块提供了 GB-2312 及 BIG-5 编码的外部 16×16 点阵宋体字型字库 [2]。 RA8870 控制器具有完善的西文显示模式, 提供了 4 种字体、 1024 个 16×8 的点阵字符库, 其 放大、 旋转等附加功能, 西文显示基本能够满足智能仪器仪表应用的需要。 在汉字字符显示 方面, 它支持 16×16 点全字型显示模式, 由于汉字字库 ROM 通常存储一种字体的字型点阵 库, 不能满足不同风格字体多样化显示的需求 ; 另外, 虽然在 RA8870 控制器下可以实现把 显示字符以固定倍数放大, 但是由于字体膨胀, 字符字型显示点阵变得稀疏, 缺乏美感, 另 一方面, 也不能满足用户自行定义的字符和图形显示要求。
         以下是申请人检索的相关参考文献 :
         【1】 RA8870 文字 / 图形 TFT LCD 控制器规格书 (Version 1.1A), 2010, 9;
         【2】 OCM480272T430-1B 彩屏带触摸屏说明书, 金鹏实业有限公司。 发明内容 针对目前基于 RA8870 控制器的液晶显示模块只能显示 16×8 半字型和 16×16 全 字型的不足, 本发明的目的在于, 提供一种 RA8870 控制器的自定义大尺寸和字体的字符和 图形符号显示方法。
         为了实现上述任务, 本发明采用如下的技术解决方案 :
         一种 RA8870 控制器的自定义大尺寸和字体的字符和图形符号显示方法, 其特征 在于, 该方法首先构建显示字符或图形符号的字型点阵, 以 RA8870 控制器的 16×8 半字型 和 16×16 全字型基本显示模式为基础, 把自定义的字符点阵字型分割成 16×8 的半字型子 字型块, 并进行编码 ; 显示时, 首先把需要显示的字型以子字型模块的编码形式, 按字型结 构特征及拟定的顺序依次读入 RA8870 控制器的 CGROM, 并确定每个子字型模块在 CGROM 中 的编号 ; 其次, 指定该字符在液晶模块上的显示起始位置, 按照自定义字符或图形的结构,
         通过显示位置计算公式, 计算出每个子字型模块显示位置 ; 然后, 采用半字型或全字型方式 的调用方式, 把 CGROM 中的子字型模块按指定显示位置调入 DDRAM, 实现显示字符的字型装 配, 在液晶显示模块上呈现完整的字符和图形。
         所述的字型模块的编码是行形式的二进制编码, 字型点阵中需显示的点定义为 1, 无需显示的点定义为 0 ; 需要反色显示时, 则反之 ; 每 8 位二进制构造一个编码, 一个子字型 模块由 16 个 8 位二进制编码构成。
         所述的自定义字型点阵的字高是 16 的整数倍, 字宽是 8 的整数倍, 不是整数倍数 时, 在构建字型点阵时用 0 补足 8 位。
         所述的自定义字型点阵分割方法是 :
         把自定义字型点阵按照 8×16 点阵分解成若干个子模块, 称为子字型模块。然后, 对每个子模块编码, 构成 16 个字节的子字型模块编码。
         自定义字符或图形的显示方法是 :
         (1) 把自定义字型点阵写入 RA8870 的 CGRAM, 具体步骤 : 设置 RA8870 设置为图形 模式, 设置 CGRAM 控制寄存器为允许写入 CGRAM 状态, 指定字型点阵写入 CGRAM 的区域, 依 次把字型模块的 16 个字节编码存入 CGRAM 的指定区域, 每次写入一个子模块编码。并把每 个子模块按其在 CGRAM 的存储顺序编号。
         (2) 写入 CGRAM 时, 按照显示字符或图形的结构特征, 自左向右、 自上而下各个子 模块的编码按指定顺序写入。
         (3) 自定义字符或图形显示, 具体步骤为 : 把 RA8870 设置为文本模式, 设置文字控 制寄存器 0 使 RA8870 选择 CGRAM 字型, 选择显示存储区 DDRAM 的写入区域, 指定字符或图 形在液晶模块的显示位置坐标, 从 CGRAM 中提取字型编码到 DDRAM。
         (4) 字符或图形显示时, 按照自定义字符和图形的结构特征, 定位显示位置坐标, 把字型点阵子模块编码传送到 DDRAM。
         (5) 从 CGRAM 提取字型编码的方式 : 以 RA8870 的半字型或全字型模式提取。
         以 RA8870 的半字型模式提取 : 设置 RA8870 为显示半型字, 把子模块在 CGRAM 中的 编号传送给 RA8870, RA8870 控制器会自动从 CGROM 中提取该子模块的点阵信息到液晶模块 的指定位置显示。
         以 RA8870 的全字型模式提取 : 设置 RA8870 为显示半型字, 把子模块在 CGRAM 中的 编号传送给 RA8870, RA8870 控制器会自动从 CGROM 中提取该子模块以及下一个子模块的点 阵信息到液晶模块的指定位置显示。 附图说明
         图 1 为一个自定义字符的字型点阵示意图 ;
         图 2 为一个自定义字符的字型点阵的分割示意图 ;
         图 3 为一个子模块的字型点阵编码示意图 ;
         图 4 为字型点阵子模块在 CGRAM 中的存储和编号示意图 ;
         图 5 为自定义字符或图形的字型点阵编码送入 CGRAM 的流程图。
         图 6 为一个字符或图形以半型字方式显示的操作流程。
         图 7 为一个字符或图形以全型字方式显示的操作流程。下面结合附图对本发明进一步说明。具体实施方式
         按照本发明的技术方案, 实现本发明方法具体包括自定义字符或图形的字型点阵 创建、 字型点阵的子模块分割、 子模块装入 CGRAM、 自定义字符和图形的显示。
         所述字型点阵创建方法是 :
         自定义的字符或图形须转换成字型点阵, 其点阵维数为 M×N, 其中 M 是 16 的整数 倍, N 是 8 的整数倍, 设 m = M/16, n = N/8。
         一个自定义汉字字符的字型点阵如图 1 所示, 图 1 中自定义字体为行书的汉字 “雪” 的 32×32 字型点阵。图中黑色点为显示部分, 反色显示时, 反之。在构建字型点阵时, 若 M 和 N 不能满足 16 和 8 整数倍的要求时, 用非显示色补足。
         所述的字型点阵的子模块分割方法是 :
         把字型点阵分割为 16 行、 8 列的一系列子模块, 分割 M×N 维字型点阵可以得到 m×n 个子模块, 并按字型点阵结构形式自左向右、 自上而下给每个模块编号。如图 2 所示, 32×32 字型点阵可分割为 8 个 16×8 的子模块①~⑧。 为了把字型点阵信息送入 RA8870 的 CGRAM, 需要对每个字型点阵子模块进行编 码, 图 3 为其中一个子模块的点阵字型编码示意图, 编码时, 图中的黑色方块为二进制数 1, 图中的黑色方块为二进制数 0, 字型点阵子模块的每一行为 8 位, 编码可写成 2 位十六进制 数, 如图中第一行字型点阵的二进制编码为 11111000, 写成十进制数为 0xF8. 每一个子模 块的编码为 16 个, 顺序自上而下。
         所述的子模块装入 CGRAM 的方法是 :
         按子模块编号顺序地把各个子模块的编码送入 CGRAM 中, 图 4 为子模块送入 CGRAM 后的示意图。图 5 为自定义字符或图形的字型点阵编码送入 CGRAM 的流程图。具体的操作 流程如下 :
         (1) 设置 RA8870 设置为图形模式 : 把 RA8870 的 CGRAM 写入控制器 0(MWCR0) 的最 高位 TX_MD 清零,
         (2) 设置 RA8870 的 CGRAM 为允许写入状态, 设置 RA8870 的 CGRAM 写入控制器 1(MWCR1)WR_DS1 为 0, WR_DS0 为 1。
         (3) 指定字符字型点阵的写入区域, 通过设定 RA8870 的 CGRAM 设定寄存器内容 (CGSR) 实现, 即指定字型点阵在 CGRAM 存储区编号, 编号取值 : 0x00 ~ 0xFF。
         RA8870 的 CGRAM 每个存储区域的大小为 16 个单元, 因此, 每个存储区域存储一个 字符字型点阵子模块。多个子模块需要多次进行写入 CGRAM 操作。
         (4) 把一个字符字型点阵子模块写入 RA8870 的 CGRAM 指定存储区域时, 首先执行 GCRAM 写入命令, 写入 CGRAM 读 / 写命令寄存器 (MRWC)。然后, 依次把字符字型点阵子模块 的编码以每次一个字节的形式, 分 16 次写入指定 CGRAM 的存储区域。
         (5) 多个字型点阵子模块写入 CGRAM 的操作, 重复上述步骤 (3)、 步骤 (4) 两步。
         (6) 多个自定义字型点阵的写入, 重复步骤 (3)、 步骤 (4)、 步骤 (5)。
         所述自定义字符或图形显示方法是 :
         ( 一 ) 字符或图形以半型字方式显示
         字符或图形以半型字方式显示是把存储在 RA887 的 CGRAM 中的各子模块, 以 RA8870 定义的全半字型方式 (16×8 点阵 ), 按预先设置的顺序依次调入 DDRAM, 重新组装各 字型点阵子模块, 以完整字符或图形的形式显现在液晶显示模块上。图 6 为一个字符或图 形以半型字方式显示的操作流程。具体步骤是 :
         (1) 分割字符或图形为子模块之后, 按照字符和图形的构造确定子模块的个数, 共 m 行 ×n 列个 16×8 个字型点阵子模块, 确定字型点阵子模块行数 m, 列数 n。
         (2) 设置字符显示的背景和字体颜色 : 设置 RA8870 的文字前景颜色寄存器 (TFCR) 和文字背景颜色寄存器 (TBCR)。
         (3) 设置 RA8870 的模式为文本模式 : 把 GCRAM 存储器写入控制器 0(MWCR0) 的最 高位置 1。
         (4) 设置字符的显示模式, 即从 CGRAM 中提取字符字型点阵到 DDRAM 的方式, 显示 模式由文字控制寄存器 0(FNCR0) 的第六位 FS_S 设置 : 半字型方式时, FS_S 设置为 0。
         (5) 确定字符显示的起始位置 (x0, y0)。确定字型点阵子模块的起始编号, 行j= 0, 列 i = 0。
         (6) 设置字型点阵库的位置位于 RA8870 的 CGRAM : 文字控制寄存器 0(FNCR0) 的第 七位 FT_S 设置为 1。
         (7) 选择写入字型点阵的目的存储区域 : 设置目的存储区域为 BANK1 和 BANK2, 由 CGRAM 写入控制寄存器 1(MWCR1) 的第三位 WR_DS1 和第二位 WR_DS0 确定, WR_DS1 和 WR_DS0 均设置为 0。
         (8) 设置字符显示的图层 : 由 CGRAM 写入控制寄存器 1(MWCR1) 的最低位 WR_L 确 定, WR_L 设置为 0 时, 选择图层 1。
         (9) 求字符显示位置坐标 (x, y)。
         设字符在液晶模块显示的起始位置 (x0, y0)
         在某一行显示的字型点阵子模块显示位置坐标 (x, y) 按下式计算 :
         x = x0+i×8
         y = y0
         即: 子模块在同一行显示时, 纵坐标 y 保持不变, 横坐标 x 在上一个子模块位置基 础上递增 8 个像素。
         根据字符和图形的构造装配字型点阵子模块时, 字型点阵子模块需换行显示, 换 行显示的起始坐标为按下式计算 :
         x0 = x0
         y0 = y0+16
         即: 换行显示时, 子模块显示起始位置的横坐标 x 保持不变, 纵坐标 y 在上一行显 示位置的基础上递增 16 个像素。
         (10) 通过 RA8870 的坐标设置寄存器设置字型点阵子模块的显示位置。
         横坐标 x 由水平坐标寄存器 (CURH1, CURH0) 设置 ;
         横坐标 y 由水平坐标寄存器 (CURV1, CURV0) 设置。
         (11) 从 CGRAM 中按编号取字型点阵子模块, 然后写入 DDRAM, 字型点阵子模块显示 在液晶显示模块上。(12) 换行显示时, 需要重新设置字型点阵库的位置、 目的存储区和显示图层。
         ( 二 ) 字符或图形以全型字方式显示
         字符或图形以全型字方式显示是把存储在 RA8870 的 CGRAM 中的各子模块, 以 RA8870 定义的全字型方式 (16×16 点阵 ), 按预先设置的顺序和字符或图形的结构, 依次调 入 DDRAM, 重新组装字型点阵子模块, 以完整字符或图形的形式显现在液晶显示模块上。全 型字方式显示时, 每给一个字型点阵子模块编号, 将提取从此编号开始的 2 个字型点阵子 模块的编码, 在液晶显示模块上显示一个 16×16 点阵的图形。图 7 为一个字符或图形以全 型字方式显示的操作流程。具体步骤是 :
         (1) 分割字符或图形为子模块之后, 按照字符和图形的构造确定子模块的个数, 共 m 行 ×n 列个 16×8 个字型点阵子模块, 确定字型点阵子模块行数 m, 列数 n。
         (2) 设置字符显示的背景和字体颜色 : 设置 RA8870 的文字前景颜色寄存器 (TFCR) 和文字背景颜色寄存器 (TBCR)。
         (3) 设置 RA8870 的模式为文本模式 : 把 GCRAM 存储器写入控制器 0(MWCR0) 的最 高位置 1。
         (4) 设置字符的显示模式, 即从 CGRAM 中提取字符字型点阵到 DDRAM 的方式, 显示 模式由文字控制寄存器 0(FNCR0) 的第六位 FS_S 设置 : 全字型方式时, FS_S 设置为 1。 (5) 确定字符显示的起始位置 (x0, y0)。确定字型点阵子模块的起始编号, 行j= 0, 列 i = 0。
         (6) 设置字型点阵库的位置位于 RA8870 的 CGRAM : 文字控制寄存器 0(FNCR0) 的第 七位 FT_S 设置为 1。
         (7) 选择写入字型点阵的目的存储区域 : 设置目的存储区域为 BANK1 和 BANK2, 由 CGRAM 写入控制寄存器 1(MWCR1) 的第三位 WR_DS1 和第二位 WR_DS0 确定, WR_DS1 和 WR_DS0 均设置为 0。
         (8) 设置字符显示的图层 : 由 CGRAM 写入控制寄存器 1(MWCR1) 的最低位 WR_L 确 定, WR_L 设置为 0 时, 选择图层 1。
         (9) 求字符显示位置坐标 (x, y)。
         设字符在液晶模块显示的起始位置 (x0, y0)
         在某一行显示的字型点阵子模块显示位置坐标 (x, y) 按下式计算 :
         x = x0+i×16
         y = y0
         即: 子模块在同一行显示时, 纵坐标 y 保持不变, 横坐标 x 在上一个子模块位置基 础上递增一个全字型字宽—— 16 个像素。
         根据字符和图形的构造装配字型点阵子模块时, 字型点阵子模块需换行显示, 换 行显示的起始坐标为按下式计算 :
         x0 = x0
         y0 = y0+16
         即: 换行显示时, 子模块显示起始位置的横坐标 x 保持不变, 纵坐标 y 在上一行显 示位置的基础上递增 16 个像素。
         (10) 通过 RA8870 的坐标设置寄存器设置字型点阵子模块的显示位置。
         横坐标 x 由水平坐标寄存器 (CURH1, CURH0) 设置 ;
         横坐标 y 由水平坐标寄存器 (CURV1, CURV0) 设置。
         (11) 从 CGRAM 中按编号取字型点阵子模块, 然后写入 DDRAM, 字型点阵子模块显示 在液晶显示模块上。
         (12) 换行显示时, 需要重新设置字型点阵库的位置、 目的存储区和显示图层。

    关 键  词:
    基于 RA8870 控制器 液晶模块 自定义 符号 图形 显示 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于RA8870控制器的液晶模块自定义符号和图形的显示方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-4642065.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1