资源描述:
《《外部设备接口》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章外部设备接口人机交互设备种类输入设备键盘鼠标触摸屏扫描仪…输出设备显示器(CRT、LED、液晶显示)打印机绘图仪…9.1键盘接口键盘的概念由8个开关构成的键盘(也称为线性键盘)为了减少键盘的输入输出连线数,常用开关矩阵的方式来构造键盘,称为矩阵键盘键盘的类型编码键盘提供按下键的ASCII码。具有去抖动、防重(串)键等功能。响应快,但硬件复杂。非编码键盘只提供按下键的行列位置。由软件完成去抖动、防重键等功能。硬件简单,但占用CPU的时间。按键开关的类型触点式开关机械式无触点式开关电容式开关利用电容值的变化霍尔效应式开关磁场变化,导致霍尔效应器件产生电压变化按键开关的类型
2、导电橡胶式键盘塑料薄膜式键盘键盘接口功能消抖动防串键按键识别键码生成1.消抖动抖动时间一般为5~20ms读取键状态时应避开抖动区间消抖动的方法加入硬件消抖动电路判断有键按下后,延时5~20ms,再读取键值2.防重键重键多个键同时按下或前一按下键没有释放又有新键按下解决方法双键锁定当检测到有两个或两个以上的键按下时,最后释放的键认为是有效键N键轮回当检测到有多个键按下时,按扫描顺序依此读出相应的键值……3.按键识别两种典型的按键识别方法行扫描法对键盘的各行依此输出扫描码,读入各对应的列值,确定按下键的位置行列倒换法(线反转法)从键盘的行输出扫描码,读入列值,再将该列值从列输出
3、,读入行值,即可确定按下键的位置4.键码生成根据按下键的行列位置,查表即可得到按下键的键码。行扫描法PA(Out)PB(In)0001101有“0”键按下延时110111110111110111101端口A:40H端口B:41H控制口:43H行扫描法汇编程序(1)moval,82h;A口输出out43h,al;B口输入begin:moval,00hout40h,al;00→A口wait:inal,41h;读B口andal,0fhcmpal,0fhjzwaitmovcx,7fffh;有键按下lp0:looplp0;延时st:movbl,3;行数movbh,4;列数moval
4、,0feh;扫描码movcl,0fhmovch,0ffh;键值-1l1:out40h,alrolalmovah,al;保存下一扫描码inal,41handal,clcmpal,cl;有无列线为0?jnzl2行扫描法汇编程序(2)addch,bh;指向末列键号moval,ah;取新扫描码decbljnzl1jmpbegin;重新扫描l2:incch;本行首列键号rcraljcl2moval,ch;AL=键号标准键盘适用于PC/XT机,83键键盘内置Intel8048单片机8位CPU、1k字节ROM、64字节RAM、8位定时/计数器、2个8位并口16行×8列矩阵键盘电容开关非编
5、码键盘,向主机提供8位扫描码b7=0,表示接通的扫描码b7=1,表示断开的扫描码扩展键盘适用于PC/AT、386+,84、101、102或104键键盘内置Intel8042/8742单片机8位CPU、1k字节ROM、2个8位并口16行×8列矩阵键盘扩展键盘与标准键盘的扫描码是不一样的,是互不兼容的。PC机键盘接口电路PB6=1、PB7=0PC机键盘的工作过程键盘电路正常工作时8048采用行列扫描法不断地扫描键盘矩阵当有键动作时,则在确定按键位置之后以串行数据形式发送给系统板键盘接口电路键按下时,发送该键的接通扫描码键松开时,发送该键的断开扫描码若一直按住某键,则连续发送该键
6、的接通扫描码键位置和扫描码Esc018110282234=0-QAZSWPLM,03040510111E1F2C83848590919E123451112131617253031394450519FAC键位置接通扫描码断开扫描码键名称键盘接口电路的处理过程移位寄存器每收到一个8位的扫描码后,发出IRQ1中断请求,CPU响应中断后,从8255A口读取扫描码,转换为ASCII码,放入键盘缓冲区。INT9H(硬件中服程序)INT16H(ROMBIOS)扫描码AX键盘缓冲区应用程序键盘缓冲区可缓存15个键码在应用程序中可使用BIOS中的INT16H访问键盘缓冲区9.2LED数码管
7、接口基本概念发光二极管LED是最简单的发光器件LED数码管是由7(或8)个LED组成LED数码管广泛用于数字系统中bcdefgdotdotga+5Vdotga共阴极共阳极a1位LED数码管的显示dotg+5V共阳极feabcd74LS373OEG300HD0~D7HD0D7bcdefgdota锁存器9.3CRT显示器接口阴极射线管CRT优缺点:(1)价格低(2)画质高(3)体积大(4)易产生辐射(长时间使用可能对眼睛有害)CRT显示原理(1)逐行扫描过程CRT显示原理屏幕上的字符是由点阵构成,可由5x7或7x9点阵