[信息] GPIO_Init()函数的理解

[复制链接]
2282|27
 楼主| cr315 发表于 2023-12-21 15:33 | 显示全部楼层 |阅读模式
是不是没有端口初始化函数,前面设置的这些输出模式,速率什么的都还是系统原来的默认值,没有变化的嘛????
tpgf 发表于 2024-1-6 15:10 | 显示全部楼层
我觉得如果不改变的话 应该就是默认值
nawu 发表于 2024-1-6 15:52 | 显示全部楼层
没有变化 因为寄存器有默认的值
zljiu 发表于 2024-1-6 16:34 | 显示全部楼层
不知道引脚的默认模式是什么模式
tfqi 发表于 2024-1-6 22:01 | 显示全部楼层
没有变化 除非楼主配置了系统时钟  
gwsan 发表于 2024-1-6 22:33 | 显示全部楼层
只要没有进行过任何形式的初始化 那么就是默认设置
aoyi 发表于 2024-1-6 23:11 | 显示全部楼层
是的 时钟 模式等等都是默认的配置
hearstnorman323 发表于 2024-1-8 15:57 | 显示全部楼层
在STM32单片机中,GPIO_Init()函数是用于初始化GPIO端口的,如果不调用这个函数或者类似功能的HAL库函数来配置GPIO,那么相关端口的输入输出模式、速度(推挽或开漏输出的速度)、上下拉状态以及其他特殊功能等将保持为上电复位后的默认值。
mmbs 发表于 2024-1-8 17:39 | 显示全部楼层
在大多数微控制器编程的上下文中,如果你在使用GPIO之前没有进行适当的初始化,那么其默认状态通常是由微控制器的硬件决定的
sesefadou 发表于 2024-1-9 16:40 | 显示全部楼层
调用GPIO_Init()函数对GPIO进行初始化,那么前面设置的输出模式、速率等将保持系统默认值,不会发生预期的变化。
1988020566 发表于 2024-1-9 20:43 | 显示全部楼层

GPIO_Init() 函数是STM32微控制器中用于初始化GPIO(通用输入输出)端口的一个函数。这个函数的作用是设置GPIO端口的工作模式、输出类型、输出速度等参数
beacherblack 发表于 2024-1-10 07:51 | 显示全部楼层
GPIO_Init()函数是STM32CubeMX生成的GPIO初始化函数。
elsaflower 发表于 2024-1-10 12:15 | 显示全部楼层
在CubeMX中设置的GPIO配置(如输出模式、速率等)将在执行GPIO_Init()函数后应用到GPIO端口。如果未调用GPIO_Init()函数,那么GPIO端口将保持默认配置,而您在CubeMX中设置的配置将不会生效。
minzisc 发表于 2024-1-10 16:16 | 显示全部楼层
在调用GPIO_Init() 函数之前,需要先通过RCC_APB2PeriphClockCmd()函数使能相应GPIO端口的时钟
wilhelmina2 发表于 2024-1-10 16:41 | 显示全部楼层
GPIO_Init() 函数定义为一个结构体指针作为参数,这个结构体GPIO_InitTypeDef包含了GPIO引脚的配置信息,包括引脚编号、工作模式、速度以及上拉/下拉配置。例如,如果一个开发人员想要配置GPIOA的第四引脚为推挽输出,且最大翻转速率为50MHz,他们会这样做:

GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
beacherblack 发表于 2024-1-10 17:43 | 显示全部楼层
GPIO_Init()函数是IO引脚的初始化函数,用于进行每个引脚的初始化配置。
loutin 发表于 2024-1-10 20:48 | 显示全部楼层
没有对GPIO端口进行初始化,那么任何之前设置的输出模式、速率等设置都不会生效,端口将保持其默认状态。
mollylawrence 发表于 2024-1-10 22:22 | 显示全部楼层
通常会传递一些参数来设置GPIO端口的配置,例如:

设置端口模式(输入、输出、中断等)
设置输出速率
配置上拉/下拉电阻
配置输出类型(推挽或开漏)
配置复用功能等
claretttt 发表于 2024-1-11 12:56 | 显示全部楼层
GPIO_Init()这样的函数名可能代表不同的功能。然而,从字面上来解释,这个函数很可能是用来初始化GPIO(通用输入/输出)端口的。
mikewalpole 发表于 2024-1-11 20:31 | 显示全部楼层
首先使能了GPIOB端口的时钟,然后初始化了GPIOB端口的第0和第1位,分别为推挽输出和开漏输出模式,速度都设置为2MHz。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1469

主题

5010

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部