嵌入式

STM32 PC13 PC14 PC15 复用为普通GPIO使用

STM32 PC13 PC14 PC15引脚电源是通过内部一个开关与VDD相连,所以在设置这三个引脚作为输出使用时,是有一些需要注意的地方的。手册中介绍说:
pc13_gpio.jpg
大意是PC13 PC14 PC15引脚供电是通过一个开关来控制的,这个开关驱动能力是非常有限的。电流仅限于3mA,所以是不允许这三个GPIO直接驱动大电流负载,如LED。而且在2MHz时,允许的最大负载电容在30pF

void gpioc_to_io(void) {

    GPIO_InitTypeDef GPIO_InitStructure;

    RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_GPIOC, ENABLE );
    RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE );

    PWR_BackupAccessCmd( ENABLE );                          /* 允许修改RTC和后备寄存器*/
    RCC_LSEConfig( RCC_LSE_OFF );                           /* 关闭外部低速时钟,PC14+PC15可以用作普通IO*/

    GPIO_InitStructure.GPIO_Pin =   GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
    GPIO_Init(GPIOC, &GPIO_InitStructure);
}

回复

This is just a placeholder img.