STM32F0库函数初始化系列:GPIO配置
2020-08-21 来源:eefocus
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 }