一、 ***式键盘接口电路及程序设计
时间:2023-03-20 03:57:29 热度:0°C
第3章智能仪器人机接口 3 1键盘与接口3 2led显示及接口3 3键盘 led显示器接口设计3 4crt显示及接口3 5微型打印机及接口 第3章智能仪器人机接口 人机交互功能即用户与仪器交换信息的功能 这个功能有两方面的含义 一是用户对智能仪器进行状态干预和数据输入 二是智能仪器向用户报告运行状态与处理结果 实现智能仪器人 机交互功能的部件有键盘 显示器和打印机等 这些部件同智能仪器主体电路的连接是由人机接口电路来完成的 人机接***术是智能仪器设计的关键技术之一 3 1键盘与接口 含硬件与软件两部分 硬件指键盘的*** 即键盘结构及其与主机的连接方式 软件是指对按键操作的识别与分析 称为键盘管理程序 键盘与接口的任务大体可分为下列几项 1 识键 判断是否有键按下 若有 则进行译码 若无 则等待或转做别的工作 2 译键 识别出哪一个键被按下并求出被按下键的键值 3 键值分析 根据键值 找出对应处理程序的入口并执行之 本节侧重讨论 1 和 2 两项工作 下一节侧重讨论键值分析方法 1 和 2 两项工作通常合称为扫描 3 1键盘与接口 3 1 1键盘输入基础知识 一 键盘的*** 键盘按其工作原理可分为编码式键盘和非编码式键盘 编码式键盘由按键键盘和专用键盘编码器两部分构成 当键盘中某一按键被按下时 键盘编码器会自动产生对应的按键代码 并输出选通脉冲信号与cpu进行信息联络 非编码键盘不含编码器 当某键按下时 键盘只送出一个简单的闭合信号 对应按键代码的确定必须借助于软件来完成 显然 非编码键盘的软件是比较复杂的 并且要占用较多的cpu时间 但非编码键盘可以任意组合 成本低 使用灵活 因而智能仪器大多采用非编码式键盘 3 1 1键盘输入基础知识 一 键盘的*** 非编码键盘有***式键盘 矩阵式键盘和交互式键盘之分 ***式键盘结构的特点是一键一线 即每一个按键单独占用一根检测线与主机相连 矩阵式键盘结构的特点是把检测线分成两组 一组为行线 另一组为列线 按键放在行线和列线的交叉点上 m n矩阵键盘与主机连接只需要m n条线 显然 当需要的按键数目大于8时 一般都采用矩阵式键盘 交互式键盘结构的特点是 任意两检测线之间均可以放置一个按键 很显然 交互式键盘结构所占用的检测线比矩阵式还要少 但是这种键盘所使用的检测线必须是具有位控功能的双向i o端口线 3 1 1键盘输入基础知识 一 键盘的*** 编程扫描工作方式 中断工作方式和定时扫描工作方式 编程扫描工作方式 也称查询方式 中断工作方式 定时扫描工作方式 二 键盘的工作方式 二 键盘的工作方式 1 编程扫描工作方式 该方式也称查询方式 它是利用cpu在完成其他工作的空余调用键盘扫描程序 以响应键输入的要求 当cpu在运行其他程序时 它就不会再响应键输入要求 因此 采用该方式编程时 应考虑程序是否能对用户的每次按键都会做出及时的响应 2 中断工作方式 当键盘中有按键按下时 硬件会产生中断申请信号 cpu响应中断申请后对键盘进行扫描 并转入与按下键相应的键功能处理程序 优点 由于在无键按下时不进行键扫描 cpu工作效率高 并能确保对用户的每次按键操作做出迅速的响应 3 定时扫描工作方式 利用专门定时器产生定时中断申请信号 由于每次按键的持续时间一般不小于100ms 为了不漏检 定时中断的周期一般应小于100ms 三 键抖动及消除 当按键被按下或释放时 按键触点的弹性会产生一种抖动现象 即当按键按下时 触点不会迅速可靠地接通 当按键释放时 触点也不会立即断开 而是要经过一段时间的抖动才能稳定下来 抖动时间视按键材料不同一般为5ms 10ms 键抖动可能导致计算机将一次按键操作识别为多次操作 为克服这种由键抖动所致的误判 常采用如下措施 1 硬件电路消除法 利用rs触发器来吸收按键的抖动如图所示 一旦有按键按下时 触发器就立即翻转 触点的抖动便不会再对输出产生影响 按键释放时亦然 2 软件延时法 当判定按键按下时 用软件延时10ms 20ms 等待按键稳定后重新再判一次 以躲过触点抖动期 四 键连击的处理 当按下某按键时 对应的功能分析程序会得以执行 如果在操作者释放按键之前 对应的功能得以多次执行 如同操作者在连续不断操作该键一样 这种现象就称为连击 连击现象可用图 a 所示流程图的软件方法来解决 把连击现象加以合理利用 有时会给操作者带来方便 例如在某些简易仪器没安排0 9数字按键 而合理利用连击现象 只设置一只调整按键 采用加1 或减1 的方法来调整有关参数 具体实现软件流程图如图 b 所示 五 无锁键 自锁键及互锁键 无锁键即按键 当键按下时 按键的两个触头接通 松开时 两个触头断开 恢复开路 无锁键在逻辑上等效于单稳态 自锁键在逻辑上等效于双稳态 当第一次按下时 包括松开后 其按键两个触头接通 第二次按下及松开后 两个触头又断开 不断地按此规律动作 自锁键常用在仪器二选一选择开关等场合 例如 交 直流耦合选择等 互锁键是指一组具有互锁关系的按键开关 当这一组按键开关之一被选择时 即对应的开关接通 与该键有互锁关系的其他键都将断开 或者说 具有互锁关系的这组按键 某时刻最多只能有一个键被选择 互锁键在仪器中的应用场合也较多 例如 某仪器具有5挡量程 则对应这5挡量程的按键开关必须是互锁键 因为仪器在某一时刻只允许选择一挡量程 电子仪器需要用到无锁键 自锁键 互锁键等按键类型 五 无锁键 自锁键及互锁键 传统仪器中 无锁 自锁及互锁的功能都是通过采用不同机械结构的无锁键 自锁键及互锁键来实现的 智能仪器中 仪器面板上的按键开关一般只使用机械结构最简单的无锁键 即通常所说的常态为开路的按键开关 智能仪器自锁及互锁的开关功能需要借助软件设置特定的标志位等办法 使无锁键也具有自锁及互锁的功能 通过软件使无锁键也具有自锁及互锁功能的方法将结合具体仪器讨论 3 1 2键盘接口电路及控制程序 一 ***式键盘接口电路及程序设计 非编码键盘按照与主机连接方式的不同 有***式 矩阵式和交互式之分 本节将对其接口电路及程序设计分别予以讨论 二 矩阵式键盘接口电路及程序 三 交互式键盘接口电路及编程方法 一 ***式键盘接口电路及程序设计 ***式键盘的每个按键占用一根测试线 它们可以直接与单片机i o线相接或通过输入口与数据线相接 结构很简单 这些测试线相互***无编码关系 因而键盘软件不存在译码问题 一旦检测到某测试线上有键闭合 便可直接转入到相应的键功能处理程序进行处理 一个实际三个按键的***式键盘接口电路如右图所示 一 ***式键盘接口电路及程序设计 首先判断有无键按下 若检测到有键按下 延时10ms避开抖动的影响 查询是哪一键被按下并执行相关的操作 然后再用软件查询等待按键的释放 当判明键释放后 用软件延时10ms后再返回 第二次延时的作用是 一方面避开按键释放时触点抖动的影响 另一方面也具有防连击的功能 该软件对两个以上的键被同时按下 串键 具有判低序号按键有效的功能 ***式键盘接口软件流程图 上例cpu经常处于空扫描状态 为进一步提高cpu效率 可采用中断工作方式 即只有当键盘中有键被按下时 才执行扫描工作 下图为采用中断方式处理 只按键的接口电路图 一 ***式键盘接口电路及程序设计 当无键按下时 条测试线均为高电平 经 与非门及反相器后仍为高电平 不会产生中断 当其中任一键按下时 int0变为低电平 向8031申请中断 8031响应后便进入中断服务程序 然后用扫描方法寻找到申请中断的功能键并执行相应功能处理程序 一 ***式键盘接口电路及程序设计 org0000h ajmpmain 上电后转主程序org0003h 外部中断0入口 ajmpkeyjmp 指向中断服务程序org0100hmain setbit0 选择边沿触发方式 setbex0 允许外部中断0 setbea 允许cpu中断 movdptr ef00h 送8155命令口地址 mova 02h movx dptr a 控制字写入here ajmphere 模拟主程序 当其中任一键按下时 int0变为低电平 向8031申请中断 8031响应后便进入中断服务程序 用扫描的方法寻找到申请中断的功能键并执行相应键功能处理程序 能完成上述工作的程序清单如下 org0120h 中断服务程序keyjmp movr3 08h 设循环次数 movdptr 0ef01h 送a口地址 movr4 00h 计数器清零 movxa dptr 读入按键状态keyad1 rrca 状态字右移一位 jnckeyad2 c 0 转keyad2 incr4 计数器加1 djnzr3 keyad1keyret retikeyad2 movdptr jmptbl mova r4 rla jmp a dptr 转相应功能处理jmptbl ajmpsb0 入口地址表 ajmpsb1 ajmpsb2 ajmpsb3 ajmpsb4 ajmpsb5 ajmpsb6 ajmpsb7 sb0 s0键功能程序 jmpkeyret s0键执行完返回sb1 s1键功能程序 jmpkeyret sb7 s7键功能程序 jmpkeyret 二 矩阵式键盘接口电路及程序 当采用矩阵式键盘时 为了编程方便 应将矩阵键盘中的每一个按键按一定的顺序编号 这种按顺序排列的编号叫顺序码 也称键值 为了求得矩阵式键盘中被按下键的键值 常用的方法有行扫描法和线路反转法 线路反转法识别键值的速度较快 但必须借助于可编程的通用接口芯片 本节介绍两种键盘接口电路及控制软件 一种是采用编程扫描工作方式的行扫描法来识别键值 另一种是采用中断工作方式的线路反转法来识别键值 二 矩阵式键盘接口电路及程序 1 行扫描法 该图为4 8矩阵键盘与单片机接口电路 8155的端口c工作于输出方式 用于行扫描 端口a工作于输入方式 用来读入列值 由图可知 8155的命令 状态寄存器 端口a 端口b和端口c的地址分别为0100h 0101h 0102h和0103h 采用编程扫描工作方式的行扫描法步骤如下 1 判是否有键按下 使端口c所有的行输出均为低电平 然后从端口a读入列值 如果没有键按下 读入值应为ffh 如果有键按下 则不为ffh 2 若有键按下 则延时10ms 再判断是否确实有键按下 3 若确实有键按下 则求出按下键的键值 其实现方法是对键盘进行逐行扫描 即先令pc0为0 读入列值 若列值等于ffh 说明该行无键按下 再令pc1为0 对下一行进行扫描 若列值不等于ffh 说明该行有键按下 求出其键值 求键值时要设置行值寄存器和列值寄存器 每扫完一行 若无键按下 则行值寄存器加上08h 若有键按下 行值寄存器保持原值 转而求相应的列值 求列值的方法是 将列值右移 每移位一次列值寄存器加1 直至移出位为低电平为止 最后将行值和列值相加即得键值 若需要十进制键值 可进行daa修正 4 为保证按键每闭合一次cpu只做一次处理 程序需等闭合的键释放后再对其做处理 org0200h keypr movdptr 0100h 8155初始化 mova 0ch movx dptr a 控制字写入 movr3 00h 列寄存器清零 movr4 00h 行寄存器清零 acallkexam 检查有无键按下 jzkend 无键按下返回 acalld10ms acallkexam 再次检查有无键按下 jzkend movr2 0feh 输出使x 0为0 key1 movdptr 0103h 送c口地址 mova r2 movx dptr a 扫描某一行 movdptr 0101h 送a口地址 movxa dptr 读列值模型 cpla anla 0ffh jnzkey2 有键按下 求列值 mova r4 无键按下 行 8 adda 08h movr4 a mova r2 求下列为低电平模型 rla movr2 a jbacc 4 key1 判是否已全扫描 ajmpkend key2 cpla 恢复列模型 key3 incr3 rrca jckey3 key4 acalld10ms acallkexam jnzkey4 等待键释放 mova r4 计算键值 adda r3 movbuff a 键值存入buff kedn ret buff equ30h d10ms movr5 14h 延时子程序 dl movr6 0ffh dl0 djnzr6 dl0 djnzr5 dl ret kexam movdptr 0103h 检查是否有键按下子程序 mova 00h movx dptr a movdptr 0101h movxa dptr cpla anla 0ffh ret 二 矩阵式键盘接口电路及程序 2 线路反转法 这种方法需要采用可编程的输入 输出接口8255 8155等 若采用单片机 也可直接与单片机的i o口相接 下面 键盘电路为例来说明线路反转法的原理 交互式键盘的控制程序一般都采用查询方式 为了编程方便 对键盘中的按键进行了编码 每个按键安排了一个2位数的扫描码 其第一位数代表该键所位于的列线号 第二位数代表该键所位于的行线号 轮流使某一i o端口线为输出 输出低电平 并记录其对应的列线号为i 同时让其他i o端口线为输入 以判别对应列中的按键是否有键按下 若有键按下就记录对应的行线号j 则可根椐记录的i j求出按下键的扫描码 其值为kd i 10h j 具体实现程序略 一 直接分析法 直接分析法就是根据当前按键的键值 把控制直接分支到相应处理程序的入口 而无须知道在此之前的按键情况 图3 10显示出用直接分析法设计的键盘分析程序的典型结构 直接分析法的核心是一张如图3 11所示的一维转移表 转移表内登记各处理程序的入口 根据键值查阅转移表 即可获得相应的处理程序入口 一 直接分析法 简单多义键的分析程序仍可采用直接分析法 但这时要用多张转移表 在组成一个命令的按键序列中 前几个按键起着引导的作用 把控制引向某张合适的转移表 基于上述思想的分析程序框图可用图3 12来说明 图中 a b两键为双义键 mode键用来把控制方向引向转移表2 以区别a键 b键的两种含义 二 状态分析法 直接分析法的优点是简明直观 缺点是命令的识别和处理程序的执行交错在一起 相互牵制 层次不清楚 当采用多用键 复用次数较多时 这一矛盾尤其突出 用状态分析法可以克服这些缺点 状态分析法将键盘分析程序作为时序系统 在一定的条件下系统可以处于某种状态 当条件改变后 它的状态可以发生变迁 即从一个状态变到另一个状态 如果把键盘输入作为分析程序的输入条件 每当一个按键按下时 分析程序将根据它的现行状态和输入条件 决定产生何种相应动作以及变迁到哪一个新状态 在不同的状态下 同一按键又可能会具有不同的含义 引入状态概念后 只需开辟存储单元 记忆 当前状态 不必记住以前按键的情况 就能对当前按键的含义做出正确的解释 简化程序设计 二 状态分析法 一般来说 状态分析法可分为以下四步进行 1 用状态图准确表述按键操作序列的定义 2 由上述状态图导出的状态表 状态表状态表是键盘分析程序的核心 3 固化状态表 为了让微处理器能使用状态表 应将其转变成可供微处理器查询的形式 4 设计键盘分析程序的设计 二 状态分析法 为了便于理解 下面以某一种函数发生器为例说明状态分析法具体实施步骤 某函数发生器面板按键布局示意图 二 状态分析法 1 用状态图准确表述按键操作序列的定义 二 状态分析法 2 由上述状态图导出的状态表 状态表状态表是键盘分析程序的核心 详细内容见表3 2 二 状态分析法 表中fnkey一栏中所采用按键的编码是功能键码 而不是顺序码 键值 这样做是为了缩小程序中状态表的规模 按键的键值与功能键码的关系如表3 3所示 10个数字键属于同一性质 用fnky为1代表 为了区别不同的数字键 又定义了数字键码numb 二 状态分析法 3 固化状态表 为了让微处理器能使用状态表 应将其转变成可供微处理器查询的形式 详细内容见表p73 74 为了让微处理器能使用状态表 按一定的格式将表3 2构造成三张表 主表 仪器操作状态表 状态表入口地址表和处理子程序入口地址表 主表 状态表入口地址表 处理子程序入口地址表 二 状态分析法 4 设计键盘分析程序的设计 3 2led显示及接口 3 2 1led显示原理3 2 2七段led显示及接口3 2 3点阵led显示及接口 led即发光二极管 它是一种由某些特殊的半导体材料制作成的pn结 由于参杂浓度很高 当正向偏置时 会产生大量的电子 空***复合 把多余的能释放变为光能 led显示器具有工作电压低 体积小 寿命长 约十万小时 响应速度快 小于1 s 颜色丰富 红 黄 绿等 等特点 是智能仪器最常使用的显示器 3 2 1led显示原理 led的正向工作压降一般在1 2v 2 6v 发光工作电流在5ma 20ma 发光强度基本上与正向电流成正比 故电路须串联适当的限流电阻 led很适于脉冲工作状态 在平均电流相同的情况下 脉冲工作状态比直流工作状态产生的亮度增强20 左右 led显示器有单个 七段和点阵式等几种类型 一 单个led显示器 二 七段led显示器 三 点阵式led显示器 3 2 1led显示原理 一 单个led显示器 单个led显示器常用于显示仪器的状态 图3 16为单个led显示器接口电路 仪器内微处理器经数据总线d0 d7输出待显示的代码 送至输出接口 设输出端q0为低电平 则对应的led显示器正向导通并发亮 反之则熄灭 74ls374作为输出口最多驱动八个led显示器 表示仪器的八个状态信息 3 2 2七段led显示及接口 七段led显示器由多个led组成一个阵列 并封装于一个标准的外壳中 为适用于不同的驱动电路 有共阳极和共***极两种结构 七段led显示器可组成0 9数字和多种字母 这种显示中还提供有一个小数点 所以实际共有八段 3 2 2七段led显示及接口 为了显示某个数或字符 就要点亮对应的段 这就需要译码 译码有硬件译码和软件译码之分 硬件译码显示电路见图3 18所示 bcd码转换为对应的七段字型码 简称段码 这项工作由七段译码 驱动器74ls47完成 硬件译码电路的计算机开销时间较小 但硬件开支大 软件译码显示电路见图3 19所示 与硬件电路相比 软件译码显示电路省去硬件*** 其译码工作由软件来完成 微处理器有较强的逻辑控制能力 采用软件译码并不复杂 采用软件译码不仅可使硬件电路简化 而且其译码逻辑可随编程设定 不受硬件译码逻辑的*** 所以智能仪器使用较多的是软件译码方式 硬件译码显示电路 共阳极接法 软件译码显示电路 共***极接法 硬件译码显示电路 共阳极接法 软件译码显示电路 共***极接法 0 1 2 3 4 5 6 7 abcdefgep 5v 11000000c0h 11111001f9h 10100100a4h 10110000b0h 软件译码法 bcd码 七段显示代码 0 9的七段显示代码 c0h f9h a4h b0h d7 d0 共阳极接法为例 led显示器字段码表 3 2 2七段led显示及接口 3 2 2七段led显示及接口 七段led显示系统有静态显示和动态显示之分 在静态显示系统中 每位显示器都应有各自的锁存器 *** 采用软件译码时***可省去 以锁存各自待显示数字的bcd码或反码 因此 静态显示系统的每次显示能够保持不变 仅在待显数字需要改变时 才更新其锁存的内容 其优点是占用机时少 显示稳定可靠 缺点是当显示的位数较多时 占用i o口较多 在动态显示系统中 微处理器或***应定时地对各个显示器进行扫描 显示器件分时轮流工作 其优点是硬件少 占用i o口少 缺点是占用机时长 只要不执行显示程序 就立刻停止显示 随着大规模集成电路的发展 目前已有采用硬件对显示器进行自动扫描的专用显示芯片 使电路既简单又少占用机时 一 静态显示接口电路及显示程序举例 org8000hdisp movr1 30h r1存小数点信息 movr0 31h r0指向显缓单元 movr2 04h r1指示循环次数 movdptr 4000h 显示地址送dptrloop mova r0 取数进行译码pushdph pushdpl movdptr seg movca a dptr 取对应段码 bit3 r1 判小数点位 jnzl1 anl7fh 小数点位处理l1 popdpl popdph movx dptr a 段码送显 incr0 调整 incdptr 调整 mova r1 r1左移一位 rla movr1 a djnzr2 loop 显示是否完成 retseg db0c0h 0f9h 0a4h 0 1 2 db0b0h 99h 92h 3 4 5 db82h 0f8h 80hh 6 7 8 db90h 0ffh 0bfh 9 空 二 动态扫描显示接口电路及显示程序举例 dis movr0 30h r0指向显缓 movr2 20h r2存位选码dis1 mova r0 取数进行译码 movdptr seg movca a dptr 取段码movdptr 0fd01hmovx dptr a 段码送a口mova r2 incdptr movx dptr a 位选码送b口 acalldims 延时3 5ms mova r2 jbacc 0 dis2 是否显示完毕 incr0 未完 取下位 mova r2 rra 下位位选码 movr2 a ajmpdis1dis2 retdims movr3 70h 延时子程序dl1 nopdjnzr3 dl1retseg db3fh 06h 5bh 4fh 0 1 2 3 db66h 6dh 7dh 07h 4 5 6 7 db7fh 6fh 77h 7ch 8 9 a b db39h 5eh 79h 71h c d e f 在静态显示方式下 led显示器各显示段的工作电流是恒定的 在动态显示方式下 led显示器各显示段的工作电流是脉动的 因此 后者脉动工作电流的幅值应远大于前者恒定工作电流的幅值 设前者的恒定电流为8ma 考虑脉动工作电流情况下发光效率优于恒定电流的情况 则六位动态显示方式下的段驱动工作电流应为38ma 8 0 8 6 对于位驱动电路来说 它必须能负载一个数字显示器各个显示段工作电流的总和 所以它的最大位驱动脉动负载电流应约为300ma 但由于位驱动是分时多路工作 所以它的最大平均负载电流为50ma 在动态显示系统中 一位数字的显示持久时间不允许超过其额定值 更不允许系统长久地停止扫描刷新 否则 某一个数字显示器和位驱动电路将因长时间流过较大的恒定电流而被损坏 同时 动态显示方式所能容许的显示数字的个数是有限的 一般n 16 这是由于显示系统所能容许最大脉动工作电流是有限的 而静态显示方式无上述*** 3 2 3点阵led显示及接口 点阵式led显示器是以点阵格式进行显示 因而显示的符号比较逼真 这是其优越之处 之处是接口电路及控制程序较复杂 5 7点阵字符显示器由35只led显示单元排成5列 7行矩阵格式 结构如图示 每一行上的五个led是按共阳极连接的 每一列上的七个led按共***极连接 例若显示字母 a 可将图示的字形代码 或称列码 并行依次送入 同时分时依次选通对应列 只要不断地重复进行 便可在显示器上得到稳定的显示字符 a 图中字符rom中存放着所有被显示字符的字形代码 是一个很关键的部件 其地址线分别接系统的数据线和五分频计数器的输出端 其数据线接到点阵显示器的7条行线上 五分频计数器的输出端同时接到字符rom的低位地址线上和显示器的***上 用做两者的同步信号 为方便编程 字符rom中存放的字符的字形码是按ascii码表的顺序存放的 并且每组字形码首地址的高七位 a3 a9 与该字符的ascii码一致 这样 只要向显示rom进行一次某字符的ascii码的写入操作 便可启动该字符的显示 3 3键盘 led显示器接口设计 基于软件扫描的键盘和led显示器的接口方法需要占用cpu很多时间 并且接口电路也较烦杂 为了减少这些开销 一些公司设计开发了许多通用型的可编程键盘和led显示器专用控制芯片 例intel8279 hd7279a bc7280 81等 这些芯片内部一般都含有接口 数据保持 译码和扫描电路等 单个芯片就能完成键盘和显示器接口的全部功能 本节以hd7279a为例介绍这类专用控制芯片的应用技术 hd7279a是一种能同时管理8位共***极led显示器 或64个单个led发光管 和多达64键键盘的专用智能控制芯片 基于hd7279a的键盘 led显示器接口电路 3 4crt显示及接口 crt显示器图文并茂 显示功能强 是一种完善的显示器 crt显示器体积大 价高 主要用于必须显示图形和表格的大中型仪器中 例如 数字示波器 逻辑分析仪 频谱仪等 crt显示器可分光栅扫描式和随机扫描式两种类型 光栅扫描式与电视的扫描方式相同 又称电视式 该方式还可进一步分为字符工作模式和图形工作模式 光栅扫描显示器控制灵活 并且可以生成多种色彩高逼真度的图形 光栅扫描显示器的应用范围正越来越广 随机扫描式与示波器的扫描方式相同 又称示波器式 随机扫描显示器划线速度快 分辨率高 但较难生成多种辉度和色彩 3 4 1光栅扫描crt字符显示系统 一 光栅扫描crt字符显示原理 光栅扫描包括行 水平 扫描和帧 垂直 扫描 由视频信号控制的电子束 在行扫描偏转信号和帧扫描偏转信号的共同作用下 从左上角开始作横过荧光屏的水平扫描 当电子束到达荧光屏的右端时被消隐 并返回左上角的起始端 然后进行下一行的横向扫描 行扫描过程在垂直偏转信号的作用下 从上到下扫过整个屏幕 当电子束扫到右下角时又被消隐并返回左上角的起始端 开始下一帧的扫描过程 字符是以点阵的形式显示在屏幕上的 在上述电子束扫描过程中 含有字符信息的点阵码 视频信号 控制着电子束的强弱 使屏幕中各像素点或以亮点或以黑点的方式出现 使屏幕出现待显的字符信息 光栅扫描crt字符显示系统框图 显示缓冲存储器 简称显示ram 提供一帧所需要的全部字符信息 保存字符的ascii码字符发生器 通常称字符rom 储存各字符点阵信息 从显示ram中读出字符的ascii码送到字符rom作为字符rom的地址 从字符rom中取出的是该字符的点阵码 并行比特 并 串移位寄存器 把并行比特代码转换成串行比特代码输出混合电路 使串行码与水平垂直同步信号混合 形成视频输出 为了保持显示稳定 系统一般以50 60hz的速率循环调用待显字符点阵码反复对crt进行扫描 上述crt点阵字符显示与led点阵字符原理相近 若crt点阵字符采用5 7点阵 为了使字列字行之间留有一定的间隔 下方多空一点行 以备画点划线之用 每个字符实际占用7 10点阵 crt点阵字符显示与led点阵字符显示过程存在着很大区别 led字符显示是逐字显示 crt字符显示是电视式逐行扫描方式 因而 其显示顺序是自左而右显示出每一排文字各个字符的同一点行 若字符采用7 10点阵 则扫描10行之后 第一排文字才能被完整扫描显示 其扫描过程如图3 30所示 一 光栅扫描crt字符显示原理 设屏幕含25个字符行 25 10 250点行 每字符行含80个字符 80 7 560点 则每帧含25 80 2000字符 250 560 14万显示点 即显示ram应有2kb的容量 二 双行缓冲器工作方式 若帧频取50hz 则显示ram向字符发生器每秒要传输50 80 25 1000000个字符 需要用dma方式传输 为了保证系统能连续工作 显示ram读出普遍采用双行缓冲工作方式 显示ram的双行缓冲方式的工作示意图如下 三 系统的定时 crt中各个字符显示的位置应与显示ram中字符ascii码的地址严格一一对应 这需要系统的定时电路给予保证 定时电路由字时钟 点时钟 字符计数器 点行计数器 字行计数器等组成 定时系统示意图如下 四 crt显示电路的组成 为方便设计 许多厂家已制作了许多专供控制crt显示器用的大规模集成
温馨提示:
1. 文档收藏网仅展示《一、 ***式键盘接口电路及程序设计》的部分公开内容,版权归原著者或相关公司所有。
2. 文档内容来源于互联网免费公开的渠道,若文档所含内容侵犯了您的版权或隐私,请通知我们立即删除。
3. 当前页面地址:https://doc.bogoing.com/doc/6b6010ad0cb827ad.html 复制内容请保留相关链接。