为什么我的板子上的按键S2用手摸着的时候才正常工作啊?

gaoyang9992006   2012-6-11 00:55 楼主
如题,我用查询法读取S2的状态,只有我手摸着按键或者P1.3的时候才正常工作,这是为什吗?

回复评论 (10)

手湿的时候靠近就能正常工作,真是太神奇了
点赞  2012-6-11 00:58
#include
void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  P1DIR=~BIT3;    //p1.3设为输入
  P1REN=BIT3;            //启用P1.3的上拉电阻
  while(1){
    if((P1IN&BIT3)==BIT3)//如果拉低
      P1OUT|=(BIT6+BIT0);     //LED亮
   else
      P1OUT=~(BIT6+BIT0);    //LED灭
  }
}

解决了,原来板子上没有弄上拉电阻的,需要启用内部上拉电阻,但是我看手册上画的有,真是坑爹啊


[ 本帖最后由 gaoyang9992006 于 2012-6-11 01:26 编辑 ]
点赞  2012-6-11 01:25
关键一句
P1REN=BIT3;
点赞  2012-6-11 01:26
如果P1的x位设置内部弱上拉可以写作
P1REN=BITx;
点赞  2012-6-11 01:28
楼主的问题怎么和我之前发的帖子一样样。。。
点赞  2012-6-11 10:06
不过问题解决了就是进步。
点赞  2012-6-11 10:07

回复 7楼 千里千寻 的帖子

是啊,我发完贴了,才看到你的帖子,跟我的问题一样,原来电路图上有个外部上拉电阻的,结果他们省钱没有焊接,只能内部了,我一直都是当有外部上拉的。郁闷一天啊
点赞  2012-6-11 10:11

回复 8楼 gaoyang9992006 的帖子

学习了 就是进步 这个看看别人的例子可以看到的 恭喜楼主
点赞  2012-6-11 12:08
好样的。。。。注意一下
点赞  2012-6-12 21:27

纠结了很久啊,学习了~~~~

点赞  2012-7-9 22:15
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复