[STM32F0] 按键没反应

[复制链接]
 楼主| hfdy01 发表于 2020-8-15 12:37 | 显示全部楼层 |阅读模式
#define keyin    (P3IN&BIT4)

void led_flash(void);
char key(void)
{

  if(keyin==0)

    return 1;

  else
  return 0;   
}

void main(void)
{
     unsigned int t;
     WDTCTL = WDTPW + WDTHOLD;
     P3DIR&=~BIT4;
     P2DIR|=0XFF;
     P2OUT=0XFF;
       while(1)
      {
          t=key();
          if(t)
          P2OUT=0;



      }
}
CallReceiver 发表于 2020-8-15 12:40 | 显示全部楼层
没返回值?不会没有上拉电阻吧?
boy1990 发表于 2020-8-15 12:44 | 显示全部楼层
这个也没有具体看到设置输入上拉电阻。。
sourceInsight 发表于 2020-8-15 12:47 | 显示全部楼层
嗯,好像key()根本就没返回值。。
bbapple 发表于 2020-8-15 12:51 | 显示全部楼层
直接调试的时候看P3IN寄存器,看数值变化没,没有的话就是硬件没做到。
handleMessage 发表于 2020-8-15 12:54 | 显示全部楼层
估计是电路问题,仔细检查一下硬件设施吧。
zhouhuanの 发表于 2020-8-15 12:58 | 显示全部楼层
建议看下你的硬件IO接口的中断功能是否能产生中断功能?
wanglaojii 发表于 2020-8-15 13:01 | 显示全部楼层
这个没用中断功能的话,就是进行IO口的检测了,这个是玄幻检测实现的
laozhongyi 发表于 2020-8-15 13:05 | 显示全部楼层
这样的话需要看下你的Io口是否设置成了输入检测的
Edisons 发表于 2020-8-15 13:08 | 显示全部楼层
这里没有反应是什么意思呢? 
_gege 发表于 2020-8-15 13:12 | 显示全部楼层
估计这个应该硬件的问题。
Mozarts 发表于 2020-8-15 13:15 | 显示全部楼层
应该是执行的速度太快了吧 
Listate 发表于 2020-8-15 13:19 | 显示全部楼层
是无法读取寄存器吗?    
feiqi1 发表于 2020-8-15 13:22 | 显示全部楼层
看不出什么原因造成的。。
androidbus 发表于 2020-8-15 13:26 | 显示全部楼层
你的硬件是怎么设计的呢?   
litengg 发表于 2020-8-15 13:29 | 显示全部楼层
建议使用中断作为信号源。。
qiangweii 发表于 2020-8-15 13:32 | 显示全部楼层
最好使用示波器测量一下IO的电平状态。。
shashaa 发表于 2020-8-15 13:34 | 显示全部楼层
你这算是读取P3口的输入状态了,应该查看P3IN寄存器
您需要登录后才可以回帖 登录 | 注册

本版积分规则

78

主题

1578

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

78

主题

1578

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部