diff options
| author | Man, Jianting (Meco) <[email protected]> | 2023-02-25 13:52:37 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-02-25 13:52:37 -0500 |
| commit | 1acef4277b02e5084310ecd7028656ae535178f5 (patch) | |
| tree | 03b6b6f0b3df75a1cef301e1e7b2b3d234213390 /bsp/at32/at32f415-start | |
| parent | 759192f5f5af23ae360818483d35974ef5b91c78 (diff) | |
| parent | e63e33a3c64327aef3556fa811df0a8ec1e0e7ee (diff) | |
Merge pull request #6981 from RT-Thread/masterserialX-dev
sync from master
Diffstat (limited to 'bsp/at32/at32f415-start')
| -rw-r--r-- | bsp/at32/at32f415-start/README.md | 3 | ||||
| -rw-r--r-- | bsp/at32/at32f415-start/SConstruct | 3 | ||||
| -rw-r--r-- | bsp/at32/at32f415-start/board/Kconfig | 20 | ||||
| -rw-r--r-- | bsp/at32/at32f415-start/board/inc/at32_msp.h | 1 | ||||
| -rw-r--r-- | bsp/at32/at32f415-start/board/src/at32_msp.c | 40 |
5 files changed, 67 insertions, 0 deletions
diff --git a/bsp/at32/at32f415-start/README.md b/bsp/at32/at32f415-start/README.md index e3fb616c03..2727ce40b4 100644 --- a/bsp/at32/at32f415-start/README.md +++ b/bsp/at32/at32f415-start/README.md @@ -50,6 +50,7 @@ AT32F415-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以� | WDT | 支持 | | | RTC | 支持 | | | FLASH | 支持 | | +| USB | 支持 | | ### IO在板级支持包中的映射情况 @@ -92,6 +93,8 @@ AT32F415-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以� | PC5 | ADC1_IN15 | | PB8 | CAN1_RX | | PB9 | CAN1_TX | +| PA11 | USB_DM | +| PA12 | USB_DP | ## 使用说明 diff --git a/bsp/at32/at32f415-start/SConstruct b/bsp/at32/at32f415-start/SConstruct index 25ab5b6f2d..2fd575c290 100644 --- a/bsp/at32/at32f415-start/SConstruct +++ b/bsp/at32/at32f415-start/SConstruct @@ -52,6 +52,9 @@ rtconfig.BSP_LIBRARY_TYPE = at32_library # include libraries objs.extend(SConscript(os.path.join(libraries_path_prefix, at32_library, 'SConscript'))) +# include usb libraries +objs.extend(SConscript(os.path.join(libraries_path_prefix, 'usbfs_library', 'SConscript'))) + # include drivers objs.extend(SConscript(os.path.join(libraries_path_prefix, 'rt_drivers', 'SConscript'))) diff --git a/bsp/at32/at32f415-start/board/Kconfig b/bsp/at32/at32f415-start/board/Kconfig index a33314f349..db26d9c74c 100644 --- a/bsp/at32/at32f415-start/board/Kconfig +++ b/bsp/at32/at32f415-start/board/Kconfig @@ -26,7 +26,27 @@ menu "On-chip Peripheral Drivers" config BSP_USING_ON_CHIP_FLASH bool "Enable on-chip FLASH" + default n + + menuconfig BSP_USING_USBFS + bool "Enable USB BUS" default n + if BSP_USING_USBFS + menuconfig BSP_USING_USBFS1 + bool "Enable USB BUS1" + default n + if BSP_USING_USBFS1 + config BSP_USING_DEVICE_USBFS1 + bool "Enable USB1 Deivce" + select RT_USING_USB_DEVICE + default n + + config BSP_USING_HOST_USBFS1 + bool "Enable USB1 Host" + select RT_USING_USB_HOST + default n + endif + endif menuconfig BSP_USING_RTC bool "Enable RTC" diff --git a/bsp/at32/at32f415-start/board/inc/at32_msp.h b/bsp/at32/at32f415-start/board/inc/at32_msp.h index ba267a172c..8efd4dbe32 100644 --- a/bsp/at32/at32f415-start/board/inc/at32_msp.h +++ b/bsp/at32/at32f415-start/board/inc/at32_msp.h @@ -19,5 +19,6 @@ void at32_msp_sdio_init(void *instance); void at32_msp_adc_init(void *instance); void at32_msp_hwtmr_init(void *instance); void at32_msp_can_init(void *instance); +void at32_msp_usb_init(void *instance); #endif /* __AT32_MSP_H__ */ diff --git a/bsp/at32/at32f415-start/board/src/at32_msp.c b/bsp/at32/at32f415-start/board/src/at32_msp.c index e8515a00af..a72fc80e06 100644 --- a/bsp/at32/at32f415-start/board/src/at32_msp.c +++ b/bsp/at32/at32f415-start/board/src/at32_msp.c @@ -283,3 +283,43 @@ void at32_msp_can_init(void *instance) #endif } #endif /* BSP_USING_CAN */ + +#ifdef BSP_USING_USBFS +void at32_msp_usb_init(void *instance) +{ + /* enable usb clock */ + crm_periph_clock_enable(CRM_OTGFS1_PERIPH_CLOCK, TRUE); + + switch(system_core_clock) + { + /* 48MHz */ + case 48000000: + crm_usb_clock_div_set(CRM_USB_DIV_1); + break; + + /* 72MHz */ + case 72000000: + crm_usb_clock_div_set(CRM_USB_DIV_1_5); + break; + + /* 96MHz */ + case 96000000: + crm_usb_clock_div_set(CRM_USB_DIV_2); + break; + + /* 120MHz */ + case 120000000: + crm_usb_clock_div_set(CRM_USB_DIV_2_5); + break; + + /* 144MHz */ + case 144000000: + crm_usb_clock_div_set(CRM_USB_DIV_3); + break; + + default: + break; + } +} + +#endif /* BSP_USING_USBFS */ |
