設置 | 登錄 | 註冊

目前共有5篇帖子。

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
【推挽与开漏的区别】
推挽输出:可以输出高质量的低电平和高电平
开漏输出:可以输出高质量的低电平,不能输出高电平(只能输出高阻态)。

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。