STM32单片机同时初始化GPIOA和GPIOB

要同时初始化STM32F1xx的GPIOA和GPIOB,您可以按照以下步骤进行:

首先,在代码中包含stm32f1xx.h头文件例如:

   #include "stm32f1xx.h"

然后,使能GPIOA和GPIOB的时钟,例如:

   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE);

这将使能GPIOA和GPIOB的时钟,以便进行配置和使用。需要注意的是,STM32F103C8T6使用APB2总线驱动GPIOA和GPIOB。

接下来,设置GPIOA和GPIOB的引脚模式和输出类型,例如:

   GPIO_InitTypeDef GPIO_InitStruct;

   GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 ; // 选择需要配置的GPIO引脚
   GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;

   GPIO_Init(GPIOA, &GPIO_InitStruct); // 初始化GPIOA

   GPIO_InitStruct.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_3; // 选择需要配置的GPIO引脚

   GPIO_Init(GPIOB, &GPIO_InitStruct); // 初始化GPIOB

注意,需要分别针对GPIOA和GPIOB进行初始化,并且每个GPIO引脚都需要在GPIO_InitStruct中进行配置。

最后,您可以设置GPIOA和GPIOB的数据值,例如:

   GPIO_SetBits(GPIOA, GPIO_Pin_0);
   GPIO_ResetBits(GPIOB, GPIO_Pin_3);

 

这将设置GPIOA的第0个引脚值为高电平,GPIOB的第3个引脚值为低电平。文章来源地址https://uudwc.com/A/vNpbN

原文地址:https://blog.csdn.net/chengjienet/article/details/130789402

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年08月06日 07:39
下一篇 2023年08月06日 07:42