rename PIO_USB_PIN_DP to PIO_USB_DP_PIN and change from 2 to 20 & moved to board.h

add support for  PIO_USB_VBUSEN_PIN and its state.
This commit is contained in:
hathach 2022-11-06 14:44:18 +07:00
parent cb0ca6151b
commit 44e19aa3c7
2 changed files with 19 additions and 4 deletions

View File

@ -46,6 +46,18 @@
#define UART_RX_PIN PICO_DEFAULT_UART_RX_PIN
#endif
// PIO_USB_DP_PIN_DEFAULT is 0, which conflict with UART, change to other pin
#ifndef PIO_USB_DP_PIN
#define PIO_USB_DP_PIN 20
#endif
// VBUS enable pin and its active state
// #define PIO_USB_VBUSEN_PIN 22
#ifndef PIO_USB_VBUSEN_STATE
#define PIO_USB_VBUSEN_STATE 1
#endif
#ifdef __cplusplus
}
#endif

View File

@ -39,9 +39,6 @@
#include "pio_usb.h"
#endif
// PIO_USB_DP_PIN_DEFAULT is 0, which conflict with UART, change to 2
#define PICO_PIO_USB_PIN_DP 2
#ifdef BUTTON_BOOTSEL
// This example blinks the Picoboard LED when the BOOTSEL button is pressed.
//
@ -138,10 +135,16 @@ void board_init(void)
// Set the system clock to a multiple of 120mhz for bitbanging USB with pico-usb
set_sys_clock_khz(120000, true);
#ifdef PIO_USB_VBUSEN_PIN
gpio_init(PIO_USB_VBUSEN_PIN);
gpio_set_dir(PIO_USB_VBUSEN_PIN, GPIO_OUT);
gpio_put(PIO_USB_VBUSEN_PIN, PIO_USB_VBUSEN_STATE);
#endif
// rp2040 use pico-pio-usb for host tuh_configure() can be used to passed pio configuration to the host stack
// Note: tuh_configure() must be called before tuh_init()
pio_usb_configuration_t pio_cfg = PIO_USB_DEFAULT_CONFIG;
pio_cfg.pin_dp = PICO_PIO_USB_PIN_DP;
pio_cfg.pin_dp = PIO_USB_DP_PIN;
tuh_configure(BOARD_TUH_RHPORT, TUH_CFGID_RPI_PIO_USB_CONFIGURATION, &pio_cfg);
#endif