STM32CUBEMX开发GD32F303(4)----GPIO输出模式,速率测试、开漏和输出说明

发布者:JoyfulHearted最新更新时间:2024-11-15 来源: elecfans关键字:STM32CUBEMX  GD32F303  速率测试  开漏 手机看文章 扫描二维码
随时随地手机看文章

概述

以STM32CUBEMX创建STM32F103工程,同时移植在GD32F303中,同时通过GD32303C_START开发板内进行验证。 需要样片的可以加Qun申请:615061293。

硬件准备

这里准备了2块开发板进行验证,分别是GD32303C_START开发板。


在这里插入图片描述

开发板管脚配置

在GD32303C_START中的LED管脚配置如下所示。

在这里插入图片描述

不同速率对应的波形

以PC3为例,在推挽输出无上下拉情况下,输出速率主要有4种,一般的低端MCU只有3种,没有Very High。 下面是ST的配置图。

在这里插入图片描述在固件库中,定义如下所示。在这里插入图片描述

LOW速率

在这里插入图片描述

Medium速率

在这里插入图片描述

High速率

在这里插入图片描述

Very High速率

在这里插入图片描述

可以看到,在不同速率下,端口的反应速度不一样,设置最大输出速率越大,响应越快,对应的噪声也就越大。

输出方式

在这里插入图片描述在这里插入图片描述

在上图中,P-MOS带了一个⚪,说明是低电平导通。

在这里插入图片描述

上图是GPIO的示意图,有输入和输出,如果简化为输出,则如下所示。

在这里插入图片描述

模拟文件下载

https://download.csdn.net/download/qq_24312945/85250172

推挽输出

推挽输出的内部电路大概是下图这个样子,由一个P-MOS和一个N-MOS组合而成,同一时间只有一个管子能够进行导通。

在这里插入图片描述

当输出高电平时候,P-MOS导通,N-MOS截至,此时电源电流入R5。

在这里插入图片描述

当输出低电平时候,N-MOS导通,P-MOS截至,此时电流流入R5的为0。

在这里插入图片描述

线与

推挽输出高电平与电源电压基本上没有压差 高低电平的驱动能力较强,推挽输出的电流都能达到几十mA。 但是无法进行线与操作,做进行线与操作,那么电源和地就会短路,因为mos管电阻很小。 看下图可以得知,电流通过Q3的P-MOS流到Q2的N-MOS,最终回到地。

在这里插入图片描述

开漏输出

开漏输出又叫漏极开漏输出简化后可以看作如下的示意图。

在这里插入图片描述

若还是使用上面推挽的电路图,当N-MOS为低电平时候,那么他的输出就是一个高阻态。 可以看到,R5没有电流通过,电压也是接近于0,所以GPIO无法对外输出高电平。

在这里插入图片描述

此时需要增加一个上拉,这样的话上拉的电流就会流出去。 所以在开漏输出情况下,需要增加一个上拉才能进行输出高电平。

在这里插入图片描述

对于输出低电平,他和推挽输出差不多,电流通过N-MOS流到地中。

在这里插入图片描述

上图是没有增加上拉,但是开漏输出模式都需要增加,增加上拉之后如下图所示。 电流通过N-MOS流回地中。

在这里插入图片描述

输出电压

由于推挽输出在输出的时候是通过单片机内部的电压,所以他的电压是不能改变的。 但是开漏输出是通过外部上拉的电压,所以可以改变开漏输出模式下的电压大小。 下图是当上拉为5V时候,也是可以驱动出去的,这个上拉电压最大值需要看单片机的耐压。

在这里插入图片描述


关键字:STM32CUBEMX  GD32F303  速率测试  开漏 引用地址:STM32CUBEMX开发GD32F303(4)----GPIO输出模式,速率测试、开漏和输出说明

上一篇:RT-Thread开发GD32F450使用scons添加新的文件夹
下一篇:GD32F303固件库开发(5)----GPIO输出模式,速率测试、开漏和输出说明

推荐阅读最新更新时间:2026-03-20 13:55

STM32CUBEMX开发GD32F303(4)----GPIO输出模式速率测试输出说明
概述 以STM32CUBEMX创建STM32F103工程,同时移植在GD32F303中,同时通过GD32303C_START开发板内进行验证。 需要样片的可以加Qun申请:615061293。 硬件准备 这里准备了2块开发板进行验证,分别是GD32303C_START开发板。 开发板管脚配置 在GD32303C_START中的LED管脚配置如下所示。 不同速率对应的波形 以PC3为例,在推挽输出无上下拉情况下,输出速率主要有4种,一般的低端MCU只有3种,没有Very High。 下面是ST的配置图。 在固件库中,定义如下所示。 LOW速率 Medium速率 High速率 Very High速率 可以
[单片机]
<font color='red'>STM32CUBEMX</font>开发<font color='red'>GD32F303</font>(4)----<font color='red'>GPIO</font><font color='red'>输出</font><font color='red'>模式</font>,<font color='red'>速率</font><font color='red'>测试</font>、<font color='red'>开</font><font color='red'>漏</font>和<font color='red'>输出</font><font color='red'>说明</font>
GD32F303固件库开发(5)----GPIO输出模式速率测试输出说明
概述 以STM32CUBEMX创建STM32F103工程,同时移植在GD32F303中,同时通过GD32303C_START开发板内进行验证。 需要样片的可以加Qun申请:615061293。 硬件准备 这里准备了2块开发板进行验证,分别是GD32303C_START开发板。 样品申请 https://www.wjx.top/vm/wFGhGPF.aspx# 开发板管脚配置 在GD32303C_START中的LED管脚配置如下所示。 不同速率对应的波形 以PC3为例,在推挽输出无上下拉情况下,输出速率主要有4种,一般的低端MCU只有3种,没有Very High。 下面是ST的配置图。 在固件库中,定义如下所示。
[单片机]
<font color='red'>GD32F303</font>固件库开发(5)----<font color='red'>GPIO</font><font color='red'>输出</font><font color='red'>模式</font>,<font color='red'>速率</font><font color='red'>测试</font>、<font color='red'>开</font><font color='red'>漏</font>和<font color='red'>输出</font><font color='red'>说明</font>
STM32CUBEMX开发GD32F303(5)----GPIO输出函数说明
概述 本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过GD32303C_START开发板内进行验证。 样品申请 https://www.wjx.top/vm/mB2IKus.aspx 硬件准备 这里准备了2块开发板进行验证,分别是GD32303C_START开发板。 开发板管脚配置 在GD32303C_START中的LED管脚配置如下所示。 HAL_GPIO_Init()函数 该函数的作用是根据GPIO_Init中指定的参数初始化GPIOx外设。 由于是对管脚进行初始化定义,一般在mian()函数初始化中。 而在主程序的初始化中,有个注释是初始化所有配置的外设,点击查看这
[单片机]
<font color='red'>STM32CUBEMX</font>开发<font color='red'>GD32F303</font>(5)----<font color='red'>GPIO</font><font color='red'>输出</font>函数<font color='red'>说明</font>
STM32CUBEMX开发GD32F303(8)----USART收发配置
概述 本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过GD32303C_START开发板内进行验证。需要GD样片的可以加Q_QUN申请:6_15061293。 硬件准备 这里准备了GD32303C_START开发板进行验证。 STM32CUBEMX配置 勾选中断。 keil配置 microlib 进行了高度优化以使代码变得很小。 它的功能比缺省 C 库少,并且根本不具备某些 ISO C 特性。 某些库函数的运行速度也比较慢,如果要使用printf(),必须开启。 串口接收发送函数 一般情况下,串口接收发送函数有如下所示。 ● HAL_UART_Transmit();
[单片机]
<font color='red'>STM32CUBEMX</font>开发<font color='red'>GD32F303</font>(8)----USART收发配置
STM32CUBEMX开发GD32F303(10)----双ADC轮询模式扫描多个通道
概述 本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过GD32303C_START开发板内进行验证。需要GD样片的可以加Q_QUN申请:615061293。 本章主要配置,双ADC轮询模式扫描多个通道,通过串口进行打印。 查阅手册可以得知,PA9、PA10为串口0的输出和输入口。 ADC通道配置 ADC1 IN0(PA0) IN3(PA3) IN4(PA4) ADC2 IN7(PA7) IN8(PB0) IN9(PB1) 生成例程 这里准备了GD32303C_START开发板进行验证。 STM32CUBEMX配置 勾选中断。 ADC1配置。 ADCs_Co
[单片机]
<font color='red'>STM32CUBEMX</font>开发<font color='red'>GD32F303</font>(10)----双ADC轮询<font color='red'>模式</font>扫描多个通道
STM32CUBEMX开发GD32F303(3)----点亮LED
概述 以 STM32 CUBEMX创建STM32F103工程,同时移植在 GD32 F303中,同时通过J-LINK烧录GD32303C_START和GD32303E_EVAL开发板内进行验证。需要样片的可以加群申请:6_15061293。 芯片 申请 芯片和开发板都可免费申请,暂时只能以公司名义免费申请,填下下面表格即可。 硬件 准备 这里准备了2块开发板进行验证,分别是GD32303C_START和GD32303E_EVAL开发板。 开发板管脚配置 在GD32303C_START中的 LED 管脚配置如下所示。 在GD32303E_EVALT中的LED管脚配置如下所示。 STM32CUBEMX配置 以ST
[单片机]
<font color='red'>STM32CUBEMX</font>开发<font color='red'>GD32F303</font>(3)----点亮LED
基于STM32的八种GPIO输入输出模式解析
最近在看数据手册的时候,发现STM32的GPIO输入输出模式的配置种类有8种之多(输入和输入各4种): (1)GPIO_Mode_AIN模拟输入 (2)GPIO_Mode_IN_FLOATING浮空输入 (3)GPIO_Mode_IPD下拉输入 (4)GPIO_Mode_IPU上拉输入 (5)GPIO_Mode_Out_OD开漏输出 (6)GPIO_Mode_Out_PP推挽输出 (7)GPIO_Mode_AF_OD复用开漏输出 (8)GPIO_Mode_AF_PP复用推挽输出 我们平时接触的最多的也就是推挽输出、开漏输出、上拉输入这三种,但对于各种模式下IO口的内部电路和典型应用,STM32的数据手册中也未曾做过详细的说明和归纳
[单片机]
基于STM32的八种<font color='red'>GPIO</font>输入<font color='red'>输出</font><font color='red'>模式</font>解析
STM32的8种GPIO输入输出模式深入详解
输入模式 -输入浮空(GPIO_Mode_IN_FLOATING) -输入上拉(GPIO_Mode_IPU) -输入下拉(GPIO_Mode_IPD) -模拟输入(GPIO_Mode_AIN) 输出模式 -开漏输出(GPIO_Mode_Out_OD) -开漏复用功能(GPIO_Mode_AF_OD) -推挽式输出(GPIO_Mode_Out_PP) -推挽式复用功能(GPIO_Mode_AF_PP) 输入浮空:浮空就是逻辑器件与引脚即不接高电平,也不接低电平。由于逻辑器件的内部结构,当它输入引脚悬空时, 相当于该引脚接了高电平。一般实际运用时,引脚不建议悬
[单片机]
STM32的8种<font color='red'>GPIO</font>输入<font color='red'>输出</font><font color='red'>模式</font>深入详解
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved