LM3S8962 GPIO 带弱上拉的开漏

2019-03-24 15:38发布

这几天在看LM3S8962 的GPIO 方向和模式的时候 遇到一个问题 在配置GPIO 为输入做按键检测的时候 为什么只有在 配置为带弱上拉的推挽下 才能准确的检测按键 而配置为带弱上拉的开漏输出地时候 管脚输出一直为0呢? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
16条回答
new_redstar
2019-03-25 02:28
我设置 的就是带弱上拉得开漏输入  但测得输出一直是0 (如配成 带上拉推挽输入就没问题)
程序:
int
main(void)
{
       
       
    // Set the clocking to run directly from the crystal.
    //
    SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |SYSCTL_XTAL_8MHZ);
        //
    //Enable GPIO CLOCK
        //
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);
        //
        //Set GPIO LED GPIO
        //
        GPIODirModeSet(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_DIR_MODE_OUT);
        GPIOPadConfigSet(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_STRENGTH_8MA,GPIO_PIN_TYPE_STD);
        //
        //Set Key GPIO
        //
        GPIODirModeSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_DIR_MODE_IN);
        GPIOPadConfigSet(GPIO_PORTE_BASE,GPIO_PIN_0,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_OD_WPD);
          while(1)
        {

         if(GPIOPinRead(GPIO_PORTE_BASE,GPIO_PIN_0)==0x00)        //按键按下
          {
          GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1,GPIO_PIN_1);
          SysCtlDelay(150 * (6000000 / 3000));           //DELAY 150MS
          GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1,~GPIO_PIN_1);
          SysCtlDelay(150* (6000000 / 3000));          //DELAY 150MS
          }
        }
}

大虾们 帮忙看看 难道是我 配置错了???

一周热门 更多>

相关问题

    相关文章