Presentation is loading. Please wait.

Presentation is loading. Please wait.

第 十 章 单 片 机 应用系统 Single Chip Microcomputer 本章内容 人机接口 键盘接口 显示器接口.

Similar presentations


Presentation on theme: "第 十 章 单 片 机 应用系统 Single Chip Microcomputer 本章内容 人机接口 键盘接口 显示器接口."— Presentation transcript:

1 第 十 章 单 片 机 应用系统 Single Chip Microcomputer 本章内容 人机接口 键盘接口 显示器接口

2 单片机电路有时候也需要键盘、显示等外设。
PC机除了主机以外还需要哪些部分呢? 单片机电路有时候也需要键盘、显示等外设。

3 10.1 键盘接口 按键的特点及输入原理 独立式按键 矩阵式按键

4 按键的特点及输入原理 键输入原理: 通过按键的接通与断开,产生两种相反的逻辑状态 低电平“0”与高电平“1”。 键功能的实现:
对于一组键或一个键盘,需通过接口电路与单片机相连。可采用查询或中断方式测试有无键按下,再确定是哪一个键按下,将该键号送入累加器ACC,然后判断是数字键还是功能键,若是数字键,则将键号对应的数字送入相关输入缓冲区;若是功能键,则通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。

5 键盘接口需要解决的问题 按键识别: 是否有键按下 求键号 键抖动及消除: 机械按键抖动时间在5ms~10ms之间 消除方法:
硬件方案——双稳态去抖电路 键抖动及消除: 机械按键抖动时间在5ms~10ms之间 消除方法: 软件方案——延时10ms~20ms后再次判断

6 ----扫描(判断哪个键按下)、去抖动、判断按键是否抬起(以防止重复进行键处理)。
键释放 闭合稳定 前沿抖动 后沿抖动

7 独立式按键 接口电路: 特点:一线一键,按键识别(编程)简单;但占用较多口线,适合8键以下使用。

8 原理----当任何一个键被按下时,与其相连的输入线被置成 “0”,平时该线为“1”。
键处理程序 ORG H START:MOV A ,#0FFH ;先置P1口为“1” MOV P1,A MOV A,P ;输入键状态 JNB ACC.0, P0F ;查询0号键 JNB ACC.1, P1F ;查询1号键 JNB ACC.2, P2F ;查询2号键 键盘扫描 JNB ACC.3, P3F ;查询3号键 JNB ACC.4, P4F ;查询4号键 JNB ACC.5, P5F ;查询5号键 JNB ACC.6, P6F ;查询6号键 JNB ACC.7, P7F ;查询7号键 LJMP START

9 P0F:LJMP PROM ;入口地址表 P1F:LJMP PROM1 …… P6F:LJMP PROM6 P7F:LJMP PROM7 PROM0:………………… ;0号键功能程序 ………………….. LJMP START ;0号键处理完返回键盘扫描 . . PROM7:………………… ;7号键功能程序 ………………….. LJMP START ;7号键处理完返回键盘扫描

10 例1:用P1口检测三个按键的状态并完成相应的功能
解: 资源分配: 用P1口的低3位检测3个按键的输入,为1则表示按键没有按下,为0则表示相应按键被按下。 流程图:

11 编程(1):按三个按键中的任一键都对应一个特定功能。
ORG H KB: MOV P1,#0FFH MOV A,P1 CPL A ANL A,#0FH JZ KBACK LCALL D10MS CJNE A,#01H,KB01 LCALL PGM1 SJMP KBACK KB01: CJNE A,#02H,KB02 LCALL PGM2 KB02: CJNE A,#04H,KB LCALL PGM3 KBACK: LJMP KB END 编程(1):按三个按键中的任一键都对应一个特定功能。 若判断键释放应如何修改?

12 矩阵式按键 关键:如何判断键号? 接口电路: 特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用 MCS-51
P1.4 P1.3 P1.0 MCS-51 P1.7 P1.6 P1.5 P1.2 P1.1 矩阵式按键 +5V 3 2 1 4 7 6 5 11 10 9 8 15 14 13 12 特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用

13 键盘扫描子程序一般包括以下内容: 1.判别有无键按下; 2.扫描获取闭合键的行、列值; 3.用计算法或查表法得到键值; 4.判断闭合键释放否,如没释放则继续等待; 5.保存闭合键号。

14 键按下/释放判断 KS:MOV P1,#0FH MOV A,P1 ;读入P1口状态 CPL A ;变正逻辑,高电平表示有键按下
ANL A,#0FH ;取低4位 RET ;返回,A≠0表示有键按下

15 按键识别——扫描法 原理: 在某一时刻只让一条列线处于低电平,其余列线均处于高电平,则当这一列有键按下时,该键所在的行电平将会由高电平变为低电平,可判定该列相应的行有键按下。 流程: 当第0列处于低电平时,逐行查找是否有行线变低,若有,则第0列与该行的交叉点按键按下;若无,则表示第0列无键按下,再让下一列处在低电平,依此循环,这种方式称为键盘扫描。

16 接口电路 例2:键盘扫描程序 SERCH: MOV R2,#0EFH MOV R3,#00H LINE0: MOV A,R2
MOV P1,A MOV A,P1 JB ACC.3,LINE1 MOV A,#00H AJMP TRYK LINE1: JB ACC.2,LINE2 MOV A,#04H AJMP TRYK LINE2: JB ACC.1,LINE3 MOV A,#08H 接口电路

17 AJMP TRYK LINE3: JB ACC. 0,LINE4. MOV A,#0CH. AJMP TRYK LINE4: INC R3
AJMP TRYK LINE3: JB ACC.0,LINE MOV A,#0CH AJMP TRYK LINE4: INC R MOV A,R RL A JNB ACC.0,BACK MOV R2,A AJMP LINE0 TRYK: ADD A,R3 BACK: RET 接口电路

18 矩阵式按键 关键:如何判断键号? 接口电路: 特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用 MCS-51
P1.4 P1.3 P1.0 MCS-51 P1.7 P1.6 P1.5 P1.2 P1.1 矩阵式按键 +5V 3 2 1 4 7 6 5 11 10 9 8 15 14 13 12 特点:按键识别应采用扫描法或线路反转法 编程较为复杂,节省口资源,8键以上使用

19 定时扫描方式 定时扫描方式就是每隔一段时间对键盘扫描一次,它利用单片机内部的定时器产生一定时间(例如10 ms)的定时,当定时时间到就产生定时器溢出中断。CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。

20 中断扫描方式 为提高CPU工作效率,可采用中断扫描工作方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时,产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。

21 10.2 显示器接口技术 LED的结构和显示原理 静态显示方式 动态显示方式 动态显示的实现 动态显示方式

22 问题引入: LED显示器如何显示出指定数字/字符? com

23 例:模拟产品计数显示电路

24 编 程 STAR:MOV TMOD,#60H ;定时器T1工作在方式2计数 MOV TH1,#00H ;T1置初值 MOV TL1,#00H
ORG 1000H STAR:MOV TMOD,#60H ;定时器T1工作在方式2计数 MOV TH1,#00H ;T1置初值 MOV TL1,#00H MAIN:MOV P1,#0C0H ;数码管显示0 DISP: JB P3.3,DISP ;监测按键信号 ACALL DELAY ;消抖延时 JB P3.3,DISP ;确认低电平信号 DISP1:JNB P3.3,DISP1 ;监测按键信号 ACALL DELAY ;消抖延时 JNB P3.3,DISP1 ;确认高电平信号 SETB TR ;启动计数器

25 编 程 DISP2:MOV A,TL1 MOVC A,@A+DPTR ;查表获取数码管显示值 MOV P1,A ;数码管显示计数值
CJNE A,#8EH,DISP2 LJMP STAR TAB:0C0H,0F9H,0A4H … … DELAY:MOV R2,#14H DELAY1:MOV R3,#0FAH DJNZ R3,$ DJNZ R2,DELAY1 RET END

26 静态显示方式 连接 特点 原理简单;显示亮度强,无闪烁;占用I/O资源较多。
所有LED的位选均共同连接到+VCC或GND,每个LED的8根段选线分别连接一个8位并行I/O口,从该I/O口送出相应的字型码显示字型。 特点 原理简单;显示亮度强,无闪烁;占用I/O资源较多。

27 动态显示方式 连接 所有LED的段选线共同连接在一起共用一个 8位I/O口,而每个LED的位选分别由一根相应的I/O口线控制。因此必须采用动态扫描显示方式,每一个时刻只选通其中一个LED,同时在段选口送出该位LED的字型码。

28 动态显示基本原理 注意:字型码通常通过查表指令MOVC来求得 电路的接法决定了必须采用逐位扫描显示方式。
即从段选口送出某位LED的字型码,然后选通该位LED, 并保持一段延时时间。然后选通下一位,直到所有位扫 描完。 注意:字型码通常通过查表指令MOVC来求得

29 课堂练习 8031 试编制程序,要求当其中某一按键压下时与其对应的二极管将被点亮。 +5V P1.7 P1.6 P1.5 P1.4 P1.3


Download ppt "第 十 章 单 片 机 应用系统 Single Chip Microcomputer 本章内容 人机接口 键盘接口 显示器接口."

Similar presentations


Ads by Google