From c2b8df673bc7e686c456242ff368d634800145c6 Mon Sep 17 00:00:00 2001 From: sheltonyu Date: Fri, 8 Apr 2022 15:28:42 +0800 Subject: [PATCH] update for drivers and readme --- bsp/at32/at32f403a-start/.config | 364 +++-------------- bsp/at32/at32f403a-start/README.md | 6 +- bsp/at32/at32f403a-start/board/src/at32_msp.c | 13 +- bsp/at32/at32f403a-start/project.ewp | 68 ++-- bsp/at32/at32f403a-start/project.uvproj | 198 ++++----- bsp/at32/at32f403a-start/project.uvprojx | 174 ++++---- bsp/at32/at32f403a-start/rtconfig.h | 51 +-- bsp/at32/at32f407-start/.config | 379 ++++-------------- bsp/at32/at32f407-start/README.md | 6 +- bsp/at32/at32f407-start/board/inc/at32_msp.h | 1 + bsp/at32/at32f407-start/board/src/at32_msp.c | 52 ++- bsp/at32/at32f407-start/project.ewp | 86 ++-- bsp/at32/at32f407-start/project.uvproj | 172 ++++---- bsp/at32/at32f407-start/project.uvprojx | 190 ++++----- bsp/at32/at32f407-start/rtconfig.h | 51 +-- .../libraries/f403a_407/rt_drivers/drv_can.c | 33 +- .../libraries/f403a_407/rt_drivers/drv_emac.c | 42 +- .../libraries/f403a_407/rt_drivers/drv_wdt.c | 2 + 18 files changed, 692 insertions(+), 1196 deletions(-) diff --git a/bsp/at32/at32f403a-start/.config b/bsp/at32/at32f403a-start/.config index 49c21ec927..98bbea454c 100644 --- a/bsp/at32/at32f403a-start/.config +++ b/bsp/at32/at32f403a-start/.config @@ -97,8 +97,17 @@ CONFIG_RT_USING_USER_MAIN=y CONFIG_RT_MAIN_THREAD_STACK_SIZE=2048 CONFIG_RT_MAIN_THREAD_PRIORITY=10 # CONFIG_RT_USING_LEGACY is not set -CONFIG_RT_USING_MSH=y + +# +# C++ features +# +# CONFIG_RT_USING_CPLUSPLUS is not set + +# +# Command shell +# CONFIG_RT_USING_FINSH=y +CONFIG_RT_USING_MSH=y CONFIG_FINSH_USING_MSH=y CONFIG_FINSH_THREAD_NAME="tshell" CONFIG_FINSH_THREAD_PRIORITY=20 @@ -112,9 +121,11 @@ CONFIG_FINSH_USING_DESCRIPTION=y # CONFIG_FINSH_ECHO_DISABLE_DEFAULT is not set # CONFIG_FINSH_USING_AUTH is not set CONFIG_FINSH_ARG_MAX=10 + +# +# Device virtual file system +# # CONFIG_RT_USING_DFS is not set -# CONFIG_RT_USING_FAL is not set -# CONFIG_RT_USING_LWP is not set # # Device Drivers @@ -158,7 +169,7 @@ CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_USB_DEVICE is not set # -# C/C++ and POSIX layer +# POSIX layer and C standard library # CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 @@ -182,7 +193,6 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # # Socket is in the 'Network' category # -# CONFIG_RT_USING_CPLUSPLUS is not set # # Network @@ -192,6 +202,11 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_RT_USING_LWIP is not set # CONFIG_RT_USING_AT is not set +# +# VBUS(Virtual Software BUS) +# +# CONFIG_RT_USING_VBUS is not set + # # Utilities # @@ -200,7 +215,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_RT_USING_UTEST is not set # CONFIG_RT_USING_VAR_EXPORT is not set # CONFIG_RT_USING_RT_LINK is not set -# CONFIG_RT_USING_VBUS is not set +# CONFIG_RT_USING_LWP is not set # # RT-Thread Utestcases @@ -214,19 +229,17 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # # IoT - internet of things # -# CONFIG_PKG_USING_LWIP is not set -# CONFIG_PKG_USING_LORAWAN_DRIVER is not set # CONFIG_PKG_USING_PAHOMQTT is not set -# CONFIG_PKG_USING_UMQTT is not set # CONFIG_PKG_USING_WEBCLIENT is not set # CONFIG_PKG_USING_WEBNET is not set # CONFIG_PKG_USING_MONGOOSE is not set -# CONFIG_PKG_USING_MYMQTT is not set -# CONFIG_PKG_USING_KAWAII_MQTT is not set -# CONFIG_PKG_USING_BC28_MQTT is not set # CONFIG_PKG_USING_WEBTERMINAL is not set +# CONFIG_PKG_USING_CJSON is not set +# CONFIG_PKG_USING_JSMN is not set # CONFIG_PKG_USING_LIBMODBUS is not set # CONFIG_PKG_USING_FREEMODBUS is not set +# CONFIG_PKG_USING_LJSON is not set +# CONFIG_PKG_USING_EZXML is not set # CONFIG_PKG_USING_NANOPB is not set # @@ -246,12 +259,9 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set -# CONFIG_PKG_USING_CMUX is not set -# CONFIG_PKG_USING_PPP_DEVICE is not set # CONFIG_PKG_USING_AT_DEVICE is not set # CONFIG_PKG_USING_ATSRV_SOCKET is not set # CONFIG_PKG_USING_WIZNET is not set -# CONFIG_PKG_USING_ZB_COORDINATOR is not set # # IoT Cloud @@ -260,13 +270,8 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_GAGENT_CLOUD is not set # CONFIG_PKG_USING_ALI_IOTKIT is not set # CONFIG_PKG_USING_AZURE is not set -# CONFIG_PKG_USING_TENCENT_IOT_EXPLORER is not set -# CONFIG_PKG_USING_JIOT-C-SDK is not set -# CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set -# CONFIG_PKG_USING_JOYLINK is not set -# CONFIG_PKG_USING_EZ_IOT_OS is not set +# CONFIG_PKG_USING_TENCENT_IOTHUB is not set # CONFIG_PKG_USING_NIMBLE is not set -# CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set # CONFIG_PKG_USING_OTA_DOWNLOADER is not set # CONFIG_PKG_USING_IPMSG is not set # CONFIG_PKG_USING_LSSDP is not set @@ -274,106 +279,31 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_LIBRWS is not set # CONFIG_PKG_USING_TCPSERVER is not set # CONFIG_PKG_USING_PROTOBUF_C is not set -# CONFIG_PKG_USING_DLT645 is not set -# CONFIG_PKG_USING_QXWZ is not set -# CONFIG_PKG_USING_SMTP_CLIENT is not set -# CONFIG_PKG_USING_ABUP_FOTA is not set -# CONFIG_PKG_USING_LIBCURL2RTT is not set -# CONFIG_PKG_USING_CAPNP is not set -# CONFIG_PKG_USING_AGILE_TELNET is not set -# CONFIG_PKG_USING_NMEALIB is not set -# CONFIG_PKG_USING_PDULIB is not set -# CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_LORAWAN_ED_STACK is not set -# CONFIG_PKG_USING_WAYZ_IOTKIT is not set -# CONFIG_PKG_USING_MAVLINK is not set -# CONFIG_PKG_USING_BSAL is not set -# CONFIG_PKG_USING_AGILE_MODBUS is not set -# CONFIG_PKG_USING_AGILE_FTP is not set -# CONFIG_PKG_USING_EMBEDDEDPROTO is not set -# CONFIG_PKG_USING_RT_LINK_HW is not set -# CONFIG_PKG_USING_LORA_PKT_FWD is not set -# CONFIG_PKG_USING_LORA_GW_DRIVER_LIB is not set -# CONFIG_PKG_USING_LORA_PKT_SNIFFER is not set -# CONFIG_PKG_USING_HM is not set -# CONFIG_PKG_USING_SMALL_MODBUS is not set -# CONFIG_PKG_USING_NET_SERVER is not set +# CONFIG_PKG_USING_ONNX_PARSER is not set +# CONFIG_PKG_USING_ONNX_BACKEND is not set # # security packages # # CONFIG_PKG_USING_MBEDTLS is not set -# CONFIG_PKG_USING_LIBSODIUM is not set +# CONFIG_PKG_USING_libsodium is not set # CONFIG_PKG_USING_TINYCRYPT is not set -# CONFIG_PKG_USING_TFM is not set -# CONFIG_PKG_USING_YD_CRYPTO is not set # # language packages # - -# -# JSON: JavaScript Object Notation, a lightweight data-interchange format -# -# CONFIG_PKG_USING_CJSON is not set -# CONFIG_PKG_USING_LJSON is not set -# CONFIG_PKG_USING_RT_CJSON_TOOLS is not set -# CONFIG_PKG_USING_RAPIDJSON is not set -# CONFIG_PKG_USING_JSMN is not set -# CONFIG_PKG_USING_AGILE_JSMN is not set - -# -# XML: Extensible Markup Language -# -# CONFIG_PKG_USING_SIMPLE_XML is not set -# CONFIG_PKG_USING_EZXML is not set -# CONFIG_PKG_USING_LUATOS_SOC is not set # CONFIG_PKG_USING_LUA is not set # CONFIG_PKG_USING_JERRYSCRIPT is not set # CONFIG_PKG_USING_MICROPYTHON is not set -# CONFIG_PKG_USING_PIKASCRIPT is not set # # multimedia packages # - -# -# LVGL: powerful and easy-to-use embedded GUI library -# -# CONFIG_PKG_USING_LVGL is not set -# CONFIG_PKG_USING_LITTLEVGL2RTT is not set -# CONFIG_PKG_USING_LV_MUSIC_DEMO is not set - -# -# u8g2: a monochrome graphic library -# -# CONFIG_PKG_USING_U8G2_OFFICIAL is not set -# CONFIG_PKG_USING_U8G2 is not set # CONFIG_PKG_USING_OPENMV is not set # CONFIG_PKG_USING_MUPDF is not set # CONFIG_PKG_USING_STEMWIN is not set # CONFIG_PKG_USING_WAVPLAYER is not set # CONFIG_PKG_USING_TJPGD is not set -# CONFIG_PKG_USING_PDFGEN is not set -# CONFIG_PKG_USING_HELIX is not set -# CONFIG_PKG_USING_AZUREGUIX is not set -# CONFIG_PKG_USING_TOUCHGFX2RTT is not set -# CONFIG_PKG_USING_NUEMWIN is not set -# CONFIG_PKG_USING_MP3PLAYER is not set -# CONFIG_PKG_USING_TINYJPEG is not set -# CONFIG_PKG_USING_UGUI is not set - -# -# PainterEngine: A cross-platform graphics application framework written in C language -# -# CONFIG_PKG_USING_PAINTERENGINE is not set -# CONFIG_PKG_USING_PAINTERENGINE_AUX is not set -# CONFIG_PKG_USING_MCURSES is not set -# CONFIG_PKG_USING_TERMBOX is not set -# CONFIG_PKG_USING_VT100 is not set -# CONFIG_PKG_USING_QRCODE is not set -# CONFIG_PKG_USING_GUIENGINE is not set -# CONFIG_PKG_USING_PERSIMMON is not set # # tools packages @@ -382,115 +312,29 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_EASYFLASH is not set # CONFIG_PKG_USING_EASYLOGGER is not set # CONFIG_PKG_USING_SYSTEMVIEW is not set -# CONFIG_PKG_USING_SEGGER_RTT is not set # CONFIG_PKG_USING_RDB is not set +# CONFIG_PKG_USING_QRCODE is not set # CONFIG_PKG_USING_ULOG_EASYFLASH is not set -# CONFIG_PKG_USING_ULOG_FILE is not set -# CONFIG_PKG_USING_LOGMGR is not set # CONFIG_PKG_USING_ADBD is not set -# CONFIG_PKG_USING_COREMARK is not set -# CONFIG_PKG_USING_DHRYSTONE is not set -# CONFIG_PKG_USING_MEMORYPERF is not set -# CONFIG_PKG_USING_NR_MICRO_SHELL is not set -# CONFIG_PKG_USING_CHINESE_FONT_LIBRARY is not set -# CONFIG_PKG_USING_LUNAR_CALENDAR is not set -# CONFIG_PKG_USING_BS8116A is not set -# CONFIG_PKG_USING_GPS_RMC is not set -# CONFIG_PKG_USING_URLENCODE is not set -# CONFIG_PKG_USING_UMCN is not set -# CONFIG_PKG_USING_LWRB2RTT is not set -# CONFIG_PKG_USING_CPU_USAGE is not set -# CONFIG_PKG_USING_GBK2UTF8 is not set -# CONFIG_PKG_USING_VCONSOLE is not set -# CONFIG_PKG_USING_KDB is not set -# CONFIG_PKG_USING_WAMR is not set -# CONFIG_PKG_USING_MICRO_XRCE_DDS_CLIENT is not set -# CONFIG_PKG_USING_LWLOG is not set -# CONFIG_PKG_USING_ANV_TRACE is not set -# CONFIG_PKG_USING_ANV_MEMLEAK is not set -# CONFIG_PKG_USING_ANV_TESTSUIT is not set -# CONFIG_PKG_USING_ANV_BENCH is not set -# CONFIG_PKG_USING_DEVMEM is not set -# CONFIG_PKG_USING_REGEX is not set -# CONFIG_PKG_USING_MEM_SANDBOX is not set -# CONFIG_PKG_USING_SOLAR_TERMS is not set -# CONFIG_PKG_USING_GAN_ZHI is not set -# CONFIG_PKG_USING_FDT is not set -# CONFIG_PKG_USING_CBOX is not set -# CONFIG_PKG_USING_SNOWFLAKE is not set # # system packages # - -# -# enhanced kernel services -# -# CONFIG_PKG_USING_RT_MEMCPY_CM is not set -# CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set -# CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set - -# -# POSIX extension functions -# -# CONFIG_PKG_USING_POSIX_GETLINE is not set -# CONFIG_PKG_USING_POSIX_WCWIDTH is not set -# CONFIG_PKG_USING_POSIX_ITOA is not set -# CONFIG_PKG_USING_POSIX_STRINGS is not set - -# -# acceleration: Assembly language or algorithmic acceleration packages -# -# CONFIG_PKG_USING_QFPLIB_M0_FULL is not set -# CONFIG_PKG_USING_QFPLIB_M0_TINY is not set -# CONFIG_PKG_USING_QFPLIB_M3 is not set - -# -# CMSIS: ARM Cortex-M Microcontroller Software Interface Standard -# -# CONFIG_PKG_USING_CMSIS_5 is not set -# CONFIG_PKG_USING_CMSIS_RTOS2 is not set - -# -# Micrium: Micrium software products porting for RT-Thread -# -# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set -# CONFIG_PKG_USING_UCOSII_WRAPPER is not set -# CONFIG_PKG_USING_UC_CRC is not set -# CONFIG_PKG_USING_UC_CLK is not set -# CONFIG_PKG_USING_UC_COMMON is not set -# CONFIG_PKG_USING_UC_MODBUS is not set -# CONFIG_PKG_USING_RTDUINO is not set +# CONFIG_PKG_USING_GUIENGINE is not set +# CONFIG_PKG_USING_PERSIMMON is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set +# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_PARTITION is not set -# CONFIG_PKG_USING_FLASHDB is not set +# CONFIG_PKG_USING_FAL is not set # CONFIG_PKG_USING_SQLITE is not set # CONFIG_PKG_USING_RTI is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set +# CONFIG_PKG_USING_CMSIS is not set # CONFIG_PKG_USING_DFS_YAFFS is not set # CONFIG_PKG_USING_LITTLEFS is not set -# CONFIG_PKG_USING_DFS_JFFS2 is not set -# CONFIG_PKG_USING_DFS_UFFS is not set -# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_THREAD_POOL is not set # CONFIG_PKG_USING_ROBOTS is not set -# CONFIG_PKG_USING_EV is not set -# CONFIG_PKG_USING_SYSWATCH is not set -# CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set -# CONFIG_PKG_USING_PLCCORE is not set -# CONFIG_PKG_USING_RAMDISK is not set -# CONFIG_PKG_USING_MININI is not set -# CONFIG_PKG_USING_QBOOT is not set -# CONFIG_PKG_USING_PPOOL is not set -# CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_LPM is not set -# CONFIG_PKG_USING_TLSF is not set -# CONFIG_PKG_USING_EVENT_RECORDER is not set -# CONFIG_PKG_USING_ARM_2D is not set -# CONFIG_PKG_USING_MCUBOOT is not set -# CONFIG_PKG_USING_TINYUSB is not set -# CONFIG_PKG_USING_CHERRYUSB is not set -# CONFIG_PKG_USING_KMULTI_RTIMER is not set # # peripheral libraries and drivers @@ -498,25 +342,18 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_SENSORS_DRIVERS is not set # CONFIG_PKG_USING_REALTEK_AMEBA is not set # CONFIG_PKG_USING_SHT2X is not set -# CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_AS7341 is not set # CONFIG_PKG_USING_STM32_SDIO is not set # CONFIG_PKG_USING_ICM20608 is not set +# CONFIG_PKG_USING_U8G2 is not set # CONFIG_PKG_USING_BUTTON is not set # CONFIG_PKG_USING_PCF8574 is not set # CONFIG_PKG_USING_SX12XX is not set # CONFIG_PKG_USING_SIGNAL_LED is not set # CONFIG_PKG_USING_LEDBLINK is not set -# CONFIG_PKG_USING_LITTLED is not set -# CONFIG_PKG_USING_LKDGUI is not set -# CONFIG_PKG_USING_NRF5X_SDK is not set -# CONFIG_PKG_USING_NRFX is not set # CONFIG_PKG_USING_WM_LIBRARIES is not set # CONFIG_PKG_USING_KENDRYTE_SDK is not set # CONFIG_PKG_USING_INFRARED is not set -# CONFIG_PKG_USING_MULTI_INFRARED is not set -# CONFIG_PKG_USING_AGILE_BUTTON is not set -# CONFIG_PKG_USING_AGILE_LED is not set +# CONFIG_PKG_USING_ROSSERIAL is not set # CONFIG_PKG_USING_AT24CXX is not set # CONFIG_PKG_USING_MOTIONDRIVER2RTT is not set # CONFIG_PKG_USING_AD7746 is not set @@ -524,75 +361,27 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_I2C_TOOLS is not set # CONFIG_PKG_USING_NRF24L01 is not set # CONFIG_PKG_USING_TOUCH_DRIVERS is not set +# CONFIG_PKG_USING_LCD_DRIVERS is not set # CONFIG_PKG_USING_MAX17048 is not set -# CONFIG_PKG_USING_RPLIDAR is not set -# CONFIG_PKG_USING_AS608 is not set -# CONFIG_PKG_USING_RC522 is not set -# CONFIG_PKG_USING_WS2812B is not set -# CONFIG_PKG_USING_EMBARC_BSP is not set -# CONFIG_PKG_USING_EXTERN_RTC_DRIVERS is not set -# CONFIG_PKG_USING_MULTI_RTIMER is not set -# CONFIG_PKG_USING_MAX7219 is not set -# CONFIG_PKG_USING_BEEP is not set -# CONFIG_PKG_USING_EASYBLINK is not set -# CONFIG_PKG_USING_PMS_SERIES is not set -# CONFIG_PKG_USING_CAN_YMODEM is not set -# CONFIG_PKG_USING_LORA_RADIO_DRIVER is not set -# CONFIG_PKG_USING_QLED is not set -# CONFIG_PKG_USING_PAJ7620 is not set -# CONFIG_PKG_USING_AGILE_CONSOLE is not set -# CONFIG_PKG_USING_LD3320 is not set -# CONFIG_PKG_USING_WK2124 is not set -# CONFIG_PKG_USING_LY68L6400 is not set -# CONFIG_PKG_USING_DM9051 is not set -# CONFIG_PKG_USING_SSD1306 is not set -# CONFIG_PKG_USING_QKEY is not set -# CONFIG_PKG_USING_RS485 is not set -# CONFIG_PKG_USING_RS232 is not set -# CONFIG_PKG_USING_NES is not set -# CONFIG_PKG_USING_VIRTUAL_SENSOR is not set -# CONFIG_PKG_USING_VDEVICE is not set -# CONFIG_PKG_USING_SGM706 is not set -# CONFIG_PKG_USING_STM32WB55_SDK is not set -# CONFIG_PKG_USING_RDA58XX is not set -# CONFIG_PKG_USING_LIBNFC is not set -# CONFIG_PKG_USING_MFOC is not set -# CONFIG_PKG_USING_TMC51XX is not set -# CONFIG_PKG_USING_TCA9534 is not set -# CONFIG_PKG_USING_KOBUKI is not set -# CONFIG_PKG_USING_ROSSERIAL is not set -# CONFIG_PKG_USING_MICRO_ROS is not set -# CONFIG_PKG_USING_MCP23008 is not set -# CONFIG_PKG_USING_BLUETRUM_SDK is not set -# CONFIG_PKG_USING_MISAKA_AT24CXX is not set -# CONFIG_PKG_USING_MISAKA_RGB_BLING is not set -# CONFIG_PKG_USING_LORA_MODEM_DRIVER is not set -# CONFIG_PKG_USING_BL_MCU_SDK is not set -# CONFIG_PKG_USING_SOFT_SERIAL is not set -# CONFIG_PKG_USING_MB85RS16 is not set -# CONFIG_PKG_USING_CW2015 is not set -# CONFIG_PKG_USING_RFM300 is not set - -# -# AI packages -# -# CONFIG_PKG_USING_LIBANN is not set -# CONFIG_PKG_USING_NNOM is not set -# CONFIG_PKG_USING_ONNX_BACKEND is not set -# CONFIG_PKG_USING_ONNX_PARSER is not set -# CONFIG_PKG_USING_TENSORFLOWLITEMICRO is not set -# CONFIG_PKG_USING_ELAPACK is not set -# CONFIG_PKG_USING_ULAPACK is not set -# CONFIG_PKG_USING_QUEST is not set -# CONFIG_PKG_USING_NAXOS is not set # # miscellaneous packages # - -# -# project laboratory -# +# CONFIG_PKG_USING_LIBCSV is not set +# CONFIG_PKG_USING_OPTPARSE is not set +# CONFIG_PKG_USING_FASTLZ is not set +# CONFIG_PKG_USING_MINILZO is not set +# CONFIG_PKG_USING_QUICKLZ is not set +# CONFIG_PKG_USING_MULTIBUTTON is not set +# CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set +# CONFIG_PKG_USING_CANFESTIVAL is not set +# CONFIG_PKG_USING_ZLIB is not set +# CONFIG_PKG_USING_DSTR is not set +# CONFIG_PKG_USING_TINYFRAME is not set +# CONFIG_PKG_USING_KENDRYTE_DEMO is not set +# CONFIG_PKG_USING_DIGITALCTRL is not set +# CONFIG_PKG_USING_UPACKER is not set +# CONFIG_PKG_USING_UPARAM is not set # # samples: kernel and components samples @@ -601,50 +390,13 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set # CONFIG_PKG_USING_NETWORK_SAMPLES is not set # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set - -# -# entertainment: terminal games and other interesting software packages -# -# CONFIG_PKG_USING_CMATRIX is not set -# CONFIG_PKG_USING_SL is not set -# CONFIG_PKG_USING_CAL is not set -# CONFIG_PKG_USING_ACLOCK is not set -# CONFIG_PKG_USING_THREES is not set -# CONFIG_PKG_USING_2048 is not set -# CONFIG_PKG_USING_SNAKE is not set -# CONFIG_PKG_USING_TETRIS is not set -# CONFIG_PKG_USING_DONUT is not set -# CONFIG_PKG_USING_COWSAY is not set -# CONFIG_PKG_USING_LIBCSV is not set -# CONFIG_PKG_USING_OPTPARSE is not set -# CONFIG_PKG_USING_FASTLZ is not set -# CONFIG_PKG_USING_MINILZO is not set -# CONFIG_PKG_USING_QUICKLZ is not set -# CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_MULTIBUTTON is not set -# CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set -# CONFIG_PKG_USING_CANFESTIVAL is not set -# CONFIG_PKG_USING_ZLIB is not set -# CONFIG_PKG_USING_MINIZIP is not set -# CONFIG_PKG_USING_HEATSHRINK is not set -# CONFIG_PKG_USING_DSTR is not set -# CONFIG_PKG_USING_TINYFRAME is not set -# CONFIG_PKG_USING_KENDRYTE_DEMO is not set -# CONFIG_PKG_USING_DIGITALCTRL is not set -# CONFIG_PKG_USING_UPACKER is not set -# CONFIG_PKG_USING_UPARAM is not set # CONFIG_PKG_USING_HELLO is not set # CONFIG_PKG_USING_VI is not set -# CONFIG_PKG_USING_KI is not set +# CONFIG_PKG_USING_NNOM is not set +# CONFIG_PKG_USING_LIBANN is not set +# CONFIG_PKG_USING_ELAPACK is not set # CONFIG_PKG_USING_ARMv7M_DWT is not set -# CONFIG_PKG_USING_UKAL is not set -# CONFIG_PKG_USING_CRCLIB is not set -# CONFIG_PKG_USING_LWGPS is not set -# CONFIG_PKG_USING_STATE_MACHINE is not set -# CONFIG_PKG_USING_DESIGN_PATTERN is not set -# CONFIG_PKG_USING_CONTROLLER is not set -# CONFIG_PKG_USING_PHASE_LOCKED_LOOP is not set -# CONFIG_PKG_USING_MFBD is not set +# CONFIG_PKG_USING_VT100 is not set CONFIG_SOC_FAMILY_AT32=y CONFIG_SOC_SERIES_AT32F403A=y diff --git a/bsp/at32/at32f403a-start/README.md b/bsp/at32/at32f403a-start/README.md index ad06135de8..85cd0064c1 100644 --- a/bsp/at32/at32f403a-start/README.md +++ b/bsp/at32/at32f403a-start/README.md @@ -90,8 +90,8 @@ AT32F403A-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以 | PC3 | ADC1/2_IN13 | | PC4 | ADC1/2_IN14 | | PC5 | ADC1/2_IN15 | -| PA11 | CAN1_RX | -| PA12 | CAN1_TX | +| PB8 | CAN1_RX | +| PB9 | CAN1_TX | | PB5 | CAN2_RX | | PB6 | CAN2_TX | @@ -111,7 +111,7 @@ AT32F403A-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以 双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 -> 工程默认配置使用 JLink 下载程序,在通过 JLink 连接开发板的基础上,点击下载按钮即可下载程序到开发板 +> 工程默认配置使用AT-LINK SWD下载程序,在通过AT-LINK SWD连接开发板的基础上,点击下载按钮即可下载程序到开发板 #### 运行结果 diff --git a/bsp/at32/at32f403a-start/board/src/at32_msp.c b/bsp/at32/at32f403a-start/board/src/at32_msp.c index 70338e3fd1..c23aada25a 100644 --- a/bsp/at32/at32f403a-start/board/src/at32_msp.c +++ b/bsp/at32/at32f403a-start/board/src/at32_msp.c @@ -279,17 +279,20 @@ void at32_msp_can_init(void *instance) if(CAN1 == can_x) { crm_periph_clock_enable(CRM_CAN1_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE); + gpio_init_struct.gpio_mode = GPIO_MODE_MUX; gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL; gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_12; - gpio_init(GPIOA, &gpio_init_struct); + gpio_init_struct.gpio_pins = GPIO_PINS_9; + gpio_init(GPIOB, &gpio_init_struct); + gpio_pin_remap_config(CAN1_GMUX_0010, TRUE); gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_11; - gpio_init(GPIOA, &gpio_init_struct); + gpio_init_struct.gpio_pins = GPIO_PINS_8; + gpio_init(GPIOB, &gpio_init_struct); } #endif #ifdef BSP_USING_CAN2 diff --git a/bsp/at32/at32f403a-start/project.ewp b/bsp/at32/at32f403a-start/project.ewp index c730be840a..dfcd218882 100644 --- a/bsp/at32/at32f403a-start/project.ewp +++ b/bsp/at32/at32f403a-start/project.ewp @@ -2095,7 +2095,7 @@ $PROJ_DIR$\..\..\..\components\libc\compilers\common\stdlib.c - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_read.c + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_open.c $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_lseek.c @@ -2106,21 +2106,21 @@ $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_remove.c - - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\environ.c - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_mem.c - - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_open.c - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_close.c $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_write.c + + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\environ.c + + + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_read.c + CPU @@ -2134,22 +2134,25 @@ $PROJ_DIR$\..\..\..\libcpu\arm\common\div0.c - $PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4\cpuport.c + $PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4\context_iar.S - $PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4\context_iar.S + $PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4\cpuport.c DeviceDrivers + + $PROJ_DIR$\..\..\..\components\drivers\ipc\pipe.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\completion.c - $PROJ_DIR$\..\..\..\components\drivers\ipc\ringbuffer.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\waitqueue.c - $PROJ_DIR$\..\..\..\components\drivers\ipc\waitqueue.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\ringblk_buf.c $PROJ_DIR$\..\..\..\components\drivers\ipc\dataqueue.c @@ -2158,10 +2161,7 @@ $PROJ_DIR$\..\..\..\components\drivers\ipc\workqueue.c - $PROJ_DIR$\..\..\..\components\drivers\ipc\pipe.c - - - $PROJ_DIR$\..\..\..\components\drivers\ipc\ringblk_buf.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\ringbuffer.c $PROJ_DIR$\..\..\..\components\drivers\misc\pin.c @@ -2215,37 +2215,37 @@ $PROJ_DIR$\..\..\..\src\components.c - $PROJ_DIR$\..\..\..\src\ipc.c - - - $PROJ_DIR$\..\..\..\src\idle.c - - - $PROJ_DIR$\..\..\..\src\scheduler.c - - - $PROJ_DIR$\..\..\..\src\timer.c + $PROJ_DIR$\..\..\..\src\mem.c $PROJ_DIR$\..\..\..\src\irq.c - $PROJ_DIR$\..\..\..\src\device.c + $PROJ_DIR$\..\..\..\src\idle.c - $PROJ_DIR$\..\..\..\src\clock.c - - - $PROJ_DIR$\..\..\..\src\memheap.c - - - $PROJ_DIR$\..\..\..\src\kservice.c + $PROJ_DIR$\..\..\..\src\timer.c $PROJ_DIR$\..\..\..\src\object.c - $PROJ_DIR$\..\..\..\src\mem.c + $PROJ_DIR$\..\..\..\src\memheap.c + + + $PROJ_DIR$\..\..\..\src\clock.c + + + $PROJ_DIR$\..\..\..\src\scheduler.c + + + $PROJ_DIR$\..\..\..\src\kservice.c + + + $PROJ_DIR$\..\..\..\src\ipc.c + + + $PROJ_DIR$\..\..\..\src\device.c diff --git a/bsp/at32/at32f403a-start/project.uvproj b/bsp/at32/at32f403a-start/project.uvproj index 98f290ebdd..23d964c938 100644 --- a/bsp/at32/at32f403a-start/project.uvproj +++ b/bsp/at32/at32f403a-start/project.uvproj @@ -411,13 +411,6 @@ Compiler - - - syscalls.c - 1 - ..\..\..\components\libc\compilers\armlibc\syscalls.c - - syscall_mem.c @@ -427,9 +420,9 @@ - stdlib.c + syscalls.c 1 - ..\..\..\components\libc\compilers\common\stdlib.c + ..\..\..\components\libc\compilers\armlibc\syscalls.c @@ -439,16 +432,16 @@ ..\..\..\components\libc\compilers\common\time.c + + + stdlib.c + 1 + ..\..\..\components\libc\compilers\common\stdlib.c + + CPU - - - showmem.c - 1 - ..\..\..\libcpu\arm\common\showmem.c - - div0.c @@ -463,6 +456,13 @@ ..\..\..\libcpu\arm\common\backtrace.c + + + showmem.c + 1 + ..\..\..\libcpu\arm\common\showmem.c + + cpuport.c @@ -480,13 +480,6 @@ DeviceDrivers - - - waitqueue.c - 1 - ..\..\..\components\drivers\ipc\waitqueue.c - - ringblk_buf.c @@ -494,27 +487,6 @@ ..\..\..\components\drivers\ipc\ringblk_buf.c - - - pipe.c - 1 - ..\..\..\components\drivers\ipc\pipe.c - - - - - ringbuffer.c - 1 - ..\..\..\components\drivers\ipc\ringbuffer.c - - - - - workqueue.c - 1 - ..\..\..\components\drivers\ipc\workqueue.c - - dataqueue.c @@ -522,6 +494,27 @@ ..\..\..\components\drivers\ipc\dataqueue.c + + + workqueue.c + 1 + ..\..\..\components\drivers\ipc\workqueue.c + + + + + ringbuffer.c + 1 + ..\..\..\components\drivers\ipc\ringbuffer.c + + + + + pipe.c + 1 + ..\..\..\components\drivers\ipc\pipe.c + + completion.c @@ -529,6 +522,13 @@ ..\..\..\components\drivers\ipc\completion.c + + + waitqueue.c + 1 + ..\..\..\components\drivers\ipc\waitqueue.c + + pin.c @@ -546,6 +546,13 @@ Drivers + + + startup_at32f403a_407.s + 2 + ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s + + at32_msp.c @@ -560,13 +567,6 @@ board\src\board.c - - - startup_at32f403a_407.s - 2 - ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s - - drv_gpio.c @@ -615,27 +615,6 @@ Kernel - - - clock.c - 1 - ..\..\..\src\clock.c - - - - - object.c - 1 - ..\..\..\src\object.c - - - - - ipc.c - 1 - ..\..\..\src\ipc.c - - mem.c @@ -643,27 +622,6 @@ ..\..\..\src\mem.c - - - thread.c - 1 - ..\..\..\src\thread.c - - - - - components.c - 1 - ..\..\..\src\components.c - - - - - mempool.c - 1 - ..\..\..\src\mempool.c - - irq.c @@ -673,9 +631,23 @@ - device.c + idle.c 1 - ..\..\..\src\device.c + ..\..\..\src\idle.c + + + + + object.c + 1 + ..\..\..\src\object.c + + + + + timer.c + 1 + ..\..\..\src\timer.c @@ -685,6 +657,13 @@ ..\..\..\src\memheap.c + + + clock.c + 1 + ..\..\..\src\clock.c + + kservice.c @@ -701,16 +680,37 @@ - timer.c + ipc.c 1 - ..\..\..\src\timer.c + ..\..\..\src\ipc.c - idle.c + device.c 1 - ..\..\..\src\idle.c + ..\..\..\src\device.c + + + + + mempool.c + 1 + ..\..\..\src\mempool.c + + + + + thread.c + 1 + ..\..\..\src\thread.c + + + + + components.c + 1 + ..\..\..\src\components.c diff --git a/bsp/at32/at32f403a-start/project.uvprojx b/bsp/at32/at32f403a-start/project.uvprojx index e28e886888..a8a4e37e16 100644 --- a/bsp/at32/at32f403a-start/project.uvprojx +++ b/bsp/at32/at32f403a-start/project.uvprojx @@ -388,13 +388,6 @@ Compiler - - - syscalls.c - 1 - ..\..\..\components\libc\compilers\armlibc\syscalls.c - - syscall_mem.c @@ -404,9 +397,9 @@ - time.c + syscalls.c 1 - ..\..\..\components\libc\compilers\common\time.c + ..\..\..\components\libc\compilers\armlibc\syscalls.c @@ -416,9 +409,23 @@ ..\..\..\components\libc\compilers\common\stdlib.c + + + time.c + 1 + ..\..\..\components\libc\compilers\common\time.c + + CPU + + + div0.c + 1 + ..\..\..\libcpu\arm\common\div0.c + + backtrace.c @@ -433,13 +440,6 @@ ..\..\..\libcpu\arm\common\showmem.c - - - div0.c - 1 - ..\..\..\libcpu\arm\common\div0.c - - context_rvds.S @@ -459,9 +459,9 @@ DeviceDrivers - workqueue.c + ringbuffer.c 1 - ..\..\..\components\drivers\ipc\workqueue.c + ..\..\..\components\drivers\ipc\ringbuffer.c @@ -471,13 +471,6 @@ ..\..\..\components\drivers\ipc\pipe.c - - - dataqueue.c - 1 - ..\..\..\components\drivers\ipc\dataqueue.c - - completion.c @@ -501,9 +494,16 @@ - ringbuffer.c + dataqueue.c 1 - ..\..\..\components\drivers\ipc\ringbuffer.c + ..\..\..\components\drivers\ipc\dataqueue.c + + + + + workqueue.c + 1 + ..\..\..\components\drivers\ipc\workqueue.c @@ -523,6 +523,13 @@ Drivers + + + startup_at32f403a_407.s + 2 + ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s + + at32_msp.c @@ -537,13 +544,6 @@ board\src\board.c - - - startup_at32f403a_407.s - 2 - ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s - - drv_gpio.c @@ -592,27 +592,6 @@ Kernel - - - kservice.c - 1 - ..\..\..\src\kservice.c - - - - - idle.c - 1 - ..\..\..\src\idle.c - - - - - clock.c - 1 - ..\..\..\src\clock.c - - thread.c @@ -620,27 +599,6 @@ ..\..\..\src\thread.c - - - ipc.c - 1 - ..\..\..\src\ipc.c - - - - - object.c - 1 - ..\..\..\src\object.c - - - - - device.c - 1 - ..\..\..\src\device.c - - mempool.c @@ -657,16 +615,9 @@ - timer.c + mem.c 1 - ..\..\..\src\timer.c - - - - - memheap.c - 1 - ..\..\..\src\memheap.c + ..\..\..\src\mem.c @@ -676,6 +627,41 @@ ..\..\..\src\irq.c + + + idle.c + 1 + ..\..\..\src\idle.c + + + + + timer.c + 1 + ..\..\..\src\timer.c + + + + + object.c + 1 + ..\..\..\src\object.c + + + + + memheap.c + 1 + ..\..\..\src\memheap.c + + + + + clock.c + 1 + ..\..\..\src\clock.c + + scheduler.c @@ -685,9 +671,23 @@ - mem.c + kservice.c 1 - ..\..\..\src\mem.c + ..\..\..\src\kservice.c + + + + + ipc.c + 1 + ..\..\..\src\ipc.c + + + + + device.c + 1 + ..\..\..\src\device.c diff --git a/bsp/at32/at32f403a-start/rtconfig.h b/bsp/at32/at32f403a-start/rtconfig.h index b31daf7805..67fa0442da 100644 --- a/bsp/at32/at32f403a-start/rtconfig.h +++ b/bsp/at32/at32f403a-start/rtconfig.h @@ -61,8 +61,14 @@ #define RT_USING_USER_MAIN #define RT_MAIN_THREAD_STACK_SIZE 2048 #define RT_MAIN_THREAD_PRIORITY 10 -#define RT_USING_MSH + +/* C++ features */ + + +/* Command shell */ + #define RT_USING_FINSH +#define RT_USING_MSH #define FINSH_USING_MSH #define FINSH_THREAD_NAME "tshell" #define FINSH_THREAD_PRIORITY 20 @@ -75,6 +81,9 @@ #define FINSH_USING_DESCRIPTION #define FINSH_ARG_MAX 10 +/* Device virtual file system */ + + /* Device Drivers */ #define RT_USING_DEVICE_IPC @@ -86,7 +95,7 @@ /* Using USB */ -/* C/C++ and POSIX layer */ +/* POSIX layer and C standard library */ #define RT_LIBC_DEFAULT_TIMEZONE 8 @@ -98,10 +107,12 @@ /* Socket is in the 'Network' category */ - /* Network */ +/* VBUS(Virtual Software BUS) */ + + /* Utilities */ @@ -129,58 +140,24 @@ /* language packages */ -/* JSON: JavaScript Object Notation, a lightweight data-interchange format */ - - -/* XML: Extensible Markup Language */ - /* multimedia packages */ -/* LVGL: powerful and easy-to-use embedded GUI library */ - - -/* u8g2: a monochrome graphic library */ - - -/* PainterEngine: A cross-platform graphics application framework written in C language */ - /* tools packages */ /* system packages */ -/* enhanced kernel services */ - - -/* POSIX extension functions */ - - -/* acceleration: Assembly language or algorithmic acceleration packages */ - - -/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ - - -/* Micrium: Micrium software products porting for RT-Thread */ - /* peripheral libraries and drivers */ -/* AI packages */ - - /* miscellaneous packages */ -/* project laboratory */ /* samples: kernel and components samples */ - -/* entertainment: terminal games and other interesting software packages */ - #define SOC_FAMILY_AT32 #define SOC_SERIES_AT32F403A diff --git a/bsp/at32/at32f407-start/.config b/bsp/at32/at32f407-start/.config index 08ad07aa65..e3571da93a 100644 --- a/bsp/at32/at32f407-start/.config +++ b/bsp/at32/at32f407-start/.config @@ -97,8 +97,17 @@ CONFIG_RT_USING_USER_MAIN=y CONFIG_RT_MAIN_THREAD_STACK_SIZE=2048 CONFIG_RT_MAIN_THREAD_PRIORITY=10 # CONFIG_RT_USING_LEGACY is not set -CONFIG_RT_USING_MSH=y + +# +# C++ features +# +# CONFIG_RT_USING_CPLUSPLUS is not set + +# +# Command shell +# CONFIG_RT_USING_FINSH=y +CONFIG_RT_USING_MSH=y CONFIG_FINSH_USING_MSH=y CONFIG_FINSH_THREAD_NAME="tshell" CONFIG_FINSH_THREAD_PRIORITY=20 @@ -112,9 +121,19 @@ CONFIG_FINSH_USING_DESCRIPTION=y # CONFIG_FINSH_ECHO_DISABLE_DEFAULT is not set # CONFIG_FINSH_USING_AUTH is not set CONFIG_FINSH_ARG_MAX=10 + +# +# Device virtual file system +# # CONFIG_RT_USING_DFS is not set -# CONFIG_RT_USING_FAL is not set -# CONFIG_RT_USING_LWP is not set +# CONFIG_RT_DFS_ELM_USE_LFN_0 is not set +# CONFIG_RT_DFS_ELM_USE_LFN_1 is not set +# CONFIG_RT_DFS_ELM_USE_LFN_2 is not set +# CONFIG_RT_DFS_ELM_USE_LFN_3 is not set +# CONFIG_RT_DFS_ELM_LFN_UNICODE_0 is not set +# CONFIG_RT_DFS_ELM_LFN_UNICODE_1 is not set +# CONFIG_RT_DFS_ELM_LFN_UNICODE_2 is not set +# CONFIG_RT_DFS_ELM_LFN_UNICODE_3 is not set # # Device Drivers @@ -158,7 +177,7 @@ CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_USB_DEVICE is not set # -# C/C++ and POSIX layer +# POSIX layer and C standard library # CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 @@ -182,7 +201,6 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # # Socket is in the 'Network' category # -# CONFIG_RT_USING_CPLUSPLUS is not set # # Network @@ -190,8 +208,16 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_RT_USING_SAL is not set # CONFIG_RT_USING_NETDEV is not set # CONFIG_RT_USING_LWIP is not set +# CONFIG_RT_USING_LWIP141 is not set +# CONFIG_RT_USING_LWIP203 is not set +# CONFIG_RT_USING_LWIP212 is not set # CONFIG_RT_USING_AT is not set +# +# VBUS(Virtual Software BUS) +# +# CONFIG_RT_USING_VBUS is not set + # # Utilities # @@ -200,7 +226,7 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_RT_USING_UTEST is not set # CONFIG_RT_USING_VAR_EXPORT is not set # CONFIG_RT_USING_RT_LINK is not set -# CONFIG_RT_USING_VBUS is not set +# CONFIG_RT_USING_LWP is not set # # RT-Thread Utestcases @@ -214,19 +240,17 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # # IoT - internet of things # -# CONFIG_PKG_USING_LWIP is not set -# CONFIG_PKG_USING_LORAWAN_DRIVER is not set # CONFIG_PKG_USING_PAHOMQTT is not set -# CONFIG_PKG_USING_UMQTT is not set # CONFIG_PKG_USING_WEBCLIENT is not set # CONFIG_PKG_USING_WEBNET is not set # CONFIG_PKG_USING_MONGOOSE is not set -# CONFIG_PKG_USING_MYMQTT is not set -# CONFIG_PKG_USING_KAWAII_MQTT is not set -# CONFIG_PKG_USING_BC28_MQTT is not set # CONFIG_PKG_USING_WEBTERMINAL is not set +# CONFIG_PKG_USING_CJSON is not set +# CONFIG_PKG_USING_JSMN is not set # CONFIG_PKG_USING_LIBMODBUS is not set # CONFIG_PKG_USING_FREEMODBUS is not set +# CONFIG_PKG_USING_LJSON is not set +# CONFIG_PKG_USING_EZXML is not set # CONFIG_PKG_USING_NANOPB is not set # @@ -246,12 +270,9 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set -# CONFIG_PKG_USING_CMUX is not set -# CONFIG_PKG_USING_PPP_DEVICE is not set # CONFIG_PKG_USING_AT_DEVICE is not set # CONFIG_PKG_USING_ATSRV_SOCKET is not set # CONFIG_PKG_USING_WIZNET is not set -# CONFIG_PKG_USING_ZB_COORDINATOR is not set # # IoT Cloud @@ -260,13 +281,8 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_GAGENT_CLOUD is not set # CONFIG_PKG_USING_ALI_IOTKIT is not set # CONFIG_PKG_USING_AZURE is not set -# CONFIG_PKG_USING_TENCENT_IOT_EXPLORER is not set -# CONFIG_PKG_USING_JIOT-C-SDK is not set -# CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set -# CONFIG_PKG_USING_JOYLINK is not set -# CONFIG_PKG_USING_EZ_IOT_OS is not set +# CONFIG_PKG_USING_TENCENT_IOTHUB is not set # CONFIG_PKG_USING_NIMBLE is not set -# CONFIG_PKG_USING_LLSYNC_SDK_ADAPTER is not set # CONFIG_PKG_USING_OTA_DOWNLOADER is not set # CONFIG_PKG_USING_IPMSG is not set # CONFIG_PKG_USING_LSSDP is not set @@ -274,106 +290,31 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_LIBRWS is not set # CONFIG_PKG_USING_TCPSERVER is not set # CONFIG_PKG_USING_PROTOBUF_C is not set -# CONFIG_PKG_USING_DLT645 is not set -# CONFIG_PKG_USING_QXWZ is not set -# CONFIG_PKG_USING_SMTP_CLIENT is not set -# CONFIG_PKG_USING_ABUP_FOTA is not set -# CONFIG_PKG_USING_LIBCURL2RTT is not set -# CONFIG_PKG_USING_CAPNP is not set -# CONFIG_PKG_USING_AGILE_TELNET is not set -# CONFIG_PKG_USING_NMEALIB is not set -# CONFIG_PKG_USING_PDULIB is not set -# CONFIG_PKG_USING_BTSTACK is not set -# CONFIG_PKG_USING_LORAWAN_ED_STACK is not set -# CONFIG_PKG_USING_WAYZ_IOTKIT is not set -# CONFIG_PKG_USING_MAVLINK is not set -# CONFIG_PKG_USING_BSAL is not set -# CONFIG_PKG_USING_AGILE_MODBUS is not set -# CONFIG_PKG_USING_AGILE_FTP is not set -# CONFIG_PKG_USING_EMBEDDEDPROTO is not set -# CONFIG_PKG_USING_RT_LINK_HW is not set -# CONFIG_PKG_USING_LORA_PKT_FWD is not set -# CONFIG_PKG_USING_LORA_GW_DRIVER_LIB is not set -# CONFIG_PKG_USING_LORA_PKT_SNIFFER is not set -# CONFIG_PKG_USING_HM is not set -# CONFIG_PKG_USING_SMALL_MODBUS is not set -# CONFIG_PKG_USING_NET_SERVER is not set +# CONFIG_PKG_USING_ONNX_PARSER is not set +# CONFIG_PKG_USING_ONNX_BACKEND is not set # # security packages # # CONFIG_PKG_USING_MBEDTLS is not set -# CONFIG_PKG_USING_LIBSODIUM is not set +# CONFIG_PKG_USING_libsodium is not set # CONFIG_PKG_USING_TINYCRYPT is not set -# CONFIG_PKG_USING_TFM is not set -# CONFIG_PKG_USING_YD_CRYPTO is not set # # language packages # - -# -# JSON: JavaScript Object Notation, a lightweight data-interchange format -# -# CONFIG_PKG_USING_CJSON is not set -# CONFIG_PKG_USING_LJSON is not set -# CONFIG_PKG_USING_RT_CJSON_TOOLS is not set -# CONFIG_PKG_USING_RAPIDJSON is not set -# CONFIG_PKG_USING_JSMN is not set -# CONFIG_PKG_USING_AGILE_JSMN is not set - -# -# XML: Extensible Markup Language -# -# CONFIG_PKG_USING_SIMPLE_XML is not set -# CONFIG_PKG_USING_EZXML is not set -# CONFIG_PKG_USING_LUATOS_SOC is not set # CONFIG_PKG_USING_LUA is not set # CONFIG_PKG_USING_JERRYSCRIPT is not set # CONFIG_PKG_USING_MICROPYTHON is not set -# CONFIG_PKG_USING_PIKASCRIPT is not set # # multimedia packages # - -# -# LVGL: powerful and easy-to-use embedded GUI library -# -# CONFIG_PKG_USING_LVGL is not set -# CONFIG_PKG_USING_LITTLEVGL2RTT is not set -# CONFIG_PKG_USING_LV_MUSIC_DEMO is not set - -# -# u8g2: a monochrome graphic library -# -# CONFIG_PKG_USING_U8G2_OFFICIAL is not set -# CONFIG_PKG_USING_U8G2 is not set # CONFIG_PKG_USING_OPENMV is not set # CONFIG_PKG_USING_MUPDF is not set # CONFIG_PKG_USING_STEMWIN is not set # CONFIG_PKG_USING_WAVPLAYER is not set # CONFIG_PKG_USING_TJPGD is not set -# CONFIG_PKG_USING_PDFGEN is not set -# CONFIG_PKG_USING_HELIX is not set -# CONFIG_PKG_USING_AZUREGUIX is not set -# CONFIG_PKG_USING_TOUCHGFX2RTT is not set -# CONFIG_PKG_USING_NUEMWIN is not set -# CONFIG_PKG_USING_MP3PLAYER is not set -# CONFIG_PKG_USING_TINYJPEG is not set -# CONFIG_PKG_USING_UGUI is not set - -# -# PainterEngine: A cross-platform graphics application framework written in C language -# -# CONFIG_PKG_USING_PAINTERENGINE is not set -# CONFIG_PKG_USING_PAINTERENGINE_AUX is not set -# CONFIG_PKG_USING_MCURSES is not set -# CONFIG_PKG_USING_TERMBOX is not set -# CONFIG_PKG_USING_VT100 is not set -# CONFIG_PKG_USING_QRCODE is not set -# CONFIG_PKG_USING_GUIENGINE is not set -# CONFIG_PKG_USING_PERSIMMON is not set # # tools packages @@ -382,115 +323,29 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_EASYFLASH is not set # CONFIG_PKG_USING_EASYLOGGER is not set # CONFIG_PKG_USING_SYSTEMVIEW is not set -# CONFIG_PKG_USING_SEGGER_RTT is not set # CONFIG_PKG_USING_RDB is not set +# CONFIG_PKG_USING_QRCODE is not set # CONFIG_PKG_USING_ULOG_EASYFLASH is not set -# CONFIG_PKG_USING_ULOG_FILE is not set -# CONFIG_PKG_USING_LOGMGR is not set # CONFIG_PKG_USING_ADBD is not set -# CONFIG_PKG_USING_COREMARK is not set -# CONFIG_PKG_USING_DHRYSTONE is not set -# CONFIG_PKG_USING_MEMORYPERF is not set -# CONFIG_PKG_USING_NR_MICRO_SHELL is not set -# CONFIG_PKG_USING_CHINESE_FONT_LIBRARY is not set -# CONFIG_PKG_USING_LUNAR_CALENDAR is not set -# CONFIG_PKG_USING_BS8116A is not set -# CONFIG_PKG_USING_GPS_RMC is not set -# CONFIG_PKG_USING_URLENCODE is not set -# CONFIG_PKG_USING_UMCN is not set -# CONFIG_PKG_USING_LWRB2RTT is not set -# CONFIG_PKG_USING_CPU_USAGE is not set -# CONFIG_PKG_USING_GBK2UTF8 is not set -# CONFIG_PKG_USING_VCONSOLE is not set -# CONFIG_PKG_USING_KDB is not set -# CONFIG_PKG_USING_WAMR is not set -# CONFIG_PKG_USING_MICRO_XRCE_DDS_CLIENT is not set -# CONFIG_PKG_USING_LWLOG is not set -# CONFIG_PKG_USING_ANV_TRACE is not set -# CONFIG_PKG_USING_ANV_MEMLEAK is not set -# CONFIG_PKG_USING_ANV_TESTSUIT is not set -# CONFIG_PKG_USING_ANV_BENCH is not set -# CONFIG_PKG_USING_DEVMEM is not set -# CONFIG_PKG_USING_REGEX is not set -# CONFIG_PKG_USING_MEM_SANDBOX is not set -# CONFIG_PKG_USING_SOLAR_TERMS is not set -# CONFIG_PKG_USING_GAN_ZHI is not set -# CONFIG_PKG_USING_FDT is not set -# CONFIG_PKG_USING_CBOX is not set -# CONFIG_PKG_USING_SNOWFLAKE is not set # # system packages # - -# -# enhanced kernel services -# -# CONFIG_PKG_USING_RT_MEMCPY_CM is not set -# CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set -# CONFIG_PKG_USING_RT_VSNPRINTF_FULL is not set - -# -# POSIX extension functions -# -# CONFIG_PKG_USING_POSIX_GETLINE is not set -# CONFIG_PKG_USING_POSIX_WCWIDTH is not set -# CONFIG_PKG_USING_POSIX_ITOA is not set -# CONFIG_PKG_USING_POSIX_STRINGS is not set - -# -# acceleration: Assembly language or algorithmic acceleration packages -# -# CONFIG_PKG_USING_QFPLIB_M0_FULL is not set -# CONFIG_PKG_USING_QFPLIB_M0_TINY is not set -# CONFIG_PKG_USING_QFPLIB_M3 is not set - -# -# CMSIS: ARM Cortex-M Microcontroller Software Interface Standard -# -# CONFIG_PKG_USING_CMSIS_5 is not set -# CONFIG_PKG_USING_CMSIS_RTOS2 is not set - -# -# Micrium: Micrium software products porting for RT-Thread -# -# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set -# CONFIG_PKG_USING_UCOSII_WRAPPER is not set -# CONFIG_PKG_USING_UC_CRC is not set -# CONFIG_PKG_USING_UC_CLK is not set -# CONFIG_PKG_USING_UC_COMMON is not set -# CONFIG_PKG_USING_UC_MODBUS is not set -# CONFIG_PKG_USING_RTDUINO is not set +# CONFIG_PKG_USING_GUIENGINE is not set +# CONFIG_PKG_USING_PERSIMMON is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set +# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_PARTITION is not set -# CONFIG_PKG_USING_FLASHDB is not set +# CONFIG_PKG_USING_FAL is not set # CONFIG_PKG_USING_SQLITE is not set # CONFIG_PKG_USING_RTI is not set +# CONFIG_PKG_USING_LITTLEVGL2RTT is not set +# CONFIG_PKG_USING_CMSIS is not set # CONFIG_PKG_USING_DFS_YAFFS is not set # CONFIG_PKG_USING_LITTLEFS is not set -# CONFIG_PKG_USING_DFS_JFFS2 is not set -# CONFIG_PKG_USING_DFS_UFFS is not set -# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_THREAD_POOL is not set # CONFIG_PKG_USING_ROBOTS is not set -# CONFIG_PKG_USING_EV is not set -# CONFIG_PKG_USING_SYSWATCH is not set -# CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set -# CONFIG_PKG_USING_PLCCORE is not set -# CONFIG_PKG_USING_RAMDISK is not set -# CONFIG_PKG_USING_MININI is not set -# CONFIG_PKG_USING_QBOOT is not set -# CONFIG_PKG_USING_PPOOL is not set -# CONFIG_PKG_USING_OPENAMP is not set -# CONFIG_PKG_USING_LPM is not set -# CONFIG_PKG_USING_TLSF is not set -# CONFIG_PKG_USING_EVENT_RECORDER is not set -# CONFIG_PKG_USING_ARM_2D is not set -# CONFIG_PKG_USING_MCUBOOT is not set -# CONFIG_PKG_USING_TINYUSB is not set -# CONFIG_PKG_USING_CHERRYUSB is not set -# CONFIG_PKG_USING_KMULTI_RTIMER is not set # # peripheral libraries and drivers @@ -498,25 +353,18 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_SENSORS_DRIVERS is not set # CONFIG_PKG_USING_REALTEK_AMEBA is not set # CONFIG_PKG_USING_SHT2X is not set -# CONFIG_PKG_USING_SHT3X is not set -# CONFIG_PKG_USING_AS7341 is not set # CONFIG_PKG_USING_STM32_SDIO is not set # CONFIG_PKG_USING_ICM20608 is not set +# CONFIG_PKG_USING_U8G2 is not set # CONFIG_PKG_USING_BUTTON is not set # CONFIG_PKG_USING_PCF8574 is not set # CONFIG_PKG_USING_SX12XX is not set # CONFIG_PKG_USING_SIGNAL_LED is not set # CONFIG_PKG_USING_LEDBLINK is not set -# CONFIG_PKG_USING_LITTLED is not set -# CONFIG_PKG_USING_LKDGUI is not set -# CONFIG_PKG_USING_NRF5X_SDK is not set -# CONFIG_PKG_USING_NRFX is not set # CONFIG_PKG_USING_WM_LIBRARIES is not set # CONFIG_PKG_USING_KENDRYTE_SDK is not set # CONFIG_PKG_USING_INFRARED is not set -# CONFIG_PKG_USING_MULTI_INFRARED is not set -# CONFIG_PKG_USING_AGILE_BUTTON is not set -# CONFIG_PKG_USING_AGILE_LED is not set +# CONFIG_PKG_USING_ROSSERIAL is not set # CONFIG_PKG_USING_AT24CXX is not set # CONFIG_PKG_USING_MOTIONDRIVER2RTT is not set # CONFIG_PKG_USING_AD7746 is not set @@ -524,75 +372,27 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_I2C_TOOLS is not set # CONFIG_PKG_USING_NRF24L01 is not set # CONFIG_PKG_USING_TOUCH_DRIVERS is not set +# CONFIG_PKG_USING_LCD_DRIVERS is not set # CONFIG_PKG_USING_MAX17048 is not set -# CONFIG_PKG_USING_RPLIDAR is not set -# CONFIG_PKG_USING_AS608 is not set -# CONFIG_PKG_USING_RC522 is not set -# CONFIG_PKG_USING_WS2812B is not set -# CONFIG_PKG_USING_EMBARC_BSP is not set -# CONFIG_PKG_USING_EXTERN_RTC_DRIVERS is not set -# CONFIG_PKG_USING_MULTI_RTIMER is not set -# CONFIG_PKG_USING_MAX7219 is not set -# CONFIG_PKG_USING_BEEP is not set -# CONFIG_PKG_USING_EASYBLINK is not set -# CONFIG_PKG_USING_PMS_SERIES is not set -# CONFIG_PKG_USING_CAN_YMODEM is not set -# CONFIG_PKG_USING_LORA_RADIO_DRIVER is not set -# CONFIG_PKG_USING_QLED is not set -# CONFIG_PKG_USING_PAJ7620 is not set -# CONFIG_PKG_USING_AGILE_CONSOLE is not set -# CONFIG_PKG_USING_LD3320 is not set -# CONFIG_PKG_USING_WK2124 is not set -# CONFIG_PKG_USING_LY68L6400 is not set -# CONFIG_PKG_USING_DM9051 is not set -# CONFIG_PKG_USING_SSD1306 is not set -# CONFIG_PKG_USING_QKEY is not set -# CONFIG_PKG_USING_RS485 is not set -# CONFIG_PKG_USING_RS232 is not set -# CONFIG_PKG_USING_NES is not set -# CONFIG_PKG_USING_VIRTUAL_SENSOR is not set -# CONFIG_PKG_USING_VDEVICE is not set -# CONFIG_PKG_USING_SGM706 is not set -# CONFIG_PKG_USING_STM32WB55_SDK is not set -# CONFIG_PKG_USING_RDA58XX is not set -# CONFIG_PKG_USING_LIBNFC is not set -# CONFIG_PKG_USING_MFOC is not set -# CONFIG_PKG_USING_TMC51XX is not set -# CONFIG_PKG_USING_TCA9534 is not set -# CONFIG_PKG_USING_KOBUKI is not set -# CONFIG_PKG_USING_ROSSERIAL is not set -# CONFIG_PKG_USING_MICRO_ROS is not set -# CONFIG_PKG_USING_MCP23008 is not set -# CONFIG_PKG_USING_BLUETRUM_SDK is not set -# CONFIG_PKG_USING_MISAKA_AT24CXX is not set -# CONFIG_PKG_USING_MISAKA_RGB_BLING is not set -# CONFIG_PKG_USING_LORA_MODEM_DRIVER is not set -# CONFIG_PKG_USING_BL_MCU_SDK is not set -# CONFIG_PKG_USING_SOFT_SERIAL is not set -# CONFIG_PKG_USING_MB85RS16 is not set -# CONFIG_PKG_USING_CW2015 is not set -# CONFIG_PKG_USING_RFM300 is not set - -# -# AI packages -# -# CONFIG_PKG_USING_LIBANN is not set -# CONFIG_PKG_USING_NNOM is not set -# CONFIG_PKG_USING_ONNX_BACKEND is not set -# CONFIG_PKG_USING_ONNX_PARSER is not set -# CONFIG_PKG_USING_TENSORFLOWLITEMICRO is not set -# CONFIG_PKG_USING_ELAPACK is not set -# CONFIG_PKG_USING_ULAPACK is not set -# CONFIG_PKG_USING_QUEST is not set -# CONFIG_PKG_USING_NAXOS is not set # # miscellaneous packages # - -# -# project laboratory -# +# CONFIG_PKG_USING_LIBCSV is not set +# CONFIG_PKG_USING_OPTPARSE is not set +# CONFIG_PKG_USING_FASTLZ is not set +# CONFIG_PKG_USING_MINILZO is not set +# CONFIG_PKG_USING_QUICKLZ is not set +# CONFIG_PKG_USING_MULTIBUTTON is not set +# CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set +# CONFIG_PKG_USING_CANFESTIVAL is not set +# CONFIG_PKG_USING_ZLIB is not set +# CONFIG_PKG_USING_DSTR is not set +# CONFIG_PKG_USING_TINYFRAME is not set +# CONFIG_PKG_USING_KENDRYTE_DEMO is not set +# CONFIG_PKG_USING_DIGITALCTRL is not set +# CONFIG_PKG_USING_UPACKER is not set +# CONFIG_PKG_USING_UPARAM is not set # # samples: kernel and components samples @@ -601,50 +401,13 @@ CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 # CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set # CONFIG_PKG_USING_NETWORK_SAMPLES is not set # CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set - -# -# entertainment: terminal games and other interesting software packages -# -# CONFIG_PKG_USING_CMATRIX is not set -# CONFIG_PKG_USING_SL is not set -# CONFIG_PKG_USING_CAL is not set -# CONFIG_PKG_USING_ACLOCK is not set -# CONFIG_PKG_USING_THREES is not set -# CONFIG_PKG_USING_2048 is not set -# CONFIG_PKG_USING_SNAKE is not set -# CONFIG_PKG_USING_TETRIS is not set -# CONFIG_PKG_USING_DONUT is not set -# CONFIG_PKG_USING_COWSAY is not set -# CONFIG_PKG_USING_LIBCSV is not set -# CONFIG_PKG_USING_OPTPARSE is not set -# CONFIG_PKG_USING_FASTLZ is not set -# CONFIG_PKG_USING_MINILZO is not set -# CONFIG_PKG_USING_QUICKLZ is not set -# CONFIG_PKG_USING_LZMA is not set -# CONFIG_PKG_USING_MULTIBUTTON is not set -# CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set -# CONFIG_PKG_USING_CANFESTIVAL is not set -# CONFIG_PKG_USING_ZLIB is not set -# CONFIG_PKG_USING_MINIZIP is not set -# CONFIG_PKG_USING_HEATSHRINK is not set -# CONFIG_PKG_USING_DSTR is not set -# CONFIG_PKG_USING_TINYFRAME is not set -# CONFIG_PKG_USING_KENDRYTE_DEMO is not set -# CONFIG_PKG_USING_DIGITALCTRL is not set -# CONFIG_PKG_USING_UPACKER is not set -# CONFIG_PKG_USING_UPARAM is not set # CONFIG_PKG_USING_HELLO is not set # CONFIG_PKG_USING_VI is not set -# CONFIG_PKG_USING_KI is not set +# CONFIG_PKG_USING_NNOM is not set +# CONFIG_PKG_USING_LIBANN is not set +# CONFIG_PKG_USING_ELAPACK is not set # CONFIG_PKG_USING_ARMv7M_DWT is not set -# CONFIG_PKG_USING_UKAL is not set -# CONFIG_PKG_USING_CRCLIB is not set -# CONFIG_PKG_USING_LWGPS is not set -# CONFIG_PKG_USING_STATE_MACHINE is not set -# CONFIG_PKG_USING_DESIGN_PATTERN is not set -# CONFIG_PKG_USING_CONTROLLER is not set -# CONFIG_PKG_USING_PHASE_LOCKED_LOOP is not set -# CONFIG_PKG_USING_MFBD is not set +# CONFIG_PKG_USING_VT100 is not set CONFIG_SOC_FAMILY_AT32=y CONFIG_SOC_SERIES_AT32F407=y @@ -664,7 +427,11 @@ CONFIG_BSP_USING_SERIAL=y CONFIG_BSP_USING_GPIO=y # CONFIG_BSP_USING_ON_CHIP_FLASH is not set # CONFIG_BSP_USING_EMAC is not set +# CONFIG_PHY_USING_DM9162 is not set +# CONFIG_PHY_USING_DP83848 is not set # CONFIG_BSP_USING_RTC is not set +# CONFIG_BSP_RTC_USING_LEXT is not set +# CONFIG_BSP_RTC_USING_LICK is not set CONFIG_BSP_USING_UART=y CONFIG_BSP_USING_UART1=y CONFIG_BSP_USING_UART2=y diff --git a/bsp/at32/at32f407-start/README.md b/bsp/at32/at32f407-start/README.md index 7995aa5c91..25f64164e5 100644 --- a/bsp/at32/at32f407-start/README.md +++ b/bsp/at32/at32f407-start/README.md @@ -91,8 +91,8 @@ AT32F407-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以 | PC3 | ADC1/2_IN13 | | PC4 | ADC1/2_IN14 | | PC5 | ADC1/2_IN15 | -| PA11 | CAN1_RX | -| PA12 | CAN1_TX | +| PB8 | CAN1_RX | +| PB9 | CAN1_TX | | PB5 | CAN2_RX | | PB6 | CAN2_TX | | PB11 | EMAC_RMII_TX_EN | @@ -119,7 +119,7 @@ AT32F407-START板级包支持MDK4﹑MDK5﹑IAR开发环境和GCC编译器,以 双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 -> 工程默认配置使用 JLink 下载程序,在通过 JLink 连接开发板的基础上,点击下载按钮即可下载程序到开发板 +> 工程默认配置使用AT-LINK SWD下载程序,在通过AT-LINK SWD连接开发板的基础上,点击下载按钮即可下载程序到开发板 #### 运行结果 diff --git a/bsp/at32/at32f407-start/board/inc/at32_msp.h b/bsp/at32/at32f407-start/board/inc/at32_msp.h index ba267a172c..21673cb290 100644 --- a/bsp/at32/at32f407-start/board/inc/at32_msp.h +++ b/bsp/at32/at32f407-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_emac_init(void *instance); #endif /* __AT32_MSP_H__ */ diff --git a/bsp/at32/at32f407-start/board/src/at32_msp.c b/bsp/at32/at32f407-start/board/src/at32_msp.c index 70338e3fd1..463eb86d19 100644 --- a/bsp/at32/at32f407-start/board/src/at32_msp.c +++ b/bsp/at32/at32f407-start/board/src/at32_msp.c @@ -279,17 +279,20 @@ void at32_msp_can_init(void *instance) if(CAN1 == can_x) { crm_periph_clock_enable(CRM_CAN1_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE); + gpio_init_struct.gpio_mode = GPIO_MODE_MUX; gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL; gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_12; - gpio_init(GPIOA, &gpio_init_struct); + gpio_init_struct.gpio_pins = GPIO_PINS_9; + gpio_init(GPIOB, &gpio_init_struct); + gpio_pin_remap_config(CAN1_GMUX_0010, TRUE); gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_11; - gpio_init(GPIOA, &gpio_init_struct); + gpio_init_struct.gpio_pins = GPIO_PINS_8; + gpio_init(GPIOB, &gpio_init_struct); } #endif #ifdef BSP_USING_CAN2 @@ -314,3 +317,42 @@ void at32_msp_can_init(void *instance) #endif } #endif /* BSP_USING_CAN */ + +#ifdef BSP_USING_EMAC +void at32_msp_emac_init(void *instance) +{ + gpio_init_type gpio_init_struct; + + crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE); + crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE); + + gpio_pin_remap_config(EMAC_MUX, TRUE); + + gpio_default_para_init(&gpio_init_struct); + gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER; + gpio_init_struct.gpio_mode = GPIO_MODE_MUX; + gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL; + gpio_init_struct.gpio_pull = GPIO_PULL_NONE; + gpio_init_struct.gpio_pins = GPIO_PINS_2; + gpio_init(GPIOA, &gpio_init_struct); + + gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13; + gpio_init(GPIOB, &gpio_init_struct); + + gpio_init_struct.gpio_pins = GPIO_PINS_1; + gpio_init(GPIOC, &gpio_init_struct); + + gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; + gpio_init_struct.gpio_pull = GPIO_PULL_NONE; + gpio_init_struct.gpio_pins = GPIO_PINS_1; + gpio_init(GPIOA, &gpio_init_struct); + + gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; + gpio_init_struct.gpio_pull = GPIO_PULL_NONE; + gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10; + gpio_init(GPIOD, &gpio_init_struct); +} +#endif /* BSP_USING_EMAC */ diff --git a/bsp/at32/at32f407-start/project.ewp b/bsp/at32/at32f407-start/project.ewp index f85cd95c61..ae0167099d 100644 --- a/bsp/at32/at32f407-start/project.ewp +++ b/bsp/at32/at32f407-start/project.ewp @@ -2098,26 +2098,26 @@ $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_mem.c - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_open.c + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_close.c + + + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_remove.c $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\environ.c + + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_open.c + + + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_lseek.c + $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_write.c $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscalls.c - - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_close.c - - - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_lseek.c - - - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_remove.c - $PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_read.c @@ -2125,10 +2125,10 @@ CPU - $PROJ_DIR$\..\..\..\libcpu\arm\common\backtrace.c + $PROJ_DIR$\..\..\..\libcpu\arm\common\div0.c - $PROJ_DIR$\..\..\..\libcpu\arm\common\div0.c + $PROJ_DIR$\..\..\..\libcpu\arm\common\backtrace.c $PROJ_DIR$\..\..\..\libcpu\arm\common\showmem.c @@ -2143,14 +2143,14 @@ DeviceDrivers - $PROJ_DIR$\..\..\..\components\drivers\ipc\workqueue.c - - - $PROJ_DIR$\..\..\..\components\drivers\ipc\waitqueue.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\ringblk_buf.c $PROJ_DIR$\..\..\..\components\drivers\ipc\dataqueue.c + + $PROJ_DIR$\..\..\..\components\drivers\ipc\workqueue.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\ringbuffer.c @@ -2161,7 +2161,7 @@ $PROJ_DIR$\..\..\..\components\drivers\ipc\completion.c - $PROJ_DIR$\..\..\..\components\drivers\ipc\ringblk_buf.c + $PROJ_DIR$\..\..\..\components\drivers\ipc\waitqueue.c $PROJ_DIR$\..\..\..\components\drivers\misc\pin.c @@ -2205,48 +2205,48 @@ Kernel + + $PROJ_DIR$\..\..\..\src\object.c + $PROJ_DIR$\..\..\..\src\timer.c - - $PROJ_DIR$\..\..\..\src\thread.c - - - $PROJ_DIR$\..\..\..\src\irq.c - - - $PROJ_DIR$\..\..\..\src\ipc.c - - - $PROJ_DIR$\..\..\..\src\mem.c - - - $PROJ_DIR$\..\..\..\src\mempool.c - - - $PROJ_DIR$\..\..\..\src\idle.c - - - $PROJ_DIR$\..\..\..\src\kservice.c - $PROJ_DIR$\..\..\..\src\memheap.c - $PROJ_DIR$\..\..\..\src\components.c + $PROJ_DIR$\..\..\..\src\clock.c + + + $PROJ_DIR$\..\..\..\src\kservice.c $PROJ_DIR$\..\..\..\src\scheduler.c - $PROJ_DIR$\..\..\..\src\clock.c - - - $PROJ_DIR$\..\..\..\src\object.c + $PROJ_DIR$\..\..\..\src\ipc.c $PROJ_DIR$\..\..\..\src\device.c + + $PROJ_DIR$\..\..\..\src\mempool.c + + + $PROJ_DIR$\..\..\..\src\components.c + + + $PROJ_DIR$\..\..\..\src\thread.c + + + $PROJ_DIR$\..\..\..\src\mem.c + + + $PROJ_DIR$\..\..\..\src\irq.c + + + $PROJ_DIR$\..\..\..\src\idle.c + Libraries diff --git a/bsp/at32/at32f407-start/project.uvproj b/bsp/at32/at32f407-start/project.uvproj index 13d0f18b8d..bba94d52c9 100644 --- a/bsp/at32/at32f407-start/project.uvproj +++ b/bsp/at32/at32f407-start/project.uvproj @@ -427,16 +427,16 @@ - stdlib.c + time.c 1 - ..\..\..\components\libc\compilers\common\stdlib.c + ..\..\..\components\libc\compilers\common\time.c - time.c + stdlib.c 1 - ..\..\..\components\libc\compilers\common\time.c + ..\..\..\components\libc\compilers\common\stdlib.c @@ -444,16 +444,16 @@ CPU - showmem.c + backtrace.c 1 - ..\..\..\libcpu\arm\common\showmem.c + ..\..\..\libcpu\arm\common\backtrace.c - backtrace.c + showmem.c 1 - ..\..\..\libcpu\arm\common\backtrace.c + ..\..\..\libcpu\arm\common\showmem.c @@ -463,13 +463,6 @@ ..\..\..\libcpu\arm\common\div0.c - - - cpuport.c - 1 - ..\..\..\libcpu\arm\cortex-m4\cpuport.c - - context_rvds.S @@ -477,16 +470,16 @@ ..\..\..\libcpu\arm\cortex-m4\context_rvds.S + + + cpuport.c + 1 + ..\..\..\libcpu\arm\cortex-m4\cpuport.c + + DeviceDrivers - - - ringblk_buf.c - 1 - ..\..\..\components\drivers\ipc\ringblk_buf.c - - waitqueue.c @@ -496,23 +489,9 @@ - workqueue.c + ringblk_buf.c 1 - ..\..\..\components\drivers\ipc\workqueue.c - - - - - completion.c - 1 - ..\..\..\components\drivers\ipc\completion.c - - - - - ringbuffer.c - 1 - ..\..\..\components\drivers\ipc\ringbuffer.c + ..\..\..\components\drivers\ipc\ringblk_buf.c @@ -522,6 +501,20 @@ ..\..\..\components\drivers\ipc\dataqueue.c + + + workqueue.c + 1 + ..\..\..\components\drivers\ipc\workqueue.c + + + + + ringbuffer.c + 1 + ..\..\..\components\drivers\ipc\ringbuffer.c + + pipe.c @@ -529,6 +522,13 @@ ..\..\..\components\drivers\ipc\pipe.c + + + completion.c + 1 + ..\..\..\components\drivers\ipc\completion.c + + pin.c @@ -546,6 +546,13 @@ Drivers + + + startup_at32f403a_407.s + 2 + ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s + + at32_msp.c @@ -560,13 +567,6 @@ board\src\board.c - - - startup_at32f403a_407.s - 2 - ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s - - drv_gpio.c @@ -615,20 +615,6 @@ Kernel - - - thread.c - 1 - ..\..\..\src\thread.c - - - - - clock.c - 1 - ..\..\..\src\clock.c - - device.c @@ -643,13 +629,6 @@ ..\..\..\src\mempool.c - - - mem.c - 1 - ..\..\..\src\mem.c - - components.c @@ -659,16 +638,9 @@ - timer.c + mem.c 1 - ..\..\..\src\timer.c - - - - - irq.c - 1 - ..\..\..\src\irq.c + ..\..\..\src\mem.c @@ -680,23 +652,16 @@ - kservice.c + irq.c 1 - ..\..\..\src\kservice.c + ..\..\..\src\irq.c - memheap.c + timer.c 1 - ..\..\..\src\memheap.c - - - - - ipc.c - 1 - ..\..\..\src\ipc.c + ..\..\..\src\timer.c @@ -713,6 +678,41 @@ ..\..\..\src\object.c + + + thread.c + 1 + ..\..\..\src\thread.c + + + + + memheap.c + 1 + ..\..\..\src\memheap.c + + + + + clock.c + 1 + ..\..\..\src\clock.c + + + + + kservice.c + 1 + ..\..\..\src\kservice.c + + + + + ipc.c + 1 + ..\..\..\src\ipc.c + + Libraries diff --git a/bsp/at32/at32f407-start/project.uvprojx b/bsp/at32/at32f407-start/project.uvprojx index 916582732b..f61dfd5d7b 100644 --- a/bsp/at32/at32f407-start/project.uvprojx +++ b/bsp/at32/at32f407-start/project.uvprojx @@ -388,13 +388,6 @@ Compiler - - - syscall_mem.c - 1 - ..\..\..\components\libc\compilers\armlibc\syscall_mem.c - - syscalls.c @@ -404,9 +397,9 @@ - time.c + syscall_mem.c 1 - ..\..\..\components\libc\compilers\common\time.c + ..\..\..\components\libc\compilers\armlibc\syscall_mem.c @@ -416,9 +409,23 @@ ..\..\..\components\libc\compilers\common\stdlib.c + + + time.c + 1 + ..\..\..\components\libc\compilers\common\time.c + + CPU + + + div0.c + 1 + ..\..\..\libcpu\arm\common\div0.c + + backtrace.c @@ -435,9 +442,9 @@ - div0.c - 1 - ..\..\..\libcpu\arm\common\div0.c + context_rvds.S + 2 + ..\..\..\libcpu\arm\cortex-m4\context_rvds.S @@ -447,30 +454,9 @@ ..\..\..\libcpu\arm\cortex-m4\cpuport.c - - - context_rvds.S - 2 - ..\..\..\libcpu\arm\cortex-m4\context_rvds.S - - DeviceDrivers - - - dataqueue.c - 1 - ..\..\..\components\drivers\ipc\dataqueue.c - - - - - ringbuffer.c - 1 - ..\..\..\components\drivers\ipc\ringbuffer.c - - pipe.c @@ -480,9 +466,9 @@ - waitqueue.c + workqueue.c 1 - ..\..\..\components\drivers\ipc\waitqueue.c + ..\..\..\components\drivers\ipc\workqueue.c @@ -501,9 +487,23 @@ - workqueue.c + dataqueue.c 1 - ..\..\..\components\drivers\ipc\workqueue.c + ..\..\..\components\drivers\ipc\dataqueue.c + + + + + waitqueue.c + 1 + ..\..\..\components\drivers\ipc\waitqueue.c + + + + + ringbuffer.c + 1 + ..\..\..\components\drivers\ipc\ringbuffer.c @@ -523,6 +523,13 @@ Drivers + + + startup_at32f403a_407.s + 2 + ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s + + at32_msp.c @@ -537,13 +544,6 @@ board\src\board.c - - - startup_at32f403a_407.s - 2 - ..\libraries\f403a_407\firmware\cmsis\cm4\device_support\startup\mdk\startup_at32f403a_407.s - - drv_gpio.c @@ -592,6 +592,48 @@ Kernel + + + irq.c + 1 + ..\..\..\src\irq.c + + + + + idle.c + 1 + ..\..\..\src\idle.c + + + + + scheduler.c + 1 + ..\..\..\src\scheduler.c + + + + + mem.c + 1 + ..\..\..\src\mem.c + + + + + memheap.c + 1 + ..\..\..\src\memheap.c + + + + + clock.c + 1 + ..\..\..\src\clock.c + + thread.c @@ -608,23 +650,9 @@ - mem.c + object.c 1 - ..\..\..\src\mem.c - - - - - scheduler.c - 1 - ..\..\..\src\scheduler.c - - - - - clock.c - 1 - ..\..\..\src\clock.c + ..\..\..\src\object.c @@ -641,6 +669,13 @@ ..\..\..\src\device.c + + + components.c + 1 + ..\..\..\src\components.c + + timer.c @@ -648,34 +683,6 @@ ..\..\..\src\timer.c - - - memheap.c - 1 - ..\..\..\src\memheap.c - - - - - object.c - 1 - ..\..\..\src\object.c - - - - - irq.c - 1 - ..\..\..\src\irq.c - - - - - idle.c - 1 - ..\..\..\src\idle.c - - mempool.c @@ -683,13 +690,6 @@ ..\..\..\src\mempool.c - - - components.c - 1 - ..\..\..\src\components.c - - Libraries diff --git a/bsp/at32/at32f407-start/rtconfig.h b/bsp/at32/at32f407-start/rtconfig.h index f2b3f3c462..1516b550f1 100644 --- a/bsp/at32/at32f407-start/rtconfig.h +++ b/bsp/at32/at32f407-start/rtconfig.h @@ -61,8 +61,14 @@ #define RT_USING_USER_MAIN #define RT_MAIN_THREAD_STACK_SIZE 2048 #define RT_MAIN_THREAD_PRIORITY 10 -#define RT_USING_MSH + +/* C++ features */ + + +/* Command shell */ + #define RT_USING_FINSH +#define RT_USING_MSH #define FINSH_USING_MSH #define FINSH_THREAD_NAME "tshell" #define FINSH_THREAD_PRIORITY 20 @@ -75,6 +81,9 @@ #define FINSH_USING_DESCRIPTION #define FINSH_ARG_MAX 10 +/* Device virtual file system */ + + /* Device Drivers */ #define RT_USING_DEVICE_IPC @@ -86,7 +95,7 @@ /* Using USB */ -/* C/C++ and POSIX layer */ +/* POSIX layer and C standard library */ #define RT_LIBC_DEFAULT_TIMEZONE 8 @@ -98,10 +107,12 @@ /* Socket is in the 'Network' category */ - /* Network */ +/* VBUS(Virtual Software BUS) */ + + /* Utilities */ @@ -129,58 +140,24 @@ /* language packages */ -/* JSON: JavaScript Object Notation, a lightweight data-interchange format */ - - -/* XML: Extensible Markup Language */ - /* multimedia packages */ -/* LVGL: powerful and easy-to-use embedded GUI library */ - - -/* u8g2: a monochrome graphic library */ - - -/* PainterEngine: A cross-platform graphics application framework written in C language */ - /* tools packages */ /* system packages */ -/* enhanced kernel services */ - - -/* POSIX extension functions */ - - -/* acceleration: Assembly language or algorithmic acceleration packages */ - - -/* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ - - -/* Micrium: Micrium software products porting for RT-Thread */ - /* peripheral libraries and drivers */ -/* AI packages */ - - /* miscellaneous packages */ -/* project laboratory */ /* samples: kernel and components samples */ - -/* entertainment: terminal games and other interesting software packages */ - #define SOC_FAMILY_AT32 #define SOC_SERIES_AT32F407 diff --git a/bsp/at32/libraries/f403a_407/rt_drivers/drv_can.c b/bsp/at32/libraries/f403a_407/rt_drivers/drv_can.c index e819c05796..a1c24a4f1d 100644 --- a/bsp/at32/libraries/f403a_407/rt_drivers/drv_can.c +++ b/bsp/at32/libraries/f403a_407/rt_drivers/drv_can.c @@ -15,11 +15,12 @@ #define LOG_TAG "drv_can" #include +#ifdef SOC_SERIES_AT32F403A /* attention !!! baud calculation example: apbclk / ((ss + bs1 + bs2) * brp), ep: 120 / ((1 + 8 + 3) * 10) = 1MHz*/ -/* attention !!! apbclk 120 mhz */ +/* attention !!! default apbclk 120 mhz */ static const struct at32_baud_rate can_baud_rate_tab[] = { - {CAN1MBaud, {10 , CAN_RSAW_2TQ, CAN_BTS1_8TQ, CAN_BTS2_3TQ}}, + {CAN1MBaud, {10 , CAN_RSAW_3TQ, CAN_BTS1_8TQ, CAN_BTS2_3TQ}}, {CAN800kBaud, {15 , CAN_RSAW_2TQ, CAN_BTS1_7TQ, CAN_BTS2_2TQ}}, {CAN500kBaud, {20 , CAN_RSAW_2TQ, CAN_BTS1_9TQ, CAN_BTS2_2TQ}}, {CAN250kBaud, {40 , CAN_RSAW_2TQ, CAN_BTS1_9TQ, CAN_BTS2_2TQ}}, @@ -29,6 +30,23 @@ static const struct at32_baud_rate can_baud_rate_tab[] = {CAN20kBaud, {375, CAN_RSAW_2TQ, CAN_BTS1_13TQ, CAN_BTS2_2TQ}}, {CAN10kBaud, {750, CAN_RSAW_2TQ, CAN_BTS1_13TQ, CAN_BTS2_2TQ}} }; +#endif +#ifdef SOC_SERIES_AT32F407 +/* attention !!! baud calculation example: apbclk / ((ss + bs1 + bs2) * brp), ep: 100 / ((1 + 7 + 2) * 10) = 1MHz*/ +/* attention !!! default apbclk 100 mhz */ +static const struct at32_baud_rate can_baud_rate_tab[] = +{ + {CAN1MBaud, {10 , CAN_RSAW_3TQ, CAN_BTS1_7TQ, CAN_BTS2_2TQ}}, + {CAN800kBaud, {25, CAN_RSAW_1TQ, CAN_BTS1_3TQ, CAN_BTS2_1TQ}}, + {CAN500kBaud, {10, CAN_RSAW_3TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN250kBaud, {20, CAN_RSAW_3TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN125kBaud, {40, CAN_RSAW_3TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN100kBaud, {50, CAN_RSAW_3TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN50kBaud, {100, CAN_RSAW_2TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN20kBaud, {250, CAN_RSAW_2TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}}, + {CAN10kBaud, {500, CAN_RSAW_2TQ, CAN_BTS1_16TQ, CAN_BTS2_3TQ}} +}; +#endif #ifdef BSP_USING_CAN1 static struct at32_can can_instance1 = @@ -399,7 +417,6 @@ static int _can_sendmsg(struct rt_can_device *can, const void *buf, rt_uint32_t hcan = &((struct at32_can *) can->parent.user_data)->config; struct rt_can_msg *pmsg = (struct rt_can_msg *) buf; can_tx_message_type tx_message; - rt_uint32_t timeout = 0; /* check select mailbox is empty */ switch (box_num) @@ -463,10 +480,6 @@ static int _can_sendmsg(struct rt_can_device *can, const void *buf, rt_uint32_t tx_message.data[7] = (uint32_t)pmsg->data[7]; can_message_transmit(hcan->can_x, &tx_message); - while((can_transmit_status_get(hcan->can_x, (can_tx_mailbox_num_type)box_num) != CAN_TX_STATUS_SUCCESSFUL) && (timeout != 0xFFFF)) - { - timeout++; - } return RT_EOK; } @@ -683,7 +696,8 @@ void CAN1_SE_IRQHandler(void) can_instance1.device.status.rcverrcnt = errtype >> 24; can_instance1.device.status.snderrcnt = (errtype >> 16 & 0xFF); can_instance1.device.status.errcode = errtype & 0x07; - hcan->can_x->msts_bit.eoif = 1; + /* clear error flags */ + can_flag_clear(hcan->can_x, CAN_ETR_FLAG); rt_interrupt_leave(); } #endif @@ -802,7 +816,8 @@ void CAN2_SE_IRQHandler(void) can_instance2.device.status.rcverrcnt = errtype >> 24; can_instance2.device.status.snderrcnt = (errtype >> 16 & 0xFF); can_instance2.device.status.errcode = errtype & 0x07; - hcan->can_x->msts_bit.eoif = 1; + /* clear error flags */ + can_flag_clear(hcan->can_x, CAN_ETR_FLAG); rt_interrupt_leave(); } #endif diff --git a/bsp/at32/libraries/f403a_407/rt_drivers/drv_emac.c b/bsp/at32/libraries/f403a_407/rt_drivers/drv_emac.c index 088bfdd60c..9ca854265f 100644 --- a/bsp/at32/libraries/f403a_407/rt_drivers/drv_emac.c +++ b/bsp/at32/libraries/f403a_407/rt_drivers/drv_emac.c @@ -131,46 +131,6 @@ static void phy_clock_config(void) #endif } -/** - * @brief emac interface gpio config, rmii mode - */ -static void emac_gpio_config(void) -{ - gpio_init_type gpio_init_struct; - - crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE); - crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE); - - gpio_pin_remap_config(EMAC_MUX, TRUE); - - gpio_default_para_init(&gpio_init_struct); - gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER; - gpio_init_struct.gpio_mode = GPIO_MODE_MUX; - gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL; - gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_2; - gpio_init(GPIOA, &gpio_init_struct); - - gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13; - gpio_init(GPIOB, &gpio_init_struct); - - gpio_init_struct.gpio_pins = GPIO_PINS_1; - gpio_init(GPIOC, &gpio_init_struct); - - gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; - gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_1; - gpio_init(GPIOA, &gpio_init_struct); - - gpio_init_struct.gpio_mode = GPIO_MODE_INPUT; - gpio_init_struct.gpio_pull = GPIO_PULL_NONE; - gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10; - gpio_init(GPIOD, &gpio_init_struct); -} - /** * @brief reset phy register */ @@ -822,7 +782,7 @@ static int rt_hw_at32_emac_init(void) gpio_pin_remap_config(MII_RMII_SEL_GMUX, TRUE); /* emac gpio init */ - emac_gpio_config(); + at32_msp_emac_init(NULL); at32_emac_device.emac_speed = EMAC_SPEED_100MBPS; at32_emac_device.emac_mode = EMAC_FULL_DUPLEX; diff --git a/bsp/at32/libraries/f403a_407/rt_drivers/drv_wdt.c b/bsp/at32/libraries/f403a_407/rt_drivers/drv_wdt.c index 4ba814a61b..4f03f7cdbb 100644 --- a/bsp/at32/libraries/f403a_407/rt_drivers/drv_wdt.c +++ b/bsp/at32/libraries/f403a_407/rt_drivers/drv_wdt.c @@ -67,6 +67,7 @@ static rt_err_t wdt_control(rt_watchdog_t *wdt, int cmd, void *arg) wdt_register_write_enable(TRUE); wdt_divider_set(at32_wdt.div); wdt_reload_value_set(at32_wdt.reload); + wdt_counter_reload(); wdt_register_write_enable(FALSE); wdt_enable(); } @@ -89,6 +90,7 @@ static rt_err_t wdt_control(rt_watchdog_t *wdt, int cmd, void *arg) wdt_register_write_enable(TRUE); wdt_divider_set(at32_wdt.div); wdt_reload_value_set(at32_wdt.reload); + wdt_counter_reload(); wdt_register_write_enable(FALSE); wdt_enable(); at32_wdt.is_start = 1;