打印
[技术问答]

PA0设置为准双向模式做按键,为什么不行?

[复制链接]
89|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
duo点|  楼主 | 2025-2-24 13:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
NUC472芯片,想用PA0做一个按键。
省掉了不相关的部分,程序如下:
SYS_UnlockReg();
..............................................................
SYS->GPA_MFPL    =    (SYS->GPA_MFPL & (~SYS_GPA_MFPL_PA0MFP_Msk) ) | SYS_GPA_MFPL_PA0MFP_GPIO  ;   
..................................................
SYS_LockReg();
..........................................................

GPIO_SetMode(PA,BIT0,GPIO_MODE_QUASI);
    PA0 = 1;
     if(PA0 == 0)
    {
        if(PA0 == 0)
        {
        SPIflshUpload();
        }
    }
按钮一直没有做用,就用示波器看了一下,结果发现不管我的按钮按不按下去PA0都是低电平的(另一个按键PI3口相同设置一直都是高电平)
如果用GPIO_SetMode(PA,BIT0,GPIO_MODE_OUTPUT)A0上才会有一个上升到芯片供电电压一半的短脉冲。
后来加了一个10K的上接电阻,按键才算正常了。是我漏掉了什么设置吗?请高手指教。

使用特权

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

本版积分规则

447

主题

1704

帖子

1

粉丝