关于stm32f103的GPIO口的问题

2019-08-16 22:36发布

各位大神,我是新手,有两个问题需要问一下。如图,库函数开发模式中,关于gpio口模式的结构体,里面的对应每种模式的数字是怎么来的?是寄存器的值吗?还有,我是寄存器版本和库函数版本对照着看的,先看寄存器版本,弄懂了以后再看库函数版本的,那么库函数中每个函数的实现方式需要仔细研究吗?有的函数实现方法真是太难懂了。
typedef enum
{ GPIO_Mode_AIN = 0x0,
  GPIO_Mode_IN_FLOATING = 0x04,
  GPIO_Mode_IPD = 0x28,
  GPIO_Mode_IPU = 0x48,
  GPIO_Mode_Out_OD = 0x14,
  GPIO_Mode_Out_PP = 0x10,
  GPIO_Mode_AF_OD = 0x1C,
  GPIO_Mode_AF_PP = 0x18
}GPIOMode_TypeDef;

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
YFJ1993
1楼-- · 2019-08-17 02:56
我觉得寄存器版本都弄懂了,说明基本上你对STM32的一些底层操作已经掌握了,那么对于库函数的话只要会用就好了,没有必要再去深究了,因为库函数的底层也是寄存器的操作,只是封装了一下的
虾兵蟹将
2楼-- · 2019-08-17 06:04
其实就是往相应寄存器中填值
meimengxing2014
3楼-- · 2019-08-17 06:45
 精彩回答 2  元偷偷看……
PsychoZy
4楼-- · 2019-08-17 06:46
想要看懂库函数是怎么实现个人觉得很不容易,但是你知道每个函数是通过给寄存器赋这个值然后达到什么目的,我觉得就够了。对了还要知道每个函数在哪个文件里,知道这几点你写程序就会很顺畅了

一周热门 更多>