GPIO设为开漏输出,但是内部上拉电阻无效
用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);
看手册,好像输出的时候设置为OC模式是没有上拉下拉电阻的,太坑爹了 和ST103一样,如果设置为开漏,需要外部加上拉电阻。 设定是开漏哎 我这么使用:
用需要上拉时,切换为输入模式, IOFC = 10 ;ODT =1;
需要输出低电平时,切换为输出模式。ODT =0; IOFC= 00 or 01; xch 发表于 2022-6-6 12:52
我这么使用:
用需要上拉时,切换为输入模式, IOFC = 10 ;ODT =1;
需要输出低电平时,切换为输出模 ...
是个好办法! 开漏就是没有上拉电阻的意思啊 请问可以在哪里购买评估板啊 开漏输出的外部应该如何连接呢 外部不接电阻的话 需要接什么器件呢 一般不指望内部上拉 也是一个好的解决办法 怎么也需要加外部的上拉电阻的
页:
[1]