1 void GPIO_Configuration(void) 2 { 3 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE); 4 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE); 5 6 /* Configure ADC Channel as analog input */ 7 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 ; 8 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN; 9 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; 10 GPIO_Init(GPIOB, &GPIO_InitStructure); 11 12 /*GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; 13 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; 14 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 15 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; 16 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ; 17 GPIO_Init(GPIOA, &GPIO_InitStructure); 18 GPIO_PinAFConfig(GPIOA, GPIO_PinSource9, GPIO_AF_2); 19 20 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;// 21 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; 22 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 23 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; 24 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN ; 25 GPIO_Init(GPIOA, &GPIO_InitStructure); */ 26 27 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_1 ;// 28 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; 29 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; 30 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; 31 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN; 32 GPIO_Init(GPIOA, &GPIO_InitStructure); 33 34 35 36 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;// 37 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN; 38 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //外部电路上拉,设置为上拉 39 GPIO_Init(GPIOA, &GPIO_InitStructure); 40 41 42 43 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_7|GPIO_Pin_9|GPIO_Pin_10;// 44 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN; 45 GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_DOWN ; 46 GPIO_Init(GPIOA, &GPIO_InitStructure); 47 }