STM32单片机IO引脚配置方式
单片机引脚配置方式方式一:直接写寄存器来配置的话,那么,看上手册,给“配置寄存器”对应的位写0或者1就可以达到目的。
方式二:调用库函数进行配置,对结构体了解
选择好GPIO_Mode之后,就要使用GPIO_Init()函数来配置,你可以打开这个配置函数,实际上也是在对“配置寄存器”进行写操作。
某个引脚功能配置方式:
1、作为普通GPIO输入
根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。
在引脚上没有外界干扰的情况下,上拉就是把引脚设置为高电平了,你用万用表量上拉引脚,就是高电平;下拉就是把引脚设置为低电平了,你用万用表量下拉引脚,就是低电平,也就是0V。
2、作为普通GPIO输出
根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。
设置为推挽,就是提高了引脚的输出电流能力。设置为开漏,就是提高了引脚的输入电流能力。然后还要知道,设置为开漏时,如果外部不加上拉电阻,默认输出是低电平。
3、作为普通模拟输入
配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。
4、作为内置外设的输入
根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。
复用就是该引脚可以作为SPI引脚I2C引脚等其他功能的引脚。
5、作为内置外设的输出
根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块
之前最初学习STM32的时候,真就是寄存器弄起的,可太麻烦了
其实可以看官方提供的库函数就好了,就不用研究寄存器了
你可以用cubemx来配置的啊,很方面的
我觉得现在开发一个程序都太简单了,很多都带有可视化配置操作
用库函数就是对的,因为这样能少走很多弯路
其实现在不咋用寄存器,是因为维护起来麻烦,程序不便于理解
我觉得ST的生态做得很好了,就连基础配置方面弄得都挺好
如何配置,其实看库函数中的说明就好了
如果楼主有精力,其实可以看看cubemx,这个比库函数还有意思
结构体属实可以,能省一些资源,而且看着清晰明了
说实话,不能看寄存器,配置可太麻烦了
现在自从有了cubemx, 数据手册都可以不用看了,哈哈
这IO配置就是基础,属实得好好看看
其实用库函数的话,就简单多了,看注释就知道怎么使用了
ST的配置还是比较容易的,寄存器也能看懂,库函数还比较简单
话说,寄存器操作真的能比库函数快很多吗?
配置好像就这几种模式吧,还算比较好记的
一般情况,输出大多数都是推挽输出吧,是不是?
页:
[1]
2