打印
[AT32F403/403A]

GPIO设为开漏输出,但是内部上拉电阻无效

[复制链接]
978|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dopod577w|  楼主 | 2022-6-6 10:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用AT-START-F403A评估板,在模板程序上稍加改动,设置PB9为输出GPIO,开漏,上拉电阻
但是输出一直是0,而改成PUSH_PULL之后,就能输出高低电平,为什么?

        gpio_default_para_init(&gpio_init_struct);

        gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
        gpio_init_struct.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN; <---
//        gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;  <---
        gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
        gpio_init_struct.gpio_pins = GPIO_PINS_9;
        gpio_init_struct.gpio_pull = GPIO_PULL_UP;
        gpio_init(GPIOB, &gpio_init_struct);

使用特权

评论回复
沙发
dopod577w|  楼主 | 2022-6-6 11:23 | 只看该作者
看手册,好像输出的时候设置为OC模式是没有上拉下拉电阻的,太坑爹了

使用特权

评论回复
评论
zlf1208 2022-6-7 08:12 回复TA
不肯爹啊,有上拉还叫OC吗?! 
板凳
muyichuan2012| | 2022-6-6 11:37 | 只看该作者
和ST103一样,如果设置为开漏,需要外部加上拉电阻。

使用特权

评论回复
地板
海洋无限| | 2022-6-6 12:18 | 只看该作者
设定是开漏哎

使用特权

评论回复
5
xch| | 2022-6-6 12:52 | 只看该作者
我这么使用:
用需要上拉时,切换为输入模式,      IOFC = 10 ;ODT =  1;
需要输出低电平时,切换为输出模式。ODT =0; IOFC  = 00 or 01;

使用特权

评论回复
6
dopod577w|  楼主 | 2022-6-6 13:14 | 只看该作者
xch 发表于 2022-6-6 12:52
我这么使用:
用需要上拉时,切换为输入模式,      IOFC = 10 ;ODT =  1;
需要输出低电平时,切换为输出模 ...

是个好办法!

使用特权

评论回复
7
cjseng| | 2022-6-6 13:19 | 只看该作者
开漏就是没有上拉电阻的意思啊

使用特权

评论回复
8
tpgf| | 2022-7-5 11:51 | 只看该作者
请问可以在哪里购买评估板啊

使用特权

评论回复
9
wakayi| | 2022-7-5 12:04 | 只看该作者
开漏输出的外部应该如何连接呢

使用特权

评论回复
10
wowu| | 2022-7-5 12:12 | 只看该作者
外部不接电阻的话 需要接什么器件呢

使用特权

评论回复
11
xiaoqizi| | 2022-7-5 12:18 | 只看该作者
一般不指望内部上拉

使用特权

评论回复
12
木木guainv| | 2022-7-5 12:46 | 只看该作者
也是一个好的解决办法

使用特权

评论回复
13
磨砂| | 2022-7-5 13:30 | 只看该作者
怎么也需要加外部的上拉电阻的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

25

帖子

2

粉丝