5.1单片机外围设备讲解1.pptx_第1页
5.1单片机外围设备讲解1.pptx_第2页
5.1单片机外围设备讲解1.pptx_第3页
5.1单片机外围设备讲解1.pptx_第4页
5.1单片机外围设备讲解1.pptx_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机C语言编程,主讲教师:廉哲 QQ:17434548 电话办公室:综合楼C318,51单片机硬件结构 C51基础知识及其基本程序设计 C51函数、数组、指针定义及应用 单片机内部资源及其C语言编程 单片机资源扩展及其C语言编程 综合程序设计 考试,课程主要内容:,键盘接口,键盘是单片机应用系统中使用最广泛的一种 数据输入设备。键盘是一组按键的组合。键通常是一种常开型按钮开关,常态下键的两个触点处于断开状态,按下键时它们才闭合(短路)。,4,非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。独立式键盘的工作过程与矩阵式键盘类似,无论是硬件结构还是软件设计都比较简单

2、,。,通常,键盘有编码和非编码两种。编码键盘通过硬件电路产生被按按键的键码和一个选通脉冲。选通脉冲可作为CPU的中断请求信号。这种键盘使用方便,所需程序简单,但硬件电路复杂,常不被单片机采用。,特点:每个按键占用一条I/O线,当按键数量较多时,I/O口利用率不高,但程序编制简单。适用于所需按键较少的场合。,特点:电路连接复杂,但提高了I/O口利用率,软件编程较复杂。适用于需使用大量按键的场合。,扫描法 和线反转法,键盘接口的消抖 1消除键抖动,键盘控制流程,单片机对矩阵式键盘接口处理的一般过程如图8.3所示。,键扫描,消抖,求键码,等待释放,按键处理,图8.3 键盘处理流程框图,1. 键扫描,

3、键扫描就是要判断有无键按下,当扫描到有键按下时再进行下一步处理,否则退出键盘处理程序。独立式键盘扫描只需读取IO口状态,而矩阵式键盘描通常有两种实现方法:逐行扫描法和线反转法。,(1) 逐行扫描法。依次从第一至最末行线上发出低电平信号, 如果该行线所连接的键没有按下的话, 则列线所接的端口得到的是全“1”信号, 如果有键按下的话, 则得到非全“1”信号。,0 1 1 1,1 1 1 1,1 0 1 1,1 1 1 0,1 1 0 1,1 1 1 1,1 1 1 0,1 1 1 1,设第2行第4列键按下,行线输出,列线输入,0 1 1 1,1 1 1 1,1 0 1 1,1 1 1 0,1 1

4、0 1,1 1 1 1,1 1 1 0,1 1 1 1,(2)线反转法。 线反转法也是识别闭合键的一种常用方法, 该法比行扫描速度快, 但在硬件上要求行线与列线外接上拉电阻。 先将行线作为输出线, 列线作为输入线, 行线输出全“0”信号, 读入列线的值, 那么在闭合键所在的列线上的值必为0;然后从列线输出全“0”信号,再读取行线的输入值,闭合键所在的行线值必为 0。这样,当一个键被按下时, 必定可读到一对唯一的行列值。再由这一对行列值可以求出闭合键所在的位置。,0 0 0 0,1 1 1 0,0 0 0 0,1 0 1 1,设第2行第4列键按下,列值:1110,行值:1011,0123 ee

5、debe7e 4567 edddbd7d 89AB ebdbbb7b CDEF e7d7b777,由于按键按下时的机械动作,在按键被按下或松开的瞬间,其输出电压会产生波动,称为键的抖动。,2.消抖,为确保每按一次键单片机只进行一次处理,使键盘可靠地工作,必须消除按键抖动。消抖方法有硬件消抖和软件延时两种。,图8.5 键闭合及断开时的抖动,(1)硬件消抖法:就是在键盘中附加去抖动电路,从根上消除抖动产生的可能性。右图所示电路实际上是由R-S触发器构成的单脉冲电路。当按钮开关按下时Q端输出低电平,当开关松开时Q端恢复高电平,即输出一个负脉冲,以此消除抖动。,图8.6 硬件去抖动电路,(2)软件消抖

6、法:键按下的时间与操作者的按键动作有关,约为十分之几到几秒不等。而键抖动时间与按键的机械特性有关,一般为510ms不等。软件消抖法即是采用延时(一般延时1020ms)的方法,以避开按键的抖动,即在按键已稳定地闭合或断开时才读出其状态。,图8.7 软件消抖法延时区间示意图,3. 计算键码,键码是每个按键的标识。被按键确定下来之后,接下来的工作是计算闭合键的键码,然后才能根据键码进行对应的操作。,为编程方便,键码通常都是以键的排列顺序安排,按照从左到右、从上向下的顺序编排。键码可根据行号列号以查表求得,也可通过计算得到。我们将结合实例加以介绍。,4.等待释放,等待释放是为了保证键的一次闭合仅进行一

7、次处理。求得键码后,然后通过不断进行键扫描,如有键按下,则继续扫描,否则认为键已释放。,5.按键处理,根据系统功能要求,利用单片机控制完成特定操作。,5 键盘接口的控制方式,在单片机的运行过程中,何时进行键盘扫描和处理,可有下列三种情况: 1.查询方式:单片机通过调用键盘扫描子程序,查询有无键按下。 2.定时扫描方式:每隔一定时间执行一次键盘扫描子程序。 3.中断方式:每当有键闭合时才向CPU发出中断请求,中断服务时进行键盘扫描和处理。,键盘分为编码键盘和非编码键盘。 键盘上闭合的键的识别由专门的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键 盘。而靠软件编程来识别的键盘称为非

8、编码键盘,在单片机组成的各种系统中,用的较多的是非编码键盘。非编码键盘又分为独立键盘和行列式键盘。,单片机外部资源1常用按键扩展方法小结与程序实例演示,单片机外部资源1常用按键扩展方法之独立按键1,按键的一端共地,另外一端,三个按键分别连接在CPU的P3.2P3.3 P3.4三个端口上。如果按键被按下,那么我们可以检测到这三个端口 应该是低电平。,按键在闭合和断开的时候,会有触点存在抖动现象,就如上图那样,所以我们在检测键盘是否按下都要加上去抖动的操作,利用软件延时:就是先判断一下按键是否按下?-延迟10ms- 再检测一次按键按下?-检测按键是否释放-执行相应代码,单片机外部资源1常用按键扩展

9、方法之独立按键2,电路与C51程序分析 详见电路文件和程序文件,单片机外部资源1常用按键扩展方法之独立按键3,独立键盘与单片机连接时,每一个按键都需要单片机的一个IO口,若某单片机系统需要较多的按键,如果用独立按键便会占用过多的IO口资源。单片机的IO口资源比较宝贵,所以当用到多个按键时,为了节省IO线,我们引入矩阵键盘,如下图,单片机外部资源1常用按键扩展方法之矩阵键盘1,单片机外部资源1常用按键扩展方法之矩阵键盘2,我们可以看出矩阵键盘没有共地端,所以我们在检测按键有没有被按下时,可以先送一列低电平,其余几列都为高电平,立即轮流检测一次各行是否有低电平,若检测到某一行为低电平,则我们可以确定当前按键被按下的键是哪一行哪

温馨提示

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

评论

0/150

提交评论