本帖最后由 quyifei 于 2013-1-16 20:05 编辑
这是我配置GPIOD和GPIOE的代码,也是仿照ST官方的GUI库函数的。
- GPIO_InitTypeDef GPIO_InitStructure;
- /* Enable FSMC, GPIOD, GPIOE clocks */
- RCC_AHB3PeriphClockCmd(RCC_AHB3Periph_FSMC, ENABLE);
- RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD | RCC_AHB1Periph_GPIOE
- , ENABLE);
- /* Set PD.00(D2), PD.01(D3), PD.04(NOE), PD.05(NWE), PD.07(NE1/NCS), PD.08(D13), PD.09(D14),
- PD.10(D15), PD.11(A16/RS), PD.14(D0), PD.15(D1) as alternate function push pull */
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_4 | GPIO_Pin_5 |GPIO_Pin_7|
- GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_14 |
- GPIO_Pin_15;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
- GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
- GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
- GPIO_PinAFConfig(GPIOD, GPIO_PinSource0 | GPIO_PinSource1 | GPIO_PinSource4 | GPIO_PinSource5 | GPIO_PinSource7 |
- GPIO_PinSource8 | GPIO_PinSource9 | GPIO_PinSource10| GPIO_PinSource11 | GPIO_PinSource14 |
- GPIO_PinSource15, GPIO_AF_FSMC);
- GPIO_Init(GPIOD, &GPIO_InitStructure);
-
- /*
- GPIO_SetBits(GPIOD, GPIO_Pin_5);
- GPIO_ResetBits(GPIOD, GPIO_Pin_5);
- GPIO_SetBits(GPIOD, GPIO_Pin_15);
- */
- /* Set PE.07(D4), PE.08(D5), PE.09(D6), PE.10(D7), PE.11(D8), PE.12(D9), PE.13(D10),
- PE.14(D11), PE.15(D12) as alternate function push pull */
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 |
- GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 |
- GPIO_Pin_15;
- GPIO_PinAFConfig(GPIOE, GPIO_PinSource7 | GPIO_PinSource8 | GPIO_PinSource9 | GPIO_PinSource10 |
- GPIO_PinSource11 | GPIO_PinSource12 | GPIO_PinSource13 | GPIO_PinSource14 |
- GPIO_PinSource15, GPIO_AF_FSMC);
- GPIO_Init(GPIOE, &GPIO_InitStructure);
|