搜索
您的当前位置:首页正文

GPIO常用配置

来源:意榕旅游网
GPIO常用配置(MCU:STM32F103C8T6,固件库:1.0):

AD:

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;

//AD配置为模拟输入

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;

GPIO_Init(GPIOC, &GPIO_InitStructure);

CAN:

/* Configure CAN pin: RX */

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;

//接收脚配置为上拉输入

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;

GPIO_Init(GPIOA, &GPIO_InitStructure);

/* Configure CAN pin: TX */

1

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;

//发送脚配置为复用推拉输出

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_Init(GPIOA, &GPIO_InitStructure);

EXTI:

/* Configure PB.09 as input floating (EXTI Line 9) */

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;

//作为外部中断时配置为浮空输入

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIOB, &GPIO_InitStructure);

I2C:

/* Configure I2C1 pins: SCL and SDA ----------------------------------------*/

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;

2

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

//SCL和SDA都配置为复用开漏输出

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;

GPIO_Init(GPIOB, &GPIO_InitStructure);

SPI:

/* Configure SPI1 pins: SCK, MISO and MOSI ---------------------------------*/

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

//配置为复用推拉输出

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_Init(GPIOA, &GPIO_InitStructure);

USART:

/* Configure USART2 RTS (PD.04) and USART2 Tx (PD.05) as alternate function push-pull */

3

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

//发送脚配置为推拉输出

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_Init(GPIOD, &GPIO_InitStructure);

/* Configure USART2 CTS (PD.03) and USART2 Rx (PD.06) as input floating */

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_6;

//接收脚配置为浮空输入

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIOD, &GPIO_InitStructure);

总结:普通IO口作为输入时配置为浮空输入(GPIO_Mode_IN_FLOATING),作为输出如果不需要从本口获取数据时配置为推拉输出(GPIO_Mode_Out_PP),需要读取数据时配置为开漏输出(GPIO_Mode_Out_OD)。

王伟

4

2011.10

5

因篇幅问题不能全部显示,请点此查看更多更全内容

Top