作者共发了5篇帖子。 内容转换:不转换▼
 
点击 回复
821 4
GPIO_CRH/CRL配置方法
一派护法 十九级
1楼 发表于:2016-11-22 23:01
每1位16进制数表示一个I/O端口。
1为10MHz推挽输出(推挽输出适合直接驱动)(复用为9)
2为2MHz推挽输出(复用为a)
3为50MHz推挽输出(复用为b)

5为10MHz开漏输出(开漏输出适合接三极管基极)(复用为d)
6为2MHz开漏输出(复用为e)
7为50MHz开漏输出(复用为f)

0为模拟输入
4为无默认值的输入
8为带上下拉的输入(ODR=0为下拉,1为上拉),上拉输入表示默认值为1,下拉输入表示默认值为0
c被保留
一派护法 十九级
2楼 发表于:2016-11-22 23:04
设置的时候用8位的十六进制数就行了,每一位代表一个I/O口。
例如:
GPIOB->CRL = 0x11111111;
就把PB7~0都设为了10MHz推挽输出。最低位为PB0

CRH对应PB15~8
一派护法 十九级
3楼 发表于:2016-11-22 23:06
当使用带上下拉电阻的输入模式时,该端口对应的ODR位的值就表示默认的输入电平。
当该端口悬空时,IDR=ODR。否则IDR就等于输入的电平值。
一派护法 十九级
4楼 发表于:2016-11-22 23:11
最常用的就是1、2、3(输出),8(输入)。
一派护法 十九级
6楼 发表于:2017-1-15 14:16
【推挽与开漏的区别】
推挽输出:可以输出高质量的低电平和高电平
开漏输出:可以输出高质量的低电平,不能输出高电平(只能输出高阻态)。

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:821 回复数:4
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2017-1-15 14:16
 
©2010-2024 Arslanbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。