单片机/MCU论坛
直播中

gaoshao

13年用户 145经验值
私信 关注
[问答]

有关中断式矩阵键盘

本帖最后由 zhihuizhou 于 2011-12-2 11:58 编辑

中断式矩阵键盘还真麻烦,我通过一个按键连接VCC和P1.2,想法是按键就会对P1.2产生上升沿,从而执行中断服务程序,结果,一加电就自行进入中断服务程序,根本不管按没按键,高手们,指点指点呀!!

这中断式矩阵键盘到底怎么搞啊,是不是都不采用这种人工触动式的中断方式?那更好的办法是什么?
  • 中断

回帖(8)

fuduo

2011-10-26 09:36:35
中断是没有问题的,应该是你的初始化,或者程序其他地方出了问题,我也用了这种方式,用了3个IO口作键盘中断输入。很正常一点问题没有
举报

wangka

2011-10-26 09:37:17
个人观点:
1。 首先要确定硬件没问题,如果要上升沿触发则所用的I/O口要有一个下拉电阻,相反则要有一个上拉电阻,以保证不会误中断。

2。软件方面:

a: 把所用到的I/O口设为输入口。(PxDIR)

b: 选择上升沿或下降沿触发方式。(PxIES)

c: 开启中断功能。(PxIE)

d: * 进入中断后,退出时记得要对刚才中断的标志位清“0”。否则会一直不断的中断。
举报

小芳

2011-10-26 09:38:01
注意设置触发沿和上拉、下拉电阻的关系!
举报

dofan

2011-10-26 09:39:08
矩阵键盘中断是没有问题的!还是你的程序有问题!是不是你设置P1。2口的跳变沿有问题啊!

首先应该是系统初始化,初始化后P1。2才有中断功能啊!
举报

牛航

2011-10-26 09:40:45
键盘和显示是人机接口部分带有艺术性的,
一般都是响应时间,cpu的占用,多任务处理。。。。存在矛盾!
能用不等于好用。

矩阵键盘: 建议采用扫描监测,如需要较好的实时性可以在程序中多调用扫描程序或用定时器中断来读按键!
简单的键盘:每个键只有几个简单功能时,可以采用中断方式完成;每个键有n个功能和组合操作时,可以采用中断方式读键,主程序处理!

一般情况下建议采用扫描监测,这样既省心又省力,而且不会运行出错,cpu占用率高了!
举报

newsky121

2012-3-13 12:48:29
弱弱问一下 刚学单片机  中断边沿触发应该是下降沿吧
举报

傻少子

2012-11-15 11:07:49
学习哈咯
举报

冯亚杰

2013-5-4 20:37:46
引用: newsky121 发表于 2012-3-13 12:48
弱弱问一下 刚学单片机  中断边沿触发应该是下降沿吧

应该是吧,一般也就两种形式吧,一种是跳变沿(下降沿)另一种就是低电平,我也是菜鸟。个人观点
举报

更多回帖

发帖
×
20
完善资料,
赚取积分