说明:在使用 STM32F103CBT6 配置了 PB3 为IO,测试时发现读取这个IO的电平时钟是0,即便单管脚上的电平是1,读取的数据任然是0,查规格书后发现PB3,PB4是JTAG复用口,要当普通IO用需要配置。
配置工具:STM32CubeMX
1.配置流程如下:
1.打开对应芯片的工程,配置PB3,PB4的IO功能

2.生成代码

3.提取相应的配置代码

文件中找到这段代码,复制到 MAIN函数中,在最开始的地方调用一次,PB3,PB4配置问题搞定。
void HAL_MspInit(void)
{
  /* USER CODE BEGIN MspInit 0 */
  /* USER CODE END MspInit 0 */
  __HAL_RCC_AFIO_CLK_ENABLE();
  __HAL_RCC_PWR_CLK_ENABLE();
  /* System interrupt init*/
  /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled 
  */
  __HAL_AFIO_REMAP_SWJ_NOJTAG();
  /* USER CODE BEGIN MspInit 1 */
  /* USER CODE END MspInit 1 */
} 
 
                


















