一般定义在xxx_gpio.h文件中。 #define GPIO_Speed_2MHz GPIO_Speed_Level_1 /*!< I/O output speed: Low 2 MHz */#define GPIO_Speed_10MHz GPIO_Speed_Level_2 /*!< I/O output speed: Medium 10 MHz */#define GPIO_Speed_50MHz GPIO_Speed_Level_3 /*!< I/O output speed: High 50 MH...
复用功能:推挽(Push-pull),开漏(open-drain)和上拉、下拉 1.3 GPIO输出速率(GPIO Output-speed) 简单来说就是引脚电平变化速度,这个速度指的是从上升沿(下降沿)速度,高速可能会导致EMI噪声并消耗STM32资源,最好是匹配外设的速度。比如说低速比较适合1HZ的点平变化,当然如果我们使用作为SPI通信使用时,速度可能达到4...
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//速度 50MHz GPIO_Init(GPIOB, GPIO_InitStructure);//根据设定参数配置 GPIO IO 口速度设置有三个可选值: typedef enum { GPIO_Speed_10MHz, GPIO_Speed_2MHz, GPIO_Speed_50MHz }GPI...
速度(Speed):选择 GPIO 的驱动能力(低速、中速、高速、超高速)。复用功能(Alternate Function):如...
HSGPIO 是 High-Speed GPIO 缩写,有时候也叫紧耦合 GPIO 或者单时钟周期 GPIO,简单说就是其模块(IP)时钟源速度高于普通 GPIO 时钟源,因此我们可以以更高频率访问其模块寄存器。下表列出了 i.MXRT 各型号上 HSGPIO 分布: 我们以 i.MXRT1060 为例,翻看其参考手册 CCM 时钟模块章节,可以看到普通 GPIO1-5 的...
在嵌入式系统和微控制器应用中,GPIO(General-Purpose Input/Output)是一个重要的组件。它允许我们控制数字信号的输入和输出,从而实现各种硬件交互和控制任务。本文将详细介绍GPIO的输入输出模式,并通过测试代码进行验证。一、GPIO的输入模式 浮空输入:多用于外部按键输入,io状态不确定完全由外部输入决定。 上拉输入:IO口...
先说说gpio口speed的问题,这个一般是用来定义gpio口上升沿或者下降沿的时间,频率越高,上升沿下降沿时间越短,但是其噪音也就越大,因此,如果没有特别的需求,该值应该不要配置太高。在技术手册里,其给了3个速度选择,库函数的相应表现形式如下: /** * @brief output maximum frequency selection ...
GPIO output level 设定引脚输出的初始状态是高电平还是低电平 GPIO mode 设定引脚的输出模式为开漏还是推挽输出 GPIO Pull-up/Pull-down 设定引脚的上拉与下拉状态 Maximum output speed 设定引脚的输出速度 User Label 设定用户标签 这里我们只需要在User Label里写一个LED就行了,这样方便后续的开发,在以后开发中如...
GPIO是General Purpose Input Output(通用输入输出端口)的缩写,单片机中是通过寄存器来控制GPIO的工作方式的,常见的STM32常用寄存器有如下四种: 1.配置寄存器: 端口模式寄存器GPIOx_MODER,控制GPIO的工作模式; 端口输出寄存器GPIOx_OTYPER,控制GPOIO的输出类型; ...
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;// 开漏输出模式GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;// GPIO速度设置为高速HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 复用推挽输出(AF Push-Pull Output):复用推挽输出模式允许将GPIO引脚用作特定外设功能。在该模式下,引脚可以输出高电平或低电平,并...