*///例子RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOC|RCC_APB2Periph_ADC2,ENABLE);//打开GPIOA时钟、GPIOC时钟和ADC2时钟 2、函数GPIO_Init /* 函数名:GPIO_Init 函数原型:void GPIO_Init(GPIO_TypeDef * GPIOx,GPIO_InitTypeDef * GPIO_InitStruct) 功能描述:根据GPIO_InitStruct...
#define GPIOF_BASE (APB2PERIPH_BASE + 0x1C00) //GPIOF基地址 #define GPIOG_BASE (APB2PERIPH_BASE + 0x2000) //GPIOG基地址 #define GPIOx_CRL (GPIOx_BASE + 0X00) //端口配置低寄存器 #define GPIOx_CRH (GPIOx_BASE + 0X04) //端口配置高寄存器 #define GPIOx_IDR (GPIOx_BASE + 0...
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal); void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);...
voidGPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal); 该函数一般用来往一次性一个 GPIO 的多个端口设值。 四.寄存器BSRR 这个寄存器是端口位设置/清除寄存器,用来设置 GPIO 端口的输出位是 1 还是 0,和ODR寄存器有着类似的作用。描述如下图所示: 该寄存器通过举例子可以很清楚了解它的使用方法。例如你要...
图1 GPIO应用设计 二、API函数 STM32有多种类型的库,本节所介绍的STM32的GPIO函数接口是STM32标准库的函数接口,接口总共分为4种类型,如图2所示。 图2 GPIO库函数接口分类 1、关键参数 在详细介绍各个API函数接口功能之前,我们需要对函数接口中使用到的关键的几个参数进行分析。
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal); void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal); void GPIO_PinLockConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); void GPIO_EventOutputConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource); ...
01. GPIO固件库概述 stm32f4xx_gpio.h GPIO相关函数和类型的声明 stm32f4xx_gpio.c GPIO相关函数具体实现。 02. GPIO相关类型 GPIO相关的类型几乎都在stm32f4xx_gpio.h文件中。 GPIO的模式 /** * @brief GPIO Configuration Mode enumeration ...
1.1 GPIO工作原理 要想实现流水灯,首先必须了解CPIO的工作原理。GPIO的基本结构如图1-1。 图1-1 GPIO的基本结构 STM32 的 IO 口可以由软件配置成如下 8 种模式: 输入模式 浮空输入:浮空(floating)就是逻辑器件的输入引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引...
void GPIO_ResetBits(GPIOA, GPIO_Pin_2);对应端口为低电平 void GPIO_WriteBit(GPIOx, GPIO_Pin_x, RESET低/SET高电平 ); void GPIO_Write( GPIOx, 16进制地址控制所有端口); 3.GPIO端口模式 GPIO_Mode_AIN = 0x0, GPIO_Mode_IN_FLOATING = 0x04,浮空状态 ...
HAL_GPIO_WritePin();HAL_GPIO_WritePin(GPIOA,GPIO_PIN_1,GPIO_PIN_RESET);HAL_GPIO_ReadPin();HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_1,GPIO_PIN_RESET);HAL_GPIO_TogglePin();HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_1); 下面我们来看一看他们各自是如何好、实现的因为HAL_GPIO_Write已经介绍过了所以我们从另...