工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->综合电路图->综合电路图->如何配置R7F0C002按键中断功能—硬件配置篇

如何配置R7F0C002按键中断功能—硬件配置篇

作者:angelazhang时间:2015-11-09

RL78集成了针对按键的键中断功能,能通过给键中断输入引脚 (KR0 ~ KR3)输入下降沿或者上升沿来产生键中断(INTKR),本文针对R7F0C002应用说明介绍了键中断功能的使用方法。

对 4×4 的键矩阵进行扫描,并在 2 个 7 段数码管上显示按下的键值。也适用于其他与上面所述的 MCU 具有相同 SFR(特殊功能寄存器)定义的产品。 

本篇主要说明硬件电路部分及注意事项。


1.规格

本篇应用说明中,对 4×4 的键矩阵使用了键中断功能。键中断( INTKR)作为键扫描的触发使用。使能全部的扫描线,将全部的键输入设为有效状态,无论哪个键被按下都会产生 INTKR。 INTKR 产生后,依据键扫描判断出被按下的键值。每 30ms 进行一次键检测,当两次检测到的键值一致时,则认为这个键被按下(消抖处理),并在 2 个 7 段数码管上显示该键值。当多个按键同时被按下时, 7 段数码管上显示 FF。如果没有键被按下时, 7 段数码管上显示 00。


参考:通常,键扫描使用 N-ch 开漏输出端口。这里,利用端口输出低电平,让 CMOS 输出模拟 N-ch 开漏输出。使用 N-ch 开漏输出端口,不能缩短扫描间隔。因为用了几十千欧的上拉电阻,所以扫描线的信号的上升时间需要花费几微秒~几十微秒。这里,利用端口输出低电平,信号的上升时间变短了。虽然程序上变复杂了,但是能缩短扫描时间间隔。


2.硬件配置示例

注意:

 1. 上述硬件配置图是为了表示硬件连接情况的简化图。在实际电路设计时,请注意根据系统具体要求进行适当的引脚处理,并满足电气特性的要求(请注意将输入专用引脚分别通过电阻上拉到 VDD或是下拉到 VSS)。

2. 如果有名称以 EVSS为开头的引脚,请连接至 VSS;如果有名称以 EVDD为开头的引脚,请连接至 VDD。

3. 请将 VDD电压值保持在由 LVD 设定的复位解除电压 VLVD以上。


3.软件说明

本篇应用说明中,使用了键中断( INTKR)和定时器中断( INTTM00)。

使能全部的扫描线,将全部的键输入设为有效状态,无论哪个键被按下都会产生 INTKR。 INTKR 产生后,依据键扫描判断出被按下的键值。每 30ms 进行一次键检测,当两次检测到的键值一致时,则认为这个键被按下(消抖处理),并在 2 个 7 段数码管上显示该键值。当多个按键同时被按下时, 7 段数码管上显示 FF。如果没有键被按下时, 7 段数码管上显示 00。这个处理持续到所有的按键都没有被按下的时候。

( 1) 初始化设置

<设定条件>

• 将 TAU0 通道 0 设置为周期 30ms 的间隔定时器。

• 将键中断检测端口设置为中断允许状态。

• 将键扫描输出端口全部设置为输出状态。

( 2) 等待有键按下。

( 3) INTKR 发生后,执行键扫描。

( 4) 每 30ms 执行一次键扫描,进行消抖处理。

( 5) 确定键值后,在 LED 上显示键按下状态。

( 6) 如果所有的键都没有被按下,使能全部扫描线,返回( 2)等待键输入。






评论

vaioshop · 2016-08-27 14:20:50

了解一下。

技术专区