typedefenum{GPIO_Low_Speed=0x00,//GPIO_Speed_2MHzGPIO_Medium_Speed=0x01,//GPIO_Speed_25MHzGPI...
typedefenum{GPIO_Low_Speed=0x00,//GPIO_Speed_2MHzGPIO_Medium_Speed=0x01,//GPIO_Speed_25MHzGPIO_Fast_Speed=0x02,//GPIO_Speed_50MHzGPIO_High_Speed=0x03//GPIO_Speed_100MHz}GPIOSpeed_TypeDef; 速度高的IO耗电大、噪声也大,速度低的IO耗电小、噪声也小。使用合适的速度可以降低功耗和噪声。高频的...
(GPIO_TypeDef * GPIOx, uint32_t Pin, uint32_t Speed) __STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed (GPIO_TypeDef * GPIOx, uint32_t Pin) //下面是操作,上面是配置 __STATIC_INLINE void LL_GPIO_SetPinOutputType (GPIO_TypeDef * GPIOx, uint32_t PinMask, uint32_t OutputType) __...
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_OUT; 3、GPIO_Speed 顾名思义,接下来要配置的是GPIO的频率或速度,事实上芯片为我们提供了4种速度模式 typedefenum{ GPIO_Low_Speed =0x00,/*!< Low speed */GPIO_Medium_Speed =0x01,/*!< Medium speed */GPIO_Fast_Speed =0x02,/*!< Fast speed */GPIO_...
GPIO是STM32非常重要的功能,在大多数控制系统中都会使用到GPIO,GPIO【General-purpose input/output】,通用输入输出端口,可以用于输出高低电平,也可以作为输入采集外部电平。 在我这块开发板上可以看到控制LED引脚在PF9和PF10引脚上,同时LED二极管的一端为VCC3.3,我们只需要控制另一端将其拉低或者升高就可以控制其亮...
B端口输出速度寄存器(OSPEEDR) 用于设置IO的输出速度 B端口上拉/下拉寄存器(PUPDR) 用于设置上拉/下拉电阻 B8种工作模式对应的配置 B端口输入数据寄存器(IDR) 用于读取IO引脚的电平 B端口输出数据寄存器(ODR) 用于设置IO引脚输出的电平 B端口置位/复位寄存器(BSRR) ...
这里有两栏需要注意,High Speed Clock和Low Speed Clock因为我吗一般只用外部时钟所以如我这样配置就行了,很多教程只喜欢开一个 HSE 不过我的习惯是都开。至于下面的Master Clock Output这里暂时先不讲,这是一个很重要的功能在故障排查的时候。 这样我们就设置好了时钟吗?
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO...
GPIO_InitStruct.Speed=LL_GPIO_SPEED_FREQ_LOW; 3、GPIO不使用时禁用寄存器时钟 如果某个GPIO组不需要长时间使用,请禁用其时钟。 禁用将不常用的GPIO寄存器时钟,例程如下所示(LL库): 代码语言:javascript 复制 LL_IOP_GRP1_DisableClock(LL_IOP_GRP1_PERIPH_GPIOA|LL_IOP_GRP1_PERIPH_GPIOB); ...
分别对应STM32 的 INPUT OUTPUT AF AN 4种模式,但是speed 这里,stm32 的hal库定义位 #define GPIO_SPEED_FREQ_LOW (0x00000000U) /*!< range up to 5 MHz, please refer to the product datasheet */ #define GPIO_SPEED_FREQ_MEDIUM (0x00000001U) /*!< range 5 MHz to 25 MHz, please refer to...