计算机控制第三章,键盘,LED_第1页
计算机控制第三章,键盘,LED_第2页
计算机控制第三章,键盘,LED_第3页
计算机控制第三章,键盘,LED_第4页
计算机控制第三章,键盘,LED_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机控制技术

——第三章人机交互接口技术一、键盘接口(一)概述

键盘是由一组按钮开关——键(一般为常开型)的组合,是计算机的输入设备,为计算机系统普遍使用的人机交互设备。用户通过键盘可以向CPU输入数据、地址和命令等。键盘按其结构形式可分为:独立式和矩阵式。键盘按功能可分为:编码式键盘和非编码式键盘两类。编码键盘能自动识别按下的键和提供该键所代表的信息代码,并以并行或串行信号输给CPU。键盘电路中设有专用的键盘编码器,并具有防抖和解决重键的功能。功能强,响应快,结构复杂。非编码键盘是一种便宜而广泛用于单片机系统的输入设备。这种键盘通常采用软件的方法,扫描键盘是否有键被按下,并用计算或查表的方式得到该键的键值,然后再送给CPU。键的功能分为字符键和控制键。键盘设计时需主要解决的以下几个问题:①按键的识别(按键的有无和位置);②重键和连击的处理;按键抖动信号波形③如何消除键的抖动(硬件和软件消抖方法):(二)少量功能键的接口技术

即独立式非编码键盘在控制对象比较专一,控制功能简单时,需要按键较少,可用独立式键盘接口。独立接口方式,每个按键接一根输入线,各键的工作状态互不影响。采用硬件中断或软件查询的方法实现其键盘接口。电路简单,占用I/O口线较多,键盘处理程序较简单。可直接用单片机的I/O口或用8155、8255并行I/O接口芯片。如下图的八功能键中断方式接口电路:主程序如下:ORG0000HAJMPMAIN;上电后自动转向主程序ORG0003H;外部中断0入口地址AJMPKEYJMP;指向键处理中断服务程序ORG0100HMAIN:SETBIT0;选择边沿触发方式SETBEX0;允许外部中断0SETBEA;允许CPU中断MOVDPTR,#0EF00H;指向8155命令口MOVA,#02H;控制字MOVX@DPTR,A;控制字写入命令寄存器HERE:AJMPHERE;模拟主程序中断服务程序为:ORG0200HKEYJMP:MOVR3,#08H;设循环次数MOVDPTR,#0EF01H;指向8155A口MOVR4,#00H;计数寄存器清零MOVXA,@DPTR;读入状态字KYAD1:RRCAJNCKYAD2;PA0=0,转向KYAD2INCR4;计数器加1DJNZR3,KYAD1RETIKYAD2:MOVDPTR,#JMPTABLMOVA,R4RLAJMP@A+DPTR;转到响应功能键入口地址表指针JMPTABL:AJMPSB0;分别转到8个功能键响应入口地址

AJMPSB1………AJMPSB7键盘矩阵结构示意图(三)矩阵非编码式键盘工作原理矩阵式键盘实际上是由排列成矩阵形式的一系列按键开关组成,下图所示。常应用于按键数目比较多的系统中。

矩阵键盘与微机的连接,常采用I/O接口芯片,如8255、8155等。非编码式键盘处理程序,关键是如何识别按键键码。采用“扫描”的方法,过程步骤是:(1)测试有无键按下,包括消抖;(2)行(列)扫描法寻找按键位置,计算键值;(3)等待键释放,运行相应的键处理程序。扫描方法又分为几种,主要有行扫描法,线反转法

1。程控扫描法 下图用8255A连接的4×8键盘。通过某行线发出低电平信号,如果该行线所连接的键没有按下的话,则列线所接的端口得到的是全“1”信号,如果有键按下的话,则得到非全“1”信号。为了防止双键或多键同时按下,往往从第0行一直扫描到最后1行,若只发现1个闭合键,则为有效键,否则全部作废。找到闭合键后,读入相应的键值,再转至相应的键处理程序。软件程序流程图见后面。程控扫描法程序流程图实例键盘接口电路采用8155的键盘接口电路

下面的程序是用行扫描法进行键扫描的程序,其中KS1为判键闭合的子程序。有键闭合时(A)=0。DIR为数码显示器扫描显示子程序,执行一遍的时间约6ms。程序执行后,若键闭合,键值存入A中,键值的计算公式是:键值=行号×8+列号;若无键闭合,则A中存入标志FFH。KEY1:LCALLKS1;检查有无闭合键

JNZLK1;(A)=0,有键闭合则转

LJMPKEY1;无闭合键则返回LK1:LCALLT12MS;延时12msLCALLKS1;清抖,再检查有键闭合否?JNZLK2;有键闭合则转

LJMPKEY1;无键闭合则返回LK2:MOVR4,#00H;首列号初值送R4MOVR2,#0FEH;首行扫描初值字送R2LK4:MOVDPTR,#0101H;指向8155口AMOVA,R2;行扫描值送AMOVX@DPTR,A;扫描1行

INCDPTRINCDPTR;指向8155口CMOVXA,@DPTR;读入列值

JBACC.0,LONEMOVA,#00HLJMPLKPLONE:JBACC.1,LTWO MOVA,#08H;(A)为行号值

LJMPLKPLTWO:JBACC.2,LTHR MOVA,#10H LJMPLKPLTHR:JBACC.3,NEXT MOVA,#18HLKP:ADDA,R4;行号和列号值相加和得到键值

PUSHACCLK3:LCALLKS1 JNZLK3 POPACC RETNEXT:INCR4MOVA,R2 JNBACC.7,KND RLA MOVR2,A LJMPLK4KND:LJMPKEY1KS1:MOVDPTR,#0101H;判键子程序

MOVA,#00H;全扫描信号

MOVX@DPTR,A;发全扫描信号

INCDPTRINCDPTR;指向8155口CMOVXA,@DPTR;读入列值

ANLA,#0FHORLA,#0F0H;高4位取“1”保持低4位

CPLA ;取反,无键按下则(A)=全“0”RET2、定时扫描法由CPU隔一定时间执行键盘扫描程序一次。3、中断扫描法中断扫描方式原理图见下图按键时由外部中断0向CPU中断申请,CPU开始执行键盘扫描程序一次,大大提高计算机的工作效率。4、线反转法二、LED显示接口技术(一)概述常见显示器有:CRT显示器;LED显示器;LCD显示器。各自的特点、应用在嵌入式单片机系统中,主要应用的是LED显示器和LCD显示器,我们本课程主要介绍LED数码管显示器

LED显示器常见有:七段“8”字型LED数码管;14段“米”字型LED数码管;m×n矩阵式显示器制造材料的不同,可发出红、黄、蓝、紫等颜色,使LED显示器有单色和彩色之分。 (二)LED数码管的结构及显示原理七段LED数码显示器各段码位的对应关系如下:(a段为最低位,dp点为最高位)LED显示字形编码表:(当然还能显示其它一些字母、符号等)单片机与1位LED数码管的连接,有位选线和段选线之分(三)LED数码管的显示方式和接口1、多位LED数码管的显示方式 静态显示动态显示多位LED的显示,每位LED数码管有位选线和段选线两种显示方式的各自特点:静态显示方式,各位显示相对独立,各位显示需经8位锁存器锁存字型码,编程简单,管理容易,占用口线较多(尤其在显示位数很多时)。亮度较动态显示的大。动态显示占用口线较少,线路简单,但程序复杂,微机必须不断地执行显示程序,才能保持LED的显示,占用CPU机时较多,不宜应用于工业控制等复杂控制系统中。(3)接口注意问题:锁存、驱动、译码、限流等问题按译码方法的不同分为软件译码和硬件译码现成的集锁存器、译码器、驱动器和显示器四位一体的显示器件较多。动态和静态的LED显示接口电路又有并行和串行接口2、动态显示的串行接口电路

串行口工作于方式0,用了串入并出的移位寄存器74LS1643、动态显示及其接口电路目前国内的许多单片机开发系统和仿真器均采用LED的动态显示。以下着重讲解并行接口动态显示电路及程序设计。一个典型实例见下图,它为常用的并行6位动态显示电路,6位LED均连接为共阴显示方式。74LS07为6位驱动器,七段LED数码管需用2片进行驱动。75452为2位缓冲器/驱动器,有反相驱动作用,6位LED需用3片提供位选信号。动态显示亮度除与导通电流有关外,还与点亮时间占空比例有关(如位数多时亮度降低)。用8155的PA口输出8位字型码,6位PB口线输出位选码。设显示缓冲区为地址30H~35H。用软件译码的方式查表字型码。读后面的程序流程图和相应的程序动态显示子程序清单如下:ORG3000HDISPLY:MOVA,#03H;设置8155A、B口均为输出方式MOVDPTR,#0FD00HMOVX@DPTR,AMOVR0,#30H;显示缓冲区地址送R0MOVR2,#20H;位选码指向最左一位DISPY1:MOVA,@R0;取出要显示的数MOVDPTR,#SEGTAB;指向换码表首址MOVCA,@A+DPTR;取出显示码MOVDPTR,#0FD01H;从8155A口输出显示码MOVX@DPTR,AMOVA,R2;从8155B口输出位选码INCDPTRMOVX@DPTR,AACALLD1MS;延时1msMOVA,R2JNBACC.0,DISPY2;6位都显示完了吗?未完,继续显示RETDISPY2:INCR0;求下一位待显示的数的存放地址

MOVA,R2:求下一个位选码

RRCA MOVR2,A AJMPDISPY1D1MS:MOVR3,#7DH;延时1msDL1:NOPNOP DJNZR3,D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论