第6键盘、显示接口技术 6,1键盘及其与计算机接口 62独立式按键接口设计 6,3矩阵式键盘接口设计 64LED显示器及接口设计 6,5LCD显示器及接口设计
第6章 键盘、显示接口技术 6.1 键盘及其与计算机接口 6.2 独立式按键接口设计 6.3 矩阵式键盘接口设计 6.4 LED显示器及接口设计 6.5 LCD显示器及接口设计
61键盘,显示与计算机接口 键盘输入数据和命令,显示用于计算机的状态、命 令和计算结果 单片机键盘有两种: 种是全编码键盘,其键码全由硬件提供,但是这 种方式硬件结构复杂,成本高; 另一种是非编码键盘,这种键盘多采用矩阵方式, 利用软件识别键码及完成各种键功能处理。 单片机系统中多采用非编码键盘
6.1 键盘、显示与计算机接口 键盘输入数据和命令,显示用于计算机的状态、命 令和计算结果。 一、键盘 单片机键盘有两种: 一种是全编码键盘,其键码全由硬件提供,但是这 种方式硬件结构复杂,成本高; 另一种是非编码键盘,这种键盘多采用矩阵方式, 利用软件识别键码及完成各种键功能处理。 单片机系统中多采用非编码键盘
1.LED显示器 内部由发光二极管组成段显示。 数码管结构又分为共阳极型和共阴极型 2.LCD液晶显示器 常用的LCD可分为字符型和点阵型两大类。 字符型可用来显示字符和数字, 点阵型可用来显示汉字及图形
二、显示器 1. LED显示器 内部由发光二极管组成段显示。 数码管结构又分为共阳极型和共阴极型。 2. LCD液晶显示器 常用的LCD可分为字符型和点阵型两大类。 字符型可用来显示字符和数字, 点阵型可用来显示汉字及图形
62独立式按键接口设计 立式键盘接口电路 1.接口与数据 每个按键单独占有一根O P10 接口引线。 P1.1 输入每根ⅣO接口引线的信号 对应某个数据。 P17
6.2 独立式按键接口设计 一、独立式键盘接口电路 P1.0 P1.1 P1.7 1 +5v . 接口与数据 每个按键单独占有一根I/O 接口引线。 输入每根I/O接口引线的信号 对应某个数据
消除抖动电路 抖动时间 100ms & vO 开关+5 接 口 单片机 & 消除抖动电路
2. 键盘的可靠性 消除抖动电路 & I/O 接 口 & +5v +5v 消除抖动电路 开关 单 片 机 抖动时间 <10ms 开关动作时间 >100ms “ 1 ” “ 0 ” <10ms
式按键接口程序设计 键盘处理程序任务 键输入 检査键盘是否有键被按下,消除按 键抖动。确定被按键的键号,获取键号。<有按键信号?N 硬件电路消除抖动或软件消除抖动。 2)键译码 延时等待10ms 键号为键盘位置码,根据键号査表 得出被按键的键值。键值:数字键0~9、<仍有按键信号?N 字符键OAIH~OFH、功能键10H 3)键处理 键盘处理 根据键值转移到不同程序段。若键 值属于数字、字符键,则调用显示数字 按键释放? 和字符的子程序。若键值属于功能键, Y 则进行多分支转移,执行各个功能程序 段
二、独立式按键接口程序设计 键盘处理程序任务 1)键输入 检查键盘是否有键被按下,消除按 键抖动。确定被按键的键号,获取键号。 硬件电路消除抖动或软件消除抖动。 2)键译码 键号为键盘位置码,根据键号查表 得出被按键的键值。键值:数字键0~9、 字符键0AH~0FH、功能键10H~ 。 3)键处理 根据键值转移到不同程序段。若键 值属于数字、字符键,则调用显示数字 和字符的子程序。若键值属于功能键, 则进行多分支转移,执行各个功能程序 段。 延时等待10ms 仍有按键信号? Y 有按键信号? N Y N 键盘处理 按键释放? N Y
KEY SETB P1.0 JB P1.0,KEY;有键按下P10=0 KEYI: ACALL DELAY ;延时,防止抖动 SETB PLO JB P1.0,KEY1;键是否释放 JNBP1.0,KEY1;消除了连击功能 JB P1.0,KEY1;连击功能 ACALL PROGRAM AJMP KEY
三、单键管理程序 KEY: SETB P1.0 JB P1.0, KEY ;有键按下P1.0=0 KEY1: ACALL DELAY ;延时,防止抖动 SETB P1.0 JB P1.0, KEY1 ;键是否释放 JNB P1.0, KEY1 ;消除了连击功能 JB P1.0, KEY1 ;连击功能 ACALL PROGRAM ; AJMP KEY
6.3矩阵式键盘 1.0 +5v P 1.1 由多条IO接口引线组成矩 14 阵式键盘。 P 1.5 键盘 I/O接口 01
6.3 矩阵式键盘 0 1 +5v P1.0 P1.1 P1.4 P1.5 键盘 I/O接口 由多条I/O接口引线组成矩 阵式键盘
键的输入方法 1.扫描法 列线输出,行线输入 列线逐行输出0,某行有按键,行线输入有0,若 无按键,行线输入全部为1 2.反转法 列线交换输入、输出,两步获取按键键号 3.中断扫描方式 有按键按下时发出中断请求信号提高CPU的效 率
1. 扫描法 列线输出,行线输入。 列线逐行输出0,某行有按键,行线输入有0,若 无按键,行线输入全部为1。 2. 反转法 行列线交换输入、输出,两步获取按键键号。 3. 中断扫描方式 有按键按下时发出中断请求信号,提高CPU的效 率。 一、键的输入方法
按键处理 程序 有按键输入? 延时消抖 确有按键? 键扫描求键号 延时等待 按键释放? 键译码求键值 是数字键? 修改显示缓冲区」跳转各功能程序
二、按键处理 程序: 延时消抖 键扫描求键号 延时等待 键译码求键值 修改显示缓冲区 跳转各功能程序 有按键输入? 确有按键? 按键释放? 是数字键?