天天看点

GD32F1系列特殊GPIO口用作通用IO口

1、查数据手册可知,特殊GPIO口PC13/PC14/PC15默认作为通用GPIO口使用

GD32F1系列特殊GPIO口用作通用IO口

 2、若在实际使用PC13/PC14/PC15作为通用GPIO口的过程中出现问题,可尝试禁用这些特殊引脚的其他功能,如下:

void light_gpio_init(void)
{
      /* enable the gpio clock */
	  rcu_periph_clock_enable(RCU_GPIOA);
	  rcu_periph_clock_enable(RCU_GPIOB);
	  rcu_periph_clock_enable(RCU_GPIOC);
	
	  rcu_periph_clock_enable(RCU_AF);
      rcu_periph_clock_enable(RCU_BKPI);
      rcu_periph_clock_enable(RCU_PMU);

      /* allow access to BKP domain */
      pmu_backup_write_enable();
	
	  bkp_deinit();

      /* disable the tamper pin */
      bkp_tamper_detection_disable();
	  
	  rcu_osci_off(RCU_LXTAL);
	  rcu_osci_off(RCU_HXTAL);

      gpio_init(GPIOA, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, 
                GPIO_PIN_1|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_11);
	  gpio_init(GPIOB, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, GPIO_PIN_5);
	  gpio_init(GPIOC, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_2MHZ, GPIO_PIN_13|GPIO_PIN_14);
		
      pmu_backup_write_disable();
}
           

继续阅读