打印

遇到个个问题

[复制链接]
1026|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangchui|  楼主 | 2017-2-13 17:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

             mov.b   #0x00,    &P1SEL            
            mov.b   #0x60,    &P1DIR         
            mov.b   #0x8f,    &P1IE            
            mov.b   #0x8f,    &P1IES   
                              
             mov.b   #0x00,    &P2SEL              
             mov.b   #0x60,    &P2DIR            
            mov.b   #0x8f,    &P2IE              
             mov.b   #0x8f,    &P2IES     
PORT1 与 PORT2的配置方式相同,电平通过按键控制。发现PORT2
设置成 高->低 中断没有问题。 PORT1设置成 高->低 但是按下按键进中断
松开按键同样近中断。按键的电路没有任何区别。
望 高手指导一下!

相关帖子

沙发
午夜粪车| | 2017-2-13 17:58 | 只看该作者
按键电路做过处理没?

使用特权

评论回复
板凳
wyjie| | 2017-2-13 18:00 | 只看该作者
PORT1口是100%出现上述情况的吗?

使用特权

评论回复
地板
huangchui|  楼主 | 2017-2-13 18:02 | 只看该作者
都是处理过的啊 PORT2一点问题都没有 , 100%出现该问题

使用特权

评论回复
5
lizye| | 2017-2-13 18:05 | 只看该作者
如果只配置PORT1呢?

使用特权

评论回复
6
huangchui|  楼主 | 2017-2-13 18:09 | 只看该作者
那有何意义么? 实际中要两个一起用, 只配置PORT1有何用?

使用特权

评论回复
7
lizye| | 2017-2-13 18:11 | 只看该作者
那你可以在中断中计数,第一次进入为按下,第二次进入弹起来,清数,依照规律

使用特权

评论回复
8
huangchui|  楼主 | 2017-2-13 18:14 | 只看该作者

方法很多,不过我想知道是我的问题,还是器件本身的问题?

使用特权

评论回复
9
huangchui|  楼主 | 2017-2-13 18:16 | 只看该作者
我实在是查不出任何毛病! 同样的配置为何PORT2好用,PORT1不好用?

使用特权

评论回复
10
huangchui|  楼主 | 2017-2-13 18:26 | 只看该作者
我把PORT2关了还是有这个问题,不知道谁用过这个芯片,是否存在同样的问题?

使用特权

评论回复
11
dengdc| | 2017-2-13 18:35 | 只看该作者
不知道楼主的具体电路是什么样子的?
是不是凡是设为输入的口都用作按键?

使用特权

评论回复
12
dengdc| | 2017-2-13 18:38 | 只看该作者
是不是每个P1口都会松开按键进中断?

使用特权

评论回复
13
zhanghqi| | 2017-2-13 18:40 | 只看该作者
我曾经在F4××上的经验供你参考,除非F5438A跟4××不一样的I/O中断架构,那就没有参考意义:
我也同时使用P1和P2口中断过,但不是全用,分别用两三个,设置为下降沿中断和上升沿中断都有,电路上我接了电阻电容作去抖,软件上中断服务程序内不做软件延时滤波,只清IO中断标志位和置自定义标志位,在主循环内作软件滤波处理,这样处理没出现过楼主所说的情况。所以我个人感觉不用怀疑芯片本身的功能:)

使用特权

评论回复
14
wuhany| | 2017-2-13 18:42 | 只看该作者
你也可以看下PORT2和PORT1两个口做按键输入时的波形,看看是不是一样。如果一样很有可能需要你软件处理

使用特权

评论回复
15
jiahy| | 2017-2-13 19:21 | 只看该作者

是否有可能按键有抖动?

使用特权

评论回复
16
jiahy| | 2017-2-13 19:23 | 只看该作者
另外进入中断后,是否把中断标志清掉了?

使用特权

评论回复
17
huangchui|  楼主 | 2017-2-13 19:25 | 只看该作者
前面已经说过了啊,PORT2与PORT1是同样的电路,而且100%出现这种情况,所以不可能是按键抖动啦!

使用特权

评论回复
18
huangchui|  楼主 | 2017-2-13 19:27 | 只看该作者
至少我这个芯片在中断服务程序中,跳入到某一个按键的中断后,标志位是自动清零的。并且port2与port1的配置是一样的!

使用特权

评论回复
19
dirtwillfly| | 2017-2-13 19:28 | 只看该作者
这是什么单片机的?

使用特权

评论回复
20
jiaxw| | 2017-2-13 19:29 | 只看该作者
可能你的软件还是有漏洞的。在进入中断后,按下时让进入中断处理程序之后置标志位,当标志位为1不进入处理程序,直到弹出时清标志位。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

918

主题

12323

帖子

4

粉丝