void GPIO_Init(void)
{
PA_DDR=0xFF;
PA_CR1 = 0xFF; //推挽
PA_CR2 = 0; //2MHz
PA_ODR= 0xFF;
PB_DDR=0xFF;
PB_CR1 = 0xFF; //推挽
PB_CR2 = 0; //2MHz
PB_ODR= 0xFF;
PC_DDR=0xFF;
PC_CR1 = 0xFF; //推挽
PC_CR2 = 0; //2MHz
PC_ODR= 0xFF;
PD_DDR =0xFF;
PD_CR1 =0xFF; //推挽
PD_CR2 =0; //2MHz
PD_ODR= 0xFF;
PD_DDR_DDR2 = 0; //GIO1 floating input with interrupt
PD_CR1_C12 = 1;
PD_CR2_C22 = 1;
EXTI_CR1 |= 0x20; //Falling only
CLK_PCKENR1=0x00;
CLK_PCKENR2=0x00;
PWR_CSR2=0X02;//内部参考电压 关闭 以降低功耗0X03
}
这是我进入停机模式前的IO配置,PD2为外部中断用来唤醒
|