Page 1 of 1

求教,ESP32C3的IO0脚不能正确配置为输入脚

Posted: Tue Oct 11, 2022 12:33 pm
by tekmarine
我想把ESP32-C3S-kit上的IO0脚配置成普通的输入脚GPIO,但是测试发现这个脚的电平始终为0,内部上拉和外部上拉电阻都不能改变电平,由于IO0脚原本是RTC的外置晶振输入脚,技术手册说复位后为低电平,所以这个是不是和STM32的RTC脚一样,需要配置什么特别的寄存器才能转换为普通的GPIO?

代码很普通,就是配置0脚为输入,对于其他引脚有效,但对于0脚没用
void init_btn(void)
{
gpio_config_t io_conf;
io_conf.intr_type = GPIO_PIN_INTR_ANYEDGE;
io_conf.mode = GPIO_MODE_INPUT; //输入
io_conf.pull_down_en = GPIO_PULLDOWN_DISABLE; //禁止下拉
io_conf.pull_up_en = GPIO_PULLUP_ENABLE; //使能上拉

io_conf.pin_bit_mask = (1 << GPIO_NUM_0); //IO0脚

gpio_config(&io_conf);

gpio_isr_handler_add(0, prvButtonHandler0, (void *)0);

ESP_LOGI("SPX", "set pin 0");
// prvButtonHandler0(NULL);
}