mirror of
https://github.com/hathach/tinyusb.git
synced 2025-02-07 05:54:11 +08:00
add saola button pin support, esp32 build with board_test
This commit is contained in:
parent
51944f0dc9
commit
6a9f971882
14
examples/device/board_test/CMakeLists.txt
Normal file
14
examples/device/board_test/CMakeLists.txt
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# The following five lines of boilerplate have to be in your project's
|
||||||
|
# CMakeLists in this exact order for cmake to work correctly
|
||||||
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
|
# example src directory
|
||||||
|
set(EXTRA_COMPONENT_DIRS "src")
|
||||||
|
|
||||||
|
# TOP is absolute path to root directory of TinyUSB git repo
|
||||||
|
set(TOP "../../..")
|
||||||
|
get_filename_component(TOP "${TOP}" REALPATH)
|
||||||
|
|
||||||
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
|
|
||||||
|
project(board_test)
|
4
examples/device/board_test/sdkconfig.defaults
Normal file
4
examples/device/board_test/sdkconfig.defaults
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
CONFIG_IDF_CMAKE=y
|
||||||
|
CONFIG_IDF_TARGET="esp32s2"
|
||||||
|
CONFIG_IDF_TARGET_ESP32S2=y
|
||||||
|
|
19
examples/device/board_test/src/CMakeLists.txt
Normal file
19
examples/device/board_test/src/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
idf_component_register(SRCS "main.c"
|
||||||
|
INCLUDE_DIRS "."
|
||||||
|
REQUIRES freertos soc)
|
||||||
|
|
||||||
|
target_compile_options(${COMPONENT_TARGET} PUBLIC
|
||||||
|
"-DCFG_TUSB_MCU=OPT_MCU_ESP32S2"
|
||||||
|
"-DCFG_TUSB_OS=OPT_OS_FREERTOS"
|
||||||
|
)
|
||||||
|
|
||||||
|
idf_component_get_property( FREERTOS_ORIG_INCLUDE_PATH freertos ORIG_INCLUDE_PATH)
|
||||||
|
target_include_directories(${COMPONENT_TARGET} PUBLIC
|
||||||
|
"${FREERTOS_ORIG_INCLUDE_PATH}"
|
||||||
|
"${TOP}/hw"
|
||||||
|
"${TOP}/src"
|
||||||
|
)
|
||||||
|
|
||||||
|
target_sources(${COMPONENT_TARGET} PUBLIC
|
||||||
|
"${TOP}/hw/bsp/esp32s2_saola/esp32s2_saola.c"
|
||||||
|
)
|
@ -73,3 +73,10 @@ int main(void)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CFG_TUSB_MCU == OPT_MCU_ESP32S2
|
||||||
|
void app_main(void)
|
||||||
|
{
|
||||||
|
main();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
@ -39,8 +39,11 @@
|
|||||||
#error CFG_TUSB_MCU must be defined
|
#error CFG_TUSB_MCU must be defined
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef CFG_TUSB_OS
|
||||||
|
#define CFG_TUSB_OS OPT_OS_NONE
|
||||||
|
#endif
|
||||||
|
|
||||||
#define CFG_TUSB_RHPORT0_MODE OPT_MODE_NONE
|
#define CFG_TUSB_RHPORT0_MODE OPT_MODE_NONE
|
||||||
#define CFG_TUSB_OS OPT_OS_NONE
|
|
||||||
|
|
||||||
// CFG_TUSB_DEBUG is defined by compiler in DEBUG build
|
// CFG_TUSB_DEBUG is defined by compiler in DEBUG build
|
||||||
// #define CFG_TUSB_DEBUG 0
|
// #define CFG_TUSB_DEBUG 0
|
||||||
|
@ -5,6 +5,10 @@ cmake_minimum_required(VERSION 3.5)
|
|||||||
# example src directory
|
# example src directory
|
||||||
set(EXTRA_COMPONENT_DIRS "src")
|
set(EXTRA_COMPONENT_DIRS "src")
|
||||||
|
|
||||||
|
# TOP is absolute path to root directory of TinyUSB git repo
|
||||||
|
set(TOP "../../..")
|
||||||
|
get_filename_component(TOP "${TOP}" REALPATH)
|
||||||
|
|
||||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
|
|
||||||
project(cdc_msc_freertos)
|
project(cdc_msc_freertos)
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
# TOP is absolute path to root directory of TinyUSB git repo
|
|
||||||
set(TOP "../../../..")
|
|
||||||
get_filename_component(TOP "${TOP}" REALPATH)
|
|
||||||
|
|
||||||
idf_component_register(SRCS "main.c" "usb_descriptors.c" "msc_disk.c"
|
idf_component_register(SRCS "main.c" "usb_descriptors.c" "msc_disk.c"
|
||||||
INCLUDE_DIRS "."
|
INCLUDE_DIRS "."
|
||||||
REQUIRES freertos soc)
|
REQUIRES freertos soc)
|
||||||
|
@ -32,7 +32,10 @@
|
|||||||
// MACRO TYPEDEF CONSTANT ENUM DECLARATION
|
// MACRO TYPEDEF CONSTANT ENUM DECLARATION
|
||||||
//--------------------------------------------------------------------+
|
//--------------------------------------------------------------------+
|
||||||
|
|
||||||
#define LED_PIN 21
|
#define LED_PIN 21
|
||||||
|
|
||||||
|
#define BUTTON_PIN 0
|
||||||
|
#define BUTTON_STATE_ACTIVE 0
|
||||||
|
|
||||||
// Initialize on-board peripherals : led, button, uart and USB
|
// Initialize on-board peripherals : led, button, uart and USB
|
||||||
void board_init(void)
|
void board_init(void)
|
||||||
@ -41,6 +44,11 @@ void board_init(void)
|
|||||||
gpio_pad_select_gpio(LED_PIN);
|
gpio_pad_select_gpio(LED_PIN);
|
||||||
gpio_set_direction(LED_PIN, GPIO_MODE_OUTPUT);
|
gpio_set_direction(LED_PIN, GPIO_MODE_OUTPUT);
|
||||||
|
|
||||||
|
// Button
|
||||||
|
gpio_pad_select_gpio(BUTTON_PIN);
|
||||||
|
gpio_set_direction(BUTTON_PIN, GPIO_MODE_INPUT);
|
||||||
|
gpio_set_pull_mode(BUTTON_PIN, BUTTON_STATE_ACTIVE ? GPIO_PULLDOWN_ONLY : GPIO_PULLUP_ONLY);
|
||||||
|
|
||||||
// USB Controller Hal init
|
// USB Controller Hal init
|
||||||
usb_hal_context_t hal = {
|
usb_hal_context_t hal = {
|
||||||
.use_external_phy = false // use built-in PHY
|
.use_external_phy = false // use built-in PHY
|
||||||
@ -58,7 +66,7 @@ void board_led_write(bool state)
|
|||||||
// a '1' means active (pressed), a '0' means inactive.
|
// a '1' means active (pressed), a '0' means inactive.
|
||||||
uint32_t board_button_read(void)
|
uint32_t board_button_read(void)
|
||||||
{
|
{
|
||||||
return 0;
|
return gpio_get_level(BUTTON_PIN) == BUTTON_STATE_ACTIVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get characters from UART
|
// Get characters from UART
|
||||||
|
Loading…
x
Reference in New Issue
Block a user