dentra
New member
Всем привет!
Есть модуль c ESP32-S2 на нем распаян USB, ноги которого напрямую подключены к пинам GPIO19 (USB_DM) и GPIO20 (USB_DP). Мне необходимо задействовать эти ноги как обычный UART.
К сожалению все не просто, и связано это с внутренней подтяжкой, например в даташите на C3 (тут пины другие) прямо написано:
и для того чтобы активировать эту возможность необходимо выполнить:
для S3, в даташите ничего нет, но на просторах интернета удалось выяснить, что необходимо сбросить другой регистр:
На cтике LilyGo T-Dongle-S3, это проверено и 100% работает.
Вопрос к гуру, как программно активировать пины GPIO19 и GPIO20 в режим UART на ESP32-S2?
Есть модуль c ESP32-S2 на нем распаян USB, ноги которого напрямую подключены к пинам GPIO19 (USB_DM) и GPIO20 (USB_DP). Мне необходимо задействовать эти ноги как обычный UART.
К сожалению все не просто, и связано это с внутренней подтяжкой, например в даташите на C3 (тут пины другие) прямо написано:
Код:
USB - GPIO18 and GPIO19 are USB pins.
The pull-up value of a USB pin is controlled by the pin’s pull-up value together with USB pull-up value.
If any of the two pull-up values is 1, the pin’s pull-up resistor will be enabled.
The pull-up resistors of USB pins are controlled by USB_SERIAL_JTAG_DP_PULLUP bit.
Код:
CLEAR_PERI_REG_MASK(USB_SERIAL_JTAG_CONF0_REG, USB_SERIAL_JTAG_DP_PULLUP);
Код:
CLEAR_PERI_REG_MASK(USB_DEVICE_CONF0_REG, USB_DEVICE_USB_PAD_ENABLE);
Вопрос к гуру, как программно активировать пины GPIO19 и GPIO20 в режим UART на ESP32-S2?