第9章人机接口技术

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)按键个数较少时,接口电路如图9-1所示。 (2)按键个数较多时,接口电路如图9-2所示。
下面主要介绍按键较多时的键盘接口设计方法。
由原始机械开关组成的阵列式键盘,其接口程序 必须处理三个问题:去抖动、防串键和产生键码。
抖动是机械开关本身的一个最普遍问题。它是指 当键按下时,机械开关在外力的作用下,开关簧 片的闭合有一个从断开到不稳定接触,最后到可 靠接触的过程。键的抖动时间一般为10ms ~ 20ms,去抖动的方法主要采用软件延时或硬件 延时电路。
0xEB
若采用直接把行信号值和列信号值合并在一起来 生成键码的方法,且行信号在高4位,列信号在 低4位,那么, “9”键所对应的键码是:

0xBD
“6”所对应的键码是: 0xDB
非编码式键盘的接口驱动程序流程:
键盘接口示例
假设键盘阵列是5×4,利用S3C2440的端口C、 端口E来完成键盘的连接,其中,GPC0~GPC3 作为输入用于连接“键盘列”,GPE0~GPE4 作为输出,用于连接“键盘行”,键码采用16位, 是行信号值和列信号值合并而成。
键盘是最常用的人机输入设备,在嵌入式系统的键盘接口 设计时,通常需要根据应用的具体要求,来设计键盘接口 的硬件电路,同时还需要完成识别按键动作、生成按键键 码和按键具体功能的程序设计。
按键较多
按键较少
(1)按键的识别方法
嵌入式系统所用键盘中的按键通常是由机械开关 组成,通过机械开关中的簧片是否接触来断开或 者接通电路,以便区别键是否处在按下或释放状 态。
虽然,键码的产生方法是多种多样的,但不论哪 种方法都必须保证键码与键一一对应。
一种较常用的键码产生算法,它比较适用于16键 ~64键的键盘接口,并且键码采用8位二进制数 表示。键码产生的算法步骤如下:
(1)根据键盘扫描中所得到的行信号计算出被 按下键所在行的行数,以数据最低位对应的键盘 行为第一行,以此类推;
7段(或8段)LED显示器控制原理
7段(或8段)LED显示器是由七个(或八个)发 光二极管按一定的位置排列成“日”字形,为了 适应不同的驱动电路,采用了共阴极和共阳极两 种结构,如下图所示。
用7段(或8段)LED显示器可以显示0~9的数 字和多种字符(并可带小数点)。
在实际应用中,一般需要多位数据同时显示,这 样就需要用多个7段(或8段)LED来组成一个完 整的显示器。如下图所示。
7段(或8段)LED组成的显示器也可以采用专用的 接口芯片来设计其显示驱动接口电路,如采用 ZLG7289芯片。
ZLG7289芯片是一个具有串行输入பைடு நூலகம்8位段信号并 行输出,可同时驱动8个共阴LED的专用芯片。
ZLG7289芯片能支持译码显示模式和非译码显示 模式。译码显示模式指的是微处理器输出给ZLG7289 芯片显示字符的对应值,由芯片ZLG7289译码产 生显示需要的段信号;而非译码显示模式指的是微 处理器直接输给ZLG7289芯片显示字符对应的段 码信号,因此,设计者需要自行求出显示字符对应 的段码。其设计示例请参考教材9.2.2节。
点阵式LED显示器
点阵式LED显示器的 显示单元一般由8行 8列LED组成,如下 图所示,可以再由这 8行8列的LED拼成 更大的LED阵列。
点阵式LED显示器能 显示各种字符、汉字 及图形、图像,并具 有色彩。
点阵式LED显示器中,每个LED表示一个像素, 通过每个LED的亮与灭来构造出所需的图形,各 种字符及汉字也是通过图形方式来显示的。
LOGO
嵌入式系统原理及接口技术
9 人机接口技术
人机接口提供了人与嵌入式系统进行信息交互的 手段,通过人机接口,人可以给嵌入式系统发送 操作指令,嵌入式系统的运行结果也可以通过显 示等方式提交给人。
在嵌入式系统中常用的人机接口设备有:键盘、 LED显示器和LCD显示器、触摸屏等。
9.1 键盘接口
具体键盘接口程序代码详见教材的9.1.2节。
9.2 LED显示器接口
LED显示器是嵌入式系统中常用的输出设备。 LED显示器的种类有: (1)由若干个LED灯组成的显示器,用于状态
指示。 (2)7段或8段LED显示器,用于显示信息量不
大的应用场合。 (3)点阵式LED显示器。
对于单色点阵式LED来说,每个像素需要一位二 进制数表示,“1”表示亮、“0”表示灭。
串键是指多个键同时按下时产生的问题。
产生键码是指键盘接口必须把按下的键翻译成有 限位二进制代码,以便微处理器识别。
嵌入式系统中,由于对键盘的要求不同,产生键 码的方法也有所不同。主要的键码产生方法是:
(1)直接把行信号值和列信号值合并在一起来生成键码。 (2)采用一些特殊的算法来生成键码。
(2)求行数的补(模为256),并求出其对应 的二进制编码;
(3)将行数的补对应的二进制码左移四位,然 后与列码相加,所的到的码即为键码。
例如,若要求出图9-2中“9”键及“6”所对应的 键码,采用前述算法来进行,那么, “9”键所 对应的键码是:

0xDD
“6”所对应的键码是:

前图所示的LED显示器,通常采用扫描显示方式 来驱动显示器的内容显示。
所谓扫描显示方式是根据人眼的视觉惰性,在多 位7段(或8段)LED组成的显示器中,所有位的 段信号均连接在一起,由段控制逻辑控制,而该 位能不能显示则由位控制逻辑中对应的位信号控 制。
位控制逻辑实际上是一扫描电路,它依此使N位7 段(或8段)LED显示器中的一位显示,其余位 处于不显示状态。只要扫描的速度适当,人眼看 到的是N位LED同时显示的状况。
键盘的接口电路有多种形式,主要有:
(1)用专用的芯片来连接机械按键,由专用芯片来识别 按键动作并生成按键的键值,然后把键值传输给微处理器;
(2)用微处理器芯片的GPIO引脚来连接机械按键,由 微处理器本身来识别按键动作,并生成键码。
即使采用GPIO引脚直接连接机械按键,通常也 会根据应用的要求,其接口电路有所不同。
相关文档
最新文档