野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10590|回复: 2

新手入门,关于GPIO配置问题

[复制链接]
发表于 2017-3-29 22:32:31 | 显示全部楼层 |阅读模式
一个小问题
为啥在图1中GPIOMODE_TypeDef 配置为8bit,例如配置引脚为下拉输入模式ox28,其二进制为: 0010 1000,是8bit,而根据图2,STM32参考手册中,每个引脚的控制只需要4个bit?



图1

图1

图2

图2
回复

使用道具 举报

发表于 2017-3-30 09:01:08 | 显示全部楼层
库里用的是自己定义的一些宏,主要是用来区分功能,GPIO_Init函数调用的时候不是直接把它写入寄存器的,它会处理后再写,你可以看看函数的实现
回复 支持 反对

使用道具 举报

发表于 2017-3-31 19:09:35 | 显示全部楼层
补充一下,GPIO_MODE_XX的值有8bit,但其中只有D3与D2位会写入CRL或者CRH中。并且,这两位会与GPIO_SPEED的值刚好凑够四位,再一起写入CRL或者CRH。现在,你再看一下代码,就知道怎么回事了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-13 19:51 , Processed in 0.031891 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表