计控第4章人机交互技术

上传人:biao****biao 文档编号:243132741 上传时间:2024-09-16 格式:PPT 页数:38 大小:864KB
返回 下载 相关 举报
计控第4章人机交互技术_第1页
第1页 / 共38页
计控第4章人机交互技术_第2页
第2页 / 共38页
计控第4章人机交互技术_第3页
第3页 / 共38页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,4,章 人机交互技术,4,.1,键盘接口设计,4,.2 LED显示器接口设计,4,.3 LCD显示器接口设计,4,.4,触摸屏技术,4,.5,打印机接口设计,第,4,章 单片机的人机交互技术,人机交互是指操作人员与计算机之间进行的现场或远程信息交换与联系。用于人机交互的设备称为人机接口,这些设备主要有键盘、显示器和打印机等。一般的计算机控制系统必须要有人机交互功能,以便操作人员可以随时输入数据传递生产命令,并通过显示和打印功能及时掌握生产情况。,对于简单的应用场合,由于单片机本身就是一个最小的应用系统,因此能直接满足实际应用所要求的功能,充分发挥单片机硬件结构紧凑、设计简单、成本低的优点。当设计一些较为复杂的测控系统时,其自身的功能往往不能够满足应用的需要,此时可利用单片机强大的外部扩展功能,扩展各种外围电路以补充片内资源的不足,适应特定应用的要求。,概 述,键盘是若干按键的集合,是向系统提供操作人员干预命令及数据的接口设备。键盘可分为编码键盘和非编码键盘两种。,编码键盘能够由硬件逻辑自动提供与被按键对应的编码。此外,一般还具有去抖动和多键、窜键保护电路,这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。,非编码键盘只简单地提供行和列的矩阵,其它工作都靠软件来完成,由于其经济实用,目前在单片机应用系统中多采用这种办法。,4.1,键盘接口设计,1,、在设计键盘接口时,解决以下几个问题:,检测是否有键按下;,去抖动,若有键按下,判定是哪一个键;,确定被按键的读数;,不管一次按键持续的时间有多长,仅采用一个数据;,处理同时按键。,510ms,510ms,100ms,按键过程,前跳沿,后跳沿,键闭合,2,、独立式连接的非编码键盘,()查询方式,()中断方式,8031,INT,0,INT,1,&,P,1,.,0,P,1,.,1,P,1,.,2,P,1,.,7,8031,+5V,P,1,.,0,P,1,.,1,P,1,.,2,P,1,.,3,P,1,.,4,P,1,.,5,P,1,.,6,P,1,.,7,为了识别键盘上的闭合键,通常采用两种方法,一种为,扫描法,,,另一种称为,线反转法,。,扫描法,原理:,CPU,每次使并行,输出端口的某位为零,,而其它位为,1,,然后,CPU,只要读取输入端口中的,数据,就可判别。,3,、矩阵式连接的非编码键盘,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,+5V,8031,P1.6,P1.7,P1.0,P1.1,P1.2,P1.3,P1.5,P1.4,线反转法,5V,PA0,PA1,PA2,PA3,PB0,PB1,PB2,PB3,10k8,原理:,第一步设,A,口输出,B,口输入,A,口输出全,0,值,然后,从,B,口读入;,第二步设,A,口输入,B,口输出,将,B,口刚读入的值输出,再从,A,口读入,9,0,8255A,例:用一位数码管显示,4X4,矩阵键盘按键号名称,0-F,。,#include,#define,uchar,unsigned char,#define,uint,unsigned,int,uchar,code DSY_CODE= 0x3f,0x06,0x5b,0x4F,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00;,/,段码,uchar,Pre_KeyNo,=16,KeyNo=16; /,上次和当前按键的序号,序号范围,015,,,16,表示无按键,/,延时,void,DelayMS(uint,x),uchar,i;,while(x,-),for(i,=0;i40x0f;,switch(Tmp,) /,对,03,行分别附加行首键值,0,,,4,,,8,,,12,case 1:,KeyNo,+=0;break;,case 2:,KeyNo,+=4;break;,case 4:,KeyNo,+=8;break;,case 8:,KeyNo,+=12;,/,主程序,void main(),P0=0x00;,while(1),P1=0xf0;,if(P1!=0xf0),Keys_Scan,(); /,获取键序号,if(Pre_KeyNo,!=,KeyNo,),P0=,DSY_CODEKeyNo,;,Pre_KeyNo,=,KeyNo,;,DelayMS(100);,1.LED,显示技术,4.2 LED,显示器接口设计,在单片机应用系统中,为了便于观察和监视系统的运行情况,经常需要用显示器显示输入信息、中间信息、运行状态及运行结果等数据。目前常用的显示器件有,LED (,发光二极管显示器,),和,LCD(,液晶显示器,),两种。,LED,显示器主要是指由发光二极管组成的数码管显示器或,LED,点阵显示模块。根据公共端的接法不同,,LED,数码管分为共阴极和共阳极二种类型,在使用时,由于,LED,显示器的工作电流通常为,5,15mA,,工作电压为,1.5,2.5V,,因此使用时需加驱动及限流电阻。根据显示方式不同,,LED,显示有静态显示和动态显示之分。,(,1,)静态显示方式,:,每一位显示都占用单独的具有锁存功能的,I/O,接口,显示信号始终存在;,com,端连接在一起;,8051,P1.5,P1.4,P1.3,P1.2,P1.1,P1.0,LE D C B A,g f e d c b a,Dp,g f e d c b a,MC14495,LE D C B A,g f e d c b a,Dp,g f e d c b a,MC14495,+5V,(,2,)动态显示方式,是将所有数码管的,8,个显示笔划,“,a,b,c,d,e,f,g,dp,”,的同名端连在一起,每个数码管的,COM,为各自独立的位选信号,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是哪个数码管会显示出字形,取决于位选信号。,用第,2,章动态显示程序控制显示的方法是,1ms,延时,,CPU,周而复始显示,在实际工程中是不可取的;另外还有一种方法是定时,20ms,扫描一次,在中断服务程序中,将所有数码管显示一次。虽然程序简单,但,CPU,的负担较重,一次循环显示的过程,需要几个毫秒,在这段时间里,CPU,不能做其它事情,否则影响,LED,亮度的一致性。 在一些实时性要求较高的控制系统中,可以采用,1ms,中断显示的方法控制显示,即用单片机内部定时器每隔,1ms,产生一次中断。在定时中断服务程序中更新显示,由于中断显示程序不需要延时,更新一位显示只需要几十微秒,对主程序的影响较小。,例:如第二章例,3,图所示,用定时中断的方式编写控制,4,位显示器动态显示的程序。,位选码输出,段选码输出,#include reg51.h,char code,dispdata, =0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F; /*,数字,0-9,对应的段选码*,/,char,dis_data,=2,4,6,8;,void,disp(unsigned,char ch0)/*,显示函数*,/,static char,ch,=0x01;,P1=,ch,;,P2= dispdatadis_datach0;,ch,=,ch,1;,if (,ch,=0x10),ch,=0x01;,void time (void) interrupt 1 /* T0,中断服务程序入口,定时,1ms */,static unsigned char ch1=0;,TH0=-1000/256;,TL0=-1000%256;,disp(ch1);,ch1+;,if (ch1=0x04) ch1=0;,void,main(void,),TMOD=0x01; /* T0,为,16,位定时工作方式*,/,TH0=-1000/256; /*,预置计数初值 *,/,TL0=-1000%256;,EA=1; /* CPU,中断开放 *,/,ET0=1; /* T/C0,中断开放 *,/,TR0=1; /*,启动,T/C0,开始定时 *,/,while(1); /*,等待中断 *,/,LCD(Liquid,Crystal Display),液晶显示是一种新型的显示技术,它是利用液晶材料的电光效应,(,如加电引起光学特性变化,),的显示器。液晶本身不发光,靠电信号控制环境光在显示部位反射,(,或透射,),而显示。液晶显示具有很多独到的优异特性,比如低压、微功耗、平板型结构、被动型显示、易于彩色化、长寿命等,已经越来越多地应用到各个领域,从智能化仪器仪表、计算机到家用电器都可以看到液晶显示的身影。,4.3 LCD,显示技术,液晶显示器通常把驱动电路集成在一起,形成液晶显示模块,用户可以不必了解驱动器与显示器是如何连接的,使用时只需按照一定的要求向显示模块发命令和写数据即可。,LCD,可分为段式,LCD,、字符式,LCD,和点阵式,LCD,。其中,段式,LCD,和字符式,LCD,只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式,LCD,不仅可以显示字符、数字,还可以显示各种图形、曲线以及汉字、动画,并且有些,LCD,还可以实现屏幕滚动、反转、闪烁等功能,用途十分广泛。,典型芯片,OCMJ,(奥可拉,),中文液晶显示模块,OCMJ,内含,16*,16,点阵的国标一、二级简体汉字和,8*8,点阵及,16*8,点阵的,ASCII,字符,用户输入,GB2312,区位码或,ASCII,码即可实现文本显示。,OCMJ,可实现一般的点阵图形液晶显示功能,提供有位点阵和字节点阵两种图形显示方式,用户可在指定的屏幕位置上以点为单位或以字节为单位(横向)进行图形显示操作。,中文液晶显示模块可以实现汉字、,ASCII,码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。,标准用户硬件接口采用,REQ,和,BUSY,握手协议,简单可靠。提供,10,个用户接口命令代码,编程很方便。,OCMJ,中文显示模块引脚说明,OCMJ(48),中文显示模块命令格式,3F,典型应用(,OCMJ48,),如图为,MCS-51,单片机与,OCMJ48,中文显示模块的接口电路。图中单片机的,P1,口接,OCMJ,模块的,8,根数据线用于数据的传送,,P0.0,、,P0.1,引脚接,OCMJ,模块的,BUSY,和,REQ,作为握手联络信号。,1,)写字节子程序,该子程序采用查询方式对模块进行写操作。,CLR P0.0,;复位,SUB1,:,JB P0.1,,,SUB1,;确信模块空闲(,BUSY=0,),MOV P1,,,A,;向总线送数,NOP,;等待数据总线稳定,SETB P0.0,;置模块,REQ=1,,向模块发请求命令,HE3,:,JNB P0.1,,,HE3,;等待模块响应(,BUSY =1,),CLR P0.0,;撤消,REQ,请求信号,数据输入结束,RET,;返回,2,)写汉字程序段,该程序段显示一个汉字“啊”(区位码为,1601,)。,MOV A,,,#0F0H,;选显示汉字命令字,ACALL SUB1,;调用写子程序,MOV A,,,#02H,;,#02H,,,XX,,屏幕坐标,ACALL SUB1,;调用写子程序,MOV A,,,#00H,;,#00H,,,YY,,屏幕坐标,ACALL SUB1,;调用写子程序,MOV A,,,#10H,;,#10H,,,QQ,,,GB2312,汉字区位码高位,ACALL SUB1,;调用写子程序,MOV A,,,#01H,;,#01H,,,WW,,,GB2312,汉字区位码低位,ACALL SUB1,;调用写子程序,3,)写,168 ASCII,码程序段,该程序段显示一个,168 ASC,码 “,A”,。,MOV A,,,#0F9H,;选显示,168 ASCII,字符命令字,ACALL SUB1,;调用写子程序,MOV A,,,#04H,;,#04H,,,XX,坐标值,ACALL SUB1,MOV A,,,#00H,;,#00H,,,YY,坐标值,ACALL SUB1,MOV A,,,#41H,;,#41H,,,ASCII,字符代码“,A”,ACALL SUB1,4,)绘制一个点(,11,点阵)程序段,MOV A,,,#0F2H,;选显示位点阵命令字,ACALL SUB1,;调用写子程序,MOV A,,,#20H,;,#20H,XX,以,11,点阵屏幕坐标值,X,ACALL SUB1,MOV A,,,#00H,;,#00H,YY,以,11,点阵屏幕坐标值,Y,ACALL SUB1,5,)绘制一横线(,18,点阵)程序段,MOV A,,,#0F3H,;选显示字节点阵命令字,ACALL SUB1,;调用写子程序,MOV A,,,#04H,;,#04H,,,XX,,以,18,点阵屏幕坐标值,X,ACALL SUB1,MOV A,,,#00H,;,#00H,,,YY,,以,11,点阵屏幕坐标值,Y,ACALL SUB1,MOV A,,,#0FH,;为输入字节数据,,1,为黑点,,0,为白点,ACALL SUB1,C51,程序显示“啊”和,“,A”,#include reg51.h,#include ,intrins.h,sbit,LCD_REQ=P00;,sbit,LCD_BUSY=P01;,void,LCD_write(char,cbyte,),LCD_REQ=0; /,复位,while (LCD_BUSY= =1) ;,P1=,cbyte,;,_,nop,_();,LCD_REQ=1;,while (LCD_BUSY= =0) ;,LCD_REQ=0;,void,chinese_disp(char,nx,char,ny,char,nqu,char,nwei,),LCD_write(0xf0);,LCD_write(nx,);,LCD_write(ny,);,LCD_write(nqu,);,LCD_write(nwei,);,void,asc_disp(char,ccom,char,nx,char,ny,char,casc,),LCD_write(ccom,);,LCD_write(nx,);,LCD_write(ny,);,LCD_write(casc,);,void main(),chinese_disp(0x02, 0x00, 0x10, 0x01);,asc_disp(0xf9, 0x04, 0x00, 0x41);,while(1);,4.4.1,触摸屏技术概述,触摸屏,又称为“触控屏”、“触控面板”,是一种可接收触头等输入信号的感应式液晶显示装置,当接触了屏幕上的图形按钮时,屏幕上的触觉,反馈系统,可根据预先编程的程序驱动各种连接装置,可用于取代机械式的按钮面板,并借由液晶显示画面制造出生动的影音效果。 触摸屏作为一种较新的电脑输入设备, 是目前最简单、 方便、 自然的人机交互方式。 从技术原理角度来讲,触摸屏是一套透明的绝对定位系统,其特性是:透明、采用绝对坐标及能检测触摸并定位 。,4.4,触 摸 屏 技 术,4.4.2,触摸屏的分类,从技术原理来区别触摸屏,可分为五个基本种类:矢量压力传感技术触摸屏、电阻技术触摸屏、电容技术触摸屏、红外线技术触摸屏、表面声波技术触摸屏。 每一类触摸屏都有其各自的优缺点,要了解哪种触摸屏适用于哪种场合,关键就在于要懂得每一类触摸屏技术的工作原理和特点。,矢量压力传感技术触摸屏已退出历史舞台;,红外线技术触摸屏价格低廉,但其外框易碎,容易产生光干扰,曲面情况下失真;,电容技术触摸屏设计构思合理,但其图像失真问题很难得到根本解决;,电阻技术触摸屏的定位准确,但其价格颇高,且怕刮易损;,表面声波触摸屏解决了以往触摸屏的各种缺陷,清晰不容易被损坏,适于各种场合,缺点是屏幕表面如果有水滴和尘土会使触摸屏变的迟钝,甚至不工作。,4.5.1,标准,Centronics,接口,并行打印机接口通常按,Centronics,标准定义插头插座引脚,,Centronics,标准中各引脚和信号之间的对应关系见下表。,4.5,打印机接口电路设计,入,4.5.2,应用实例,在计算机控制系统中, 常用的有并行和串行接口的针式打印机。 下面介绍并行打印机与计算机的接口举例。,例:用,8255,控制打印机。,下页图是,8031,扩展,8255,与打印机接口的电路。,8255,的片选线为,P0.7,,,打印机与,8031,采用查询方式交换数据。打印机的状态信号输入给,PC7,,,打印机忙时,BUSY=1,,,微型打印机的数据输入采用选通控制,当,STB,上负跳变时数据被输入。,8255,采用方式,0,由,PC0,模拟产生,STB,信号。,按照接口电路,,A,口地址为,7CH,,,C,口地址为,7EH,,,命令口地址为,7FH,,,PC7PC4,输入,,PC3PC0,输出。方式选择命令字为,88H,。,8031,扩展,8255,与打印机接口的电路,向打印机输出字符串,WELCOME,的程序如下:,#include ,#include ,#include ,#define,uchar,unsigned char,#define COM8255 XBYTE0x007f /*,命令口地址 *,/,#define PA8255 XBYTE0x007c /* A,口地址 *,/,#define PC8255 XBYTE0x007e /* C,口地址 *,/,void,toprn,(,uchar,*p) / *,打印字符串函数 *,/, while(*p!= 0) / *,字符串结束标志*,/,while(0x80 /*,查询等待打印机的,BUSY,状态*,/,PA8255=*p; /*,输出字符 *,/,COM8255=0x00;,/*,模拟,STB,脉冲 *,/,COM8255=0x01;,p+;,void main (void),uchar,*pa;,uchar,idata,prn,=WELCOME;,/*,设测试用字符串 *,/,pa=,prn,;,COM8255=0x88;,/*,输出方式选择命令 *,/,_,nop,_();,COM8255=0x01;,/* C,口位控字 *,/,toprn(pa,);,/*,打印字符串 *,/,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!