CH573 CH582 CH592 CH579 GPIO例程

发布时间 2023-12-20 09:34:37作者: WCH蓝牙应用分享

GPIO功能,从点亮一颗LED开始。

1.GPIO输出模式:将PB4引脚设置为推挽输出。

    GPIOB_SetBits(GPIO_Pin_4);                       //设置默认电平,开启输出后输出高电平
    //    GPIOB_ResetBits(GPIO_Pin_4);               //设置默认电平,开启输出后输出低电平
    GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeOut_PP_5mA);  //设置为推挽输出模式,有5mA和20mA两种配置

2.GPIO输入模式:将PB4引脚设置为上拉输入或下拉输入或浮空输入。

    GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_PU);        //设置为上拉输入模式,有上拉输入/下拉输入/浮空输入三种配置
    GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_PD);        //设置为下拉输入模式
    GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_Floating);  //设置为浮空输入模式

3.GPIO中断(支持中断的引脚PA0-15/PB0-15,若无PB8和PB9可直接使用PB22和PB23,若有PB8和PB9,则需要映射后使用PB22和PB23)

    GPIOB_ModeCfg(GPIO_Pin_4, GPIO_ModeIN_PU);
    GPIOB_ITModeCfg(GPIO_Pin_4, GPIO_ITMode_FallEdge); // 下降沿触发
    PFIC_EnableIRQ(GPIO_B_IRQn);
__INTERRUPT
__HIGH_CODE
void GPIOB_IRQHandler(void)
{
    GPIOB_ClearITFlagBit(GPIO_Pin_4);
}