From bde51765d07fd44cc51d2e351ed19299671cbf2a Mon Sep 17 00:00:00 2001 From: murmur Date: Tue, 23 May 2023 14:59:35 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E6=A4=8D=E5=B7=A5=E7=A8=8B=E5=88=B0?= =?UTF-8?q?=E6=96=B0PCB=20ttmsg.c=20=E5=9F=BA=E6=9C=AC=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=EF=BC=8C=E4=BD=86=E6=98=AF=E9=81=87=E5=88=B0malloc=E5=86=85?= =?UTF-8?q?=E5=AD=98=E5=90=8E=E5=9C=B0=E5=9D=80=E8=A2=AB=E7=AF=A1=E6=94=B9?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=8C=E6=9C=AA=E5=AE=9A=E4=BD=8D?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .config | 1005 ++++++++++++++++++++++++++++++++++++ applications/comp.c | 3 + applications/cryp.c | 6 +- applications/getinfo.c | 10 +- applications/iwdg_sample.c | 2 +- applications/ttmsg/ttmsg.c | 430 +++++++++------ applications/ttmsg/ttmsg.h | 37 +- applications/w25q.c | 6 +- drivers/board.c | 13 +- drivers/board.h | 10 +- 10 files changed, 1351 insertions(+), 171 deletions(-) create mode 100644 .config diff --git a/.config b/.config new file mode 100644 index 0000000..16b6868 --- /dev/null +++ b/.config @@ -0,0 +1,1005 @@ +# Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib) + +# +# RT-Thread Kernel +# +CONFIG_RT_NAME_MAX=8 +# CONFIG_RT_USING_ARCH_DATA_TYPE is not set +# CONFIG_RT_USING_SMP is not set +CONFIG_RT_ALIGN_SIZE=4 +# CONFIG_RT_THREAD_PRIORITY_8 is not set +CONFIG_RT_THREAD_PRIORITY_32=y +# CONFIG_RT_THREAD_PRIORITY_256 is not set +CONFIG_RT_THREAD_PRIORITY_MAX=32 +CONFIG_RT_TICK_PER_SECOND=1000 +CONFIG_RT_USING_OVERFLOW_CHECK=y +CONFIG_RT_USING_HOOK=y +CONFIG_RT_HOOK_USING_FUNC_PTR=y +CONFIG_RT_USING_IDLE_HOOK=y +CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 +CONFIG_IDLE_THREAD_STACK_SIZE=256 +CONFIG_RT_USING_TIMER_SOFT=y +CONFIG_RT_TIMER_THREAD_PRIO=4 +CONFIG_RT_TIMER_THREAD_STACK_SIZE=512 + +# +# kservice optimization +# +CONFIG_RT_KSERVICE_USING_STDLIB=y +# CONFIG_RT_KSERVICE_USING_STDLIB_MEMORY is not set +# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set +# CONFIG_RT_USING_TINY_FFS is not set +# CONFIG_RT_KPRINTF_USING_LONGLONG is not set +# end of kservice optimization + +CONFIG_RT_DEBUG=y +CONFIG_RT_DEBUG_COLOR=y +# CONFIG_RT_DEBUG_INIT_CONFIG is not set +# CONFIG_RT_DEBUG_THREAD_CONFIG is not set +# CONFIG_RT_DEBUG_SCHEDULER_CONFIG is not set +# CONFIG_RT_DEBUG_IPC_CONFIG is not set +# CONFIG_RT_DEBUG_TIMER_CONFIG is not set +# CONFIG_RT_DEBUG_IRQ_CONFIG is not set +# CONFIG_RT_DEBUG_MEM_CONFIG is not set +# CONFIG_RT_DEBUG_SLAB_CONFIG is not set +# CONFIG_RT_DEBUG_MEMHEAP_CONFIG is not set +# CONFIG_RT_DEBUG_MODULE_CONFIG is not set + +# +# Inter-Thread communication +# +CONFIG_RT_USING_SEMAPHORE=y +CONFIG_RT_USING_MUTEX=y +CONFIG_RT_USING_EVENT=y +CONFIG_RT_USING_MAILBOX=y +CONFIG_RT_USING_MESSAGEQUEUE=y +# CONFIG_RT_USING_SIGNALS is not set +# end of Inter-Thread communication + +# +# Memory Management +# +CONFIG_RT_USING_MEMPOOL=y +CONFIG_RT_USING_SMALL_MEM=y +# CONFIG_RT_USING_SLAB is not set +# CONFIG_RT_USING_MEMHEAP is not set +CONFIG_RT_USING_SMALL_MEM_AS_HEAP=y +# CONFIG_RT_USING_MEMHEAP_AS_HEAP is not set +# CONFIG_RT_USING_SLAB_AS_HEAP is not set +# CONFIG_RT_USING_USERHEAP is not set +# CONFIG_RT_USING_NOHEAP is not set +# CONFIG_RT_USING_MEMTRACE is not set +# CONFIG_RT_USING_HEAP_ISR is not set +CONFIG_RT_USING_HEAP=y +# end of Memory Management + +# +# Kernel Device Object +# +CONFIG_RT_USING_DEVICE=y +# CONFIG_RT_USING_DEVICE_OPS is not set +# CONFIG_RT_USING_INTERRUPT_INFO is not set +CONFIG_RT_USING_CONSOLE=y +CONFIG_RT_CONSOLEBUF_SIZE=256 +CONFIG_RT_CONSOLE_DEVICE_NAME="uart1" +# end of Kernel Device Object + +CONFIG_RT_VER_NUM=0x40101 +# end of RT-Thread Kernel + +CONFIG_ARCH_ARM=y +CONFIG_RT_USING_CPU_FFS=y +CONFIG_ARCH_ARM_CORTEX_M=y +CONFIG_ARCH_ARM_CORTEX_M4=y + +# +# RT-Thread Components +# +CONFIG_RT_USING_COMPONENTS_INIT=y +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 +CONFIG_RT_USING_FINSH=y +CONFIG_FINSH_USING_MSH=y +CONFIG_FINSH_THREAD_NAME="tshell" +CONFIG_FINSH_THREAD_PRIORITY=20 +CONFIG_FINSH_THREAD_STACK_SIZE=4096 +CONFIG_FINSH_USING_HISTORY=y +CONFIG_FINSH_HISTORY_LINES=5 +CONFIG_FINSH_USING_SYMTAB=y +CONFIG_FINSH_CMD_SIZE=80 +CONFIG_MSH_USING_BUILT_IN_COMMANDS=y +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 +CONFIG_RT_USING_DFS=y +CONFIG_DFS_USING_POSIX=y +CONFIG_DFS_USING_WORKDIR=y +CONFIG_DFS_FILESYSTEMS_MAX=4 +CONFIG_DFS_FILESYSTEM_TYPES_MAX=4 +CONFIG_DFS_FD_MAX=16 +# CONFIG_RT_USING_DFS_MNTTABLE is not set +CONFIG_RT_USING_DFS_ELMFAT=y + +# +# elm-chan's FatFs, Generic FAT Filesystem Module +# +CONFIG_RT_DFS_ELM_CODE_PAGE=437 +CONFIG_RT_DFS_ELM_WORD_ACCESS=y +# 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=y +CONFIG_RT_DFS_ELM_USE_LFN=3 +CONFIG_RT_DFS_ELM_LFN_UNICODE_0=y +# 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 +CONFIG_RT_DFS_ELM_LFN_UNICODE=0 +CONFIG_RT_DFS_ELM_MAX_LFN=255 +CONFIG_RT_DFS_ELM_DRIVES=2 +CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=4096 +# CONFIG_RT_DFS_ELM_USE_ERASE is not set +CONFIG_RT_DFS_ELM_REENTRANT=y +CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000 +# end of elm-chan's FatFs, Generic FAT Filesystem Module + +# CONFIG_RT_USING_DFS_DEVFS is not set +# CONFIG_RT_USING_DFS_ROMFS is not set +# CONFIG_RT_USING_DFS_RAMFS is not set +# CONFIG_RT_USING_DFS_NFS is not set +# CONFIG_RT_USING_FAL is not set +# CONFIG_RT_USING_LWP is not set + +# +# Device Drivers +# +CONFIG_RT_USING_DEVICE_IPC=y +# CONFIG_RT_USING_SYSTEM_WORKQUEUE is not set +CONFIG_RT_USING_SERIAL=y +CONFIG_RT_USING_SERIAL_V1=y +# CONFIG_RT_USING_SERIAL_V2 is not set +CONFIG_RT_SERIAL_USING_DMA=y +CONFIG_RT_SERIAL_RB_BUFSZ=4096 +# CONFIG_RT_USING_CAN is not set +# CONFIG_RT_USING_HWTIMER is not set +# CONFIG_RT_USING_CPUTIME is not set +# CONFIG_RT_USING_I2C is not set +CONFIG_RT_USING_PHY=y +CONFIG_RT_USING_PIN=y +CONFIG_RT_USING_ADC=y +# CONFIG_RT_USING_DAC is not set +# CONFIG_RT_USING_PWM is not set +# CONFIG_RT_USING_MTD_NOR is not set +# CONFIG_RT_USING_MTD_NAND is not set +# CONFIG_RT_USING_PM is not set +CONFIG_RT_USING_RTC=y +# CONFIG_RT_USING_ALARM is not set +# CONFIG_RT_USING_SOFT_RTC is not set +# CONFIG_RT_USING_SDIO is not set +CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_SPI_BITOPS is not set +# CONFIG_RT_USING_QSPI is not set +# CONFIG_RT_USING_SPI_MSD is not set +CONFIG_RT_USING_SFUD=y +CONFIG_RT_SFUD_USING_SFDP=y +CONFIG_RT_SFUD_USING_FLASH_INFO_TABLE=y +# CONFIG_RT_SFUD_USING_QSPI is not set +CONFIG_RT_SFUD_SPI_MAX_HZ=50000000 +# CONFIG_RT_DEBUG_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set +CONFIG_RT_USING_WDT=y +# CONFIG_RT_USING_AUDIO is not set +# CONFIG_RT_USING_SENSOR is not set +# CONFIG_RT_USING_TOUCH is not set +# CONFIG_RT_USING_HWCRYPTO is not set +# CONFIG_RT_USING_PULSE_ENCODER is not set +# CONFIG_RT_USING_INPUT_CAPTURE is not set +# CONFIG_RT_USING_WIFI is not set + +# +# Using USB +# +# CONFIG_RT_USING_USB_HOST is not set +# CONFIG_RT_USING_USB_DEVICE is not set +# end of Using USB +# end of Device Drivers + +# +# C/C++ and POSIX layer +# +CONFIG_RT_LIBC_DEFAULT_TIMEZONE=8 + +# +# POSIX (Portable Operating System Interface) layer +# +# CONFIG_RT_USING_POSIX_FS is not set +# CONFIG_RT_USING_POSIX_DELAY is not set +# CONFIG_RT_USING_POSIX_CLOCK is not set +# CONFIG_RT_USING_POSIX_TIMER is not set +# CONFIG_RT_USING_PTHREADS is not set +# CONFIG_RT_USING_MODULE is not set + +# +# Interprocess Communication (IPC) +# +# CONFIG_RT_USING_POSIX_PIPE is not set +# CONFIG_RT_USING_POSIX_MESSAGE_QUEUE is not set +# CONFIG_RT_USING_POSIX_MESSAGE_SEMAPHORE is not set + +# +# Socket is in the 'Network' category +# +# end of Interprocess Communication (IPC) +# end of POSIX (Portable Operating System Interface) layer + +# CONFIG_RT_USING_CPLUSPLUS is not set +# end of C/C++ and POSIX layer + +# +# Network +# +# CONFIG_RT_USING_SAL is not set +CONFIG_RT_USING_NETDEV=y +CONFIG_NETDEV_USING_IFCONFIG=y +CONFIG_NETDEV_USING_PING=y +# CONFIG_NETDEV_USING_NETSTAT is not set +# CONFIG_NETDEV_USING_AUTO_DEFAULT is not set +# CONFIG_NETDEV_USING_IPV6 is not set +CONFIG_NETDEV_IPV4=1 +CONFIG_NETDEV_IPV6=0 +CONFIG_RT_USING_LWIP=y +# CONFIG_RT_USING_LWIP_LOCAL_VERSION is not set +# CONFIG_RT_USING_LWIP141 is not set +# CONFIG_RT_USING_LWIP203 is not set +CONFIG_RT_USING_LWIP212=y +# CONFIG_RT_USING_LWIP_LATEST is not set +CONFIG_RT_USING_LWIP_VER_NUM=0x20102 +# CONFIG_RT_USING_LWIP_IPV6 is not set +CONFIG_RT_LWIP_MEM_ALIGNMENT=4 +# CONFIG_RT_LWIP_IGMP is not set +CONFIG_RT_LWIP_ICMP=y +# CONFIG_RT_LWIP_SNMP is not set +CONFIG_RT_LWIP_DNS=y +# CONFIG_RT_LWIP_DHCP is not set + +# +# Static IPv4 Address +# +CONFIG_RT_LWIP_IPADDR="192.168.0.30" +CONFIG_RT_LWIP_GWADDR="192.168.0.1" +CONFIG_RT_LWIP_MSKADDR="255.255.255.0" +# end of Static IPv4 Address + +CONFIG_RT_LWIP_UDP=y +CONFIG_RT_LWIP_TCP=y +CONFIG_RT_LWIP_RAW=y +# CONFIG_RT_LWIP_PPP is not set +CONFIG_RT_MEMP_NUM_NETCONN=4 +CONFIG_RT_LWIP_PBUF_NUM=4 +CONFIG_RT_LWIP_RAW_PCB_NUM=4 +CONFIG_RT_LWIP_UDP_PCB_NUM=4 +CONFIG_RT_LWIP_TCP_PCB_NUM=4 +CONFIG_RT_LWIP_TCP_SEG_NUM=40 +CONFIG_RT_LWIP_TCP_SND_BUF=4096 +CONFIG_RT_LWIP_TCP_WND=4096 +CONFIG_RT_LWIP_TCPTHREAD_PRIORITY=10 +CONFIG_RT_LWIP_TCPTHREAD_MBOX_SIZE=8 +CONFIG_RT_LWIP_TCPTHREAD_STACKSIZE=1024 +# CONFIG_LWIP_NO_RX_THREAD is not set +# CONFIG_LWIP_NO_TX_THREAD is not set +CONFIG_RT_LWIP_ETHTHREAD_PRIORITY=12 +CONFIG_RT_LWIP_ETHTHREAD_STACKSIZE=1024 +CONFIG_RT_LWIP_ETHTHREAD_MBOX_SIZE=8 +# CONFIG_RT_LWIP_REASSEMBLY_FRAG is not set +CONFIG_LWIP_NETIF_STATUS_CALLBACK=1 +CONFIG_LWIP_NETIF_LINK_CALLBACK=1 +CONFIG_SO_REUSE=1 +CONFIG_LWIP_SO_RCVTIMEO=1 +CONFIG_LWIP_SO_SNDTIMEO=1 +CONFIG_LWIP_SO_RCVBUF=1 +CONFIG_LWIP_SO_LINGER=0 +# CONFIG_RT_LWIP_NETIF_LOOPBACK is not set +CONFIG_LWIP_NETIF_LOOPBACK=0 +# CONFIG_RT_LWIP_STATS is not set +# CONFIG_RT_LWIP_USING_HW_CHECKSUM is not set +CONFIG_RT_LWIP_USING_PING=y +# CONFIG_LWIP_USING_DHCPD is not set +# CONFIG_RT_LWIP_DEBUG is not set +# CONFIG_RT_USING_AT is not set +# end of Network + +# +# Utilities +# +CONFIG_RT_USING_RYM=y +# CONFIG_YMODEM_USING_CRC_TABLE is not set +CONFIG_YMODEM_USING_FILE_TRANSFER=y +CONFIG_RT_USING_ULOG=y +# CONFIG_ULOG_OUTPUT_LVL_A is not set +# CONFIG_ULOG_OUTPUT_LVL_E is not set +# CONFIG_ULOG_OUTPUT_LVL_W is not set +# CONFIG_ULOG_OUTPUT_LVL_I is not set +CONFIG_ULOG_OUTPUT_LVL_D=y +CONFIG_ULOG_OUTPUT_LVL=7 +# CONFIG_ULOG_USING_ISR_LOG is not set +CONFIG_ULOG_ASSERT_ENABLE=y +CONFIG_ULOG_LINE_BUF_SIZE=128 +# CONFIG_ULOG_USING_ASYNC_OUTPUT is not set + +# +# log format +# +# CONFIG_ULOG_OUTPUT_FLOAT is not set +CONFIG_ULOG_USING_COLOR=y +CONFIG_ULOG_OUTPUT_TIME=y +CONFIG_ULOG_TIME_USING_TIMESTAMP=y +CONFIG_ULOG_OUTPUT_LEVEL=y +CONFIG_ULOG_OUTPUT_TAG=y +# CONFIG_ULOG_OUTPUT_THREAD_NAME is not set +# end of log format + +CONFIG_ULOG_BACKEND_USING_CONSOLE=y +# CONFIG_ULOG_BACKEND_USING_FILE is not set +# CONFIG_ULOG_USING_FILTER is not set +# CONFIG_ULOG_USING_SYSLOG is not set +# CONFIG_RT_USING_UTEST is not set +# CONFIG_RT_USING_VAR_EXPORT is not set +# CONFIG_RT_USING_RT_LINK is not set +# end of Utilities + +# CONFIG_RT_USING_VBUS is not set +# end of RT-Thread Components + +# +# RT-Thread online packages +# + +# +# IoT - internet of things +# +# 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=y +CONFIG_PKG_WEBCLIENT_PATH="/packages/iot/webclient" +# CONFIG_WEBCLIENT_DEBUG is not set +# CONFIG_WEBCLIENT_USING_SAMPLES is not set +# CONFIG_WEBCLIENT_USING_FILE_DOWMLOAD is not set +CONFIG_WEBCLIENT_NOT_USE_TLS=y +# CONFIG_WEBCLIENT_USING_SAL_TLS is not set +# CONFIG_WEBCLIENT_USING_MBED_TLS is not set +CONFIG_PKG_USING_WEBCLIENT_V220=y +# CONFIG_PKG_USING_WEBCLIENT_V212 is not set +# CONFIG_PKG_USING_WEBCLIENT_V211 is not set +# CONFIG_PKG_USING_WEBCLIENT_V210 is not set +# CONFIG_PKG_USING_WEBCLIENT_V201 is not set +# CONFIG_PKG_USING_WEBCLIENT_V200 is not set +# CONFIG_PKG_USING_WEBCLIENT_V100 is not set +# CONFIG_PKG_USING_WEBCLIENT_LATEST_VERSION is not set +CONFIG_PKG_WEBCLIENT_VER="v2.2.0" +CONFIG_PKG_WEBCLIENT_VER_NUM=0x20200 +# 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_LIBMODBUS is not set +# CONFIG_PKG_USING_FREEMODBUS is not set +# CONFIG_PKG_USING_NANOPB is not set + +# +# Wi-Fi +# + +# +# Marvell WiFi +# +# CONFIG_PKG_USING_WLANMARVELL is not set +# end of Marvell WiFi + +# +# Wiced WiFi +# +# CONFIG_PKG_USING_WLAN_WICED is not set +# end of Wiced WiFi + +# CONFIG_PKG_USING_RW007 is not set +# end of Wi-Fi + +# 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 +# +# CONFIG_PKG_USING_ONENET is not set +# 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_IOTSHARP_SDK is not set +# end of IoT Cloud + +# 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 +# CONFIG_PKG_USING_AIRKISS_OPEN is not set +# 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_ZFTP is not set +# end of IoT - internet of things + +# +# security packages +# +# CONFIG_PKG_USING_MBEDTLS is not set +# CONFIG_PKG_USING_LIBSODIUM is not set +# CONFIG_PKG_USING_LIBHYDROGEN 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 +# end of security packages + +# +# language packages +# + +# +# JSON: JavaScript Object Notation, a lightweight data-interchange format +# +CONFIG_PKG_USING_CJSON=y +CONFIG_PKG_CJSON_PATH="/packages/language/JSON/cJSON" +CONFIG_PKG_USING_CJSON_V1715=y +# CONFIG_PKG_USING_CJSON_V1714 is not set +# CONFIG_PKG_USING_CJSON_V159 is not set +# CONFIG_PKG_USING_CJSON_V102 is not set +# CONFIG_PKG_USING_CJSON_LATEST_VERSION is not set +CONFIG_PKG_CJSON_VER="v1.7.15" +# 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 +# CONFIG_PKG_USING_PARSON is not set +# end of JSON: JavaScript Object Notation, a lightweight data-interchange format + +# +# XML: Extensible Markup Language +# +# CONFIG_PKG_USING_SIMPLE_XML is not set +# CONFIG_PKG_USING_EZXML is not set +# end of XML: Extensible Markup Language + +# 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 +# CONFIG_PKG_USING_RTT_RUST is not set +# end of language packages + +# +# 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 +# CONFIG_PKG_USING_GUI_GUIDER_DEMO is not set +# end of LVGL: powerful and easy-to-use embedded GUI library + +# +# u8g2: a monochrome graphic library +# +# CONFIG_PKG_USING_U8G2_OFFICIAL is not set +# CONFIG_PKG_USING_U8G2 is not set +# end of u8g2: a monochrome graphic library + +# 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 +# end of PainterEngine: A cross-platform graphics application framework written in C language + +# 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 +# end of multimedia packages + +# +# tools packages +# +# CONFIG_PKG_USING_CMBACKTRACE is not set +# 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_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 +# CONFIG_PKG_USING_HASH_MATCH is not set +# CONFIG_PKG_USING_FIRE_PID_CURVE is not set +# CONFIG_PKG_USING_ARMV7M_DWT_TOOL is not set +# CONFIG_PKG_USING_VOFA_PLUS is not set +# end of tools packages + +# +# 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 +# end of enhanced kernel services + +# +# 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 +# end of acceleration: Assembly language or algorithmic acceleration packages + +# +# CMSIS: ARM Cortex-M Microcontroller Software Interface Standard +# +# CONFIG_PKG_USING_CMSIS_5 is not set +# CONFIG_PKG_USING_CMSIS_RTOS1 is not set +# CONFIG_PKG_USING_CMSIS_RTOS2 is not set +# end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard + +# +# 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 +# end of Micrium: Micrium software products porting for RT-Thread + +# CONFIG_PKG_USING_FREERTOS_WRAPPER is not set +# CONFIG_PKG_USING_CAIRO is not set +# CONFIG_PKG_USING_PIXMAN is not set +# CONFIG_PKG_USING_PARTITION is not set +# CONFIG_PKG_USING_PERF_COUNTER is not set +# CONFIG_PKG_USING_FLASHDB is not set +# CONFIG_PKG_USING_SQLITE is not set +# CONFIG_PKG_USING_RTI 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 +# CONFIG_PKG_USING_TFDB is not set +# CONFIG_PKG_USING_QPC is not set +# CONFIG_PKG_USING_AGILE_UPGRADE is not set +# end of system packages + +# +# peripheral libraries and drivers +# +# 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_ADT74XX is not set +# CONFIG_PKG_USING_AS7341 is not set +# CONFIG_PKG_USING_STM32_SDIO is not set +# CONFIG_PKG_USING_ESP_IDF is not set +# CONFIG_PKG_USING_ICM20608 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 + +# +# Kendryte SDK +# +# CONFIG_PKG_USING_K210_SDK is not set +# CONFIG_PKG_USING_KENDRYTE_SDK is not set +# end of Kendryte SDK + +# 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_AT24CXX is not set +# CONFIG_PKG_USING_MOTIONDRIVER2RTT is not set +# CONFIG_PKG_USING_AD7746 is not set +# CONFIG_PKG_USING_PCA9685 is not set +# 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_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 +# CONFIG_PKG_USING_IO_INPUT_FILTER is not set +# CONFIG_PKG_USING_RASPBERRYPI_PICO_SDK is not set +# end of peripheral libraries and drivers + +# +# 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 +# end of AI packages + +# +# miscellaneous packages +# + +# +# project laboratory +# +# end of project laboratory + +# +# samples: kernel and components samples +# +# CONFIG_PKG_USING_KERNEL_SAMPLES is not set +# CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set +# CONFIG_PKG_USING_NETWORK_SAMPLES is not set +# CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set +# end of samples: kernel and components samples + +# +# 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 +# end of entertainment: terminal games and other interesting software packages + +# CONFIG_PKG_USING_LIBCSV is not set +# CONFIG_PKG_USING_OPTPARSE is not set +CONFIG_PKG_USING_FASTLZ=y +CONFIG_PKG_FASTLZ_PATH="/packages/misc/fastlz" +# CONFIG_FASTLZ_USING_SAMPLE is not set +# CONFIG_PKG_USING_FASTLZ_LATEST_VERSION is not set +CONFIG_PKG_USING_FASTLZ_V101=y +# CONFIG_PKG_USING_FASTLZ_V100 is not set +CONFIG_PKG_FASTLZ_VER="v1.0.1" +# 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_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_SLCAN2RTT is not set +# CONFIG_PKG_USING_SOEM is not set +# CONFIG_PKG_USING_QPARAM is not set +# end of miscellaneous packages + +# +# Arduino libraries +# +# CONFIG_PKG_USING_RTDUINO is not set + +# +# Projects +# +# CONFIG_PKG_USING_ARDUINO_ULTRASOUND_RADAR is not set +# CONFIG_PKG_USING_ARDUINO_SENSOR_KIT is not set +# end of Projects + +# +# Sensors +# +# CONFIG_PKG_USING_ARDUINO_SEEED_BMP280 is not set +# CONFIG_PKG_USING_ARDUINO_SEEED_LIS3DHTR is not set +# CONFIG_PKG_USING_ARDUINO_SEEED_DHT is not set +# CONFIG_PKG_USING_ARDUINO_CAPACITIVESENSOR is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SENSOR is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LSM9DS1 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AHTX0 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LSM9DS0 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BMP280 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ADT7410 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BME680 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_INA219 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DHT is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LSM6DS is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BNO055 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MAX1704X is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MMC56X3 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MLX90393 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MLX90395 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ICM20X is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_DPS310 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_HTS221 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SHT4X is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_SHT31 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ADXL343 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BME280 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AS726X is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AMG88XX is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AM2320 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AM2315 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LTR329_LTR303 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BMP183 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BMP183_UNIFIED is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BMP3XX is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MS8607 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LIS3MDL is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MLX90640 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MMA8451 is not set +# CONFIG_PKG_USING_ADAFRUIT_MSA301 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MPL115A2 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BNO08X is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BNO08X_RVC is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LIS2MDL is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LSM303DLH_MAG is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LC709203F is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_CAP1188 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_CCS811 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_NAU7802 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_LIS3DH is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PCF8591 is not set +# end of Sensors + +# +# Display +# +# CONFIG_PKG_USING_ARDUINO_U8G2 is not set +# end of Display + +# +# Timing +# +# CONFIG_PKG_USING_ARDUINO_MSTIMER2 is not set +# end of Timing + +# +# Data Processing +# +# CONFIG_PKG_USING_ARDUINO_KALMANFILTER is not set +# CONFIG_PKG_USING_ARDUINO_ARDUINOJSON is not set +# end of Data Processing + +# +# Data Storage +# + +# +# Communication +# + +# +# Device Control +# +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_PCF8574 is not set +# end of Device Control + +# +# Other +# + +# +# Signal IO +# +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_BUSIO is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_TCA8418 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_MCP23017 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_ADS1X15 is not set +# CONFIG_PKG_USING_ARDUINO_ADAFRUIT_AW9523 is not set +# end of Signal IO + +# +# Uncategorized +# +# end of Arduino libraries +# end of RT-Thread online packages + +# +# samples: kernel and components samples +# +# end of samples: kernel and components samples + +CONFIG_RT_STUDIO_BUILT_IN=y diff --git a/applications/comp.c b/applications/comp.c index 57bac8e..91bf4d5 100644 --- a/applications/comp.c +++ b/applications/comp.c @@ -157,7 +157,10 @@ _exit: return ret; } +static int compress_file(int fd_in, int *fout) +{ +} static int fastlz_decompress_file(int fd_in, int fd_out) { /* Start to decompress file */ diff --git a/applications/cryp.c b/applications/cryp.c index 7b46764..87fcd12 100644 --- a/applications/cryp.c +++ b/applications/cryp.c @@ -55,9 +55,9 @@ int aes_128_cbc_pkcs7(rt_uint8_t *data, rt_uint16_t len, rt_uint8_t *dout) unsigned char edata[cnt];//输出buff mbedtls_aes_context ctx; //创建结构体 mbedtls_aes_init(&ctx); //初始化 - int rst = mbedtls_aes_setkey_enc(&ctx, key, KEY_LEN * 8); //设置密钥 + mbedtls_aes_setkey_enc(&ctx, key, KEY_LEN * 8); //设置密钥 // rt_kprintf("--%d\n", rst); - rst = mbedtls_aes_crypt_cbc(&ctx, MBEDTLS_AES_ENCRYPT, (m + 1) * 16, iv, pbuff, edata); //加密 + mbedtls_aes_crypt_cbc(&ctx, MBEDTLS_AES_ENCRYPT, (m + 1) * 16, iv, pbuff, edata); //加密 // rt_kprintf("--%d\n", rst); mbedtls_aes_free(&ctx); //释放结构体 @@ -154,7 +154,7 @@ void aes_file(const char *fin, const char *fout) close(fd_out); } - return RT_EOK; +// return RT_EOK; } void aes_file_test(int argc, char **argv) diff --git a/applications/getinfo.c b/applications/getinfo.c index 28a31ce..62de659 100644 --- a/applications/getinfo.c +++ b/applications/getinfo.c @@ -143,6 +143,7 @@ static void tt_parse(rt_uint8_t *data) // rt_kprintf("%5s%5s%5s%5s%15s%15s%10s\n", TTinfo->sim, TTinfo->xh, TTinfo->rw, // TTinfo->jh, TTinfo->jd, TTinfo->wd,TTinfo->ele); + LOG_D("Get RAW data done."); cJSON_Delete(root); return RT_EOK; } @@ -174,8 +175,8 @@ static int webclient_get_data(const char *url) return -RT_ERROR; } - // LOG_D("webclient GET request response data :"); - // LOG_D("%s", buffer); + LOG_D("webclient GET request response data :"); + LOG_D("%s", buffer); tt_parse(buffer); if (buffer) @@ -205,11 +206,12 @@ void getTTinfo_thread_entry(void* parameter) url = web_strdup(*(infoH + var)); if (url == RT_NULL) { - rt_kprintf("no memory for create getTT url buffer.\n"); - return -RT_ENOMEM; + LOG_E("no memory for create getTT url buffer.\n"); +// return -RT_ENOMEM; } webclient_get_data(url); web_free(url); + rt_thread_mdelay(100); } // rt_kprintf("%5d++%5d --%5d\n",TTinfo->xh,tmp.xh,TTinfo->sim); // rt_kprintf("%5d%5d%5d%5d%15s%15s%10s\n", TTinfo.sim, TTinfo.xh, TTinfo.rw, TTinfo.jh, TTinfo.jd, TTinfo.wd,TTinfo.ele); diff --git a/applications/iwdg_sample.c b/applications/iwdg_sample.c index e92292d..4c8ce6d 100644 --- a/applications/iwdg_sample.c +++ b/applications/iwdg_sample.c @@ -80,4 +80,4 @@ static int iwdg_sample(int argc, char *argv[]) /* 导出到 msh 命令列表中 */ //MSH_CMD_EXPORT(iwdg_sample, iwdg sample); /* 导出到自动初始化 */ -INIT_DEVICE_EXPORT(iwdg_sample); +//INIT_DEVICE_EXPORT(iwdg_sample); diff --git a/applications/ttmsg/ttmsg.c b/applications/ttmsg/ttmsg.c index 03a1e16..6db8d56 100644 --- a/applications/ttmsg/ttmsg.c +++ b/applications/ttmsg/ttmsg.c @@ -20,33 +20,18 @@ * @LastEditors: murmur test@test.com * @LastEditTime: 2023-05-11 16:34:31 * @FilePath: \TT12-MCU\applications\ttmsg\ttmsg.c - * @Description: - * - * Copyright (c) 2023 by ${git_name_email}, All Rights Reserved. + * @Description: + * + * Copyright (c) 2023 by ${git_name_email}, All Rights Reserved. */ - -#include +// #include #define LOG_TAG "ttmsg" -#define LOG_LVL LOG_LVL_DBG +#define LOG_LVL LOG_LVL_DBG #include #include "ttmsg.h" -#define STR_LEN_MAX 30 -//模板 -MSG msgs_tpl={ - .fstart = {0x88,0xAA,0xBB,0x88}, - .fnum = {0x00,0x01}, - .fbak = {0x00,0x02}, - .ftype = {0x70,0x21}, - .fdlen = {0x00,0x00}, - - .ftccid = {0x37,0x32,0x32,0x32}, - -// .findex = {0x00,0x01,0x02,0x03,0x04,0x05}, -// .fcfg = {DATA_MODE | CRY_AES}, -}; /** * @brief 按指定分隔符分割字符串 @@ -56,29 +41,61 @@ MSG msgs_tpl={ * @param out 输出字符串数组 * @return size_t 分割后字符串个数 */ +#ifdef USE_STRTOK static size_t split(const char *str, const char *deli, char (*out)[STR_LEN_MAX]) { - char buf[50]; - strcpy(buf, str); // strtok会修改字符串 - char *token = strtok(buf, deli); - char *rst[STR_LEN_MAX]; + char buf[50]; + strcpy(buf, str); // strtok会修改字符串 + char *token = strtok(buf, deli); + char *rst[STR_LEN_MAX]; - size_t i = 0; - while (token) - { - rst[i++] = token; - token = strtok(NULL, deli); - } + size_t i = 0; + while (token) + { + rst[i++] = token; + token = strtok(NULL, deli); + } - // 更新out - for (size_t ii = 0; ii < i; ii++) - { - // out[ii] = id[ii]; - strcpy(out[ii], rst[ii]); - } + // 更新out + for (size_t ii = 0; ii < i; ii++) + { + // out[ii] = id[ii]; + strcpy(out[ii], rst[ii]); + } - return i; + return i; } +#else +// strtok_r版本 + static size_t split(const char *str, const char *delim, char (*out)[STR_LEN_MAX]) +{ + char buf[50]; + strcpy(buf, str); // strtok会修改字符串 + + char *token = NULL; + char *saveptr = NULL; + char *rst[STR_LEN_MAX]; + int idx = 0; + + + token = strtok_r(buf, delim, &saveptr); + while (token) + { + LOG_D("---%s---",token); + rst[idx++] = token; + token = strtok_r(NULL, delim, &saveptr); + } + + // 更新out + for (size_t ii = 0; ii < idx; ii++) + { + // out[ii] = id[ii]; + strcpy(out[ii], rst[ii]); + } + + return idx; + } +#endif /** @@ -90,32 +107,34 @@ static size_t split(const char *str, const char *deli, char (*out)[STR_LEN_MAX]) */ static size_t getID(const char *str, unsigned char *out) { - char id[10][STR_LEN_MAX] = {}; - // 分割路径 - size_t len = split(str, "/", id); + char id[10][STR_LEN_MAX] = {}; + // 分割路径 + size_t len = split(str, "/", id); - // 分割后缀 - len = split(id[len - 1], ".", id); + // 分割后缀 + LOG_D("file is %s",id[len-1]); + len = split(id[len - 1], ".", id); - // 分割时间 - len = split(id[0], "_", id); + // 分割时间 + LOG_D("file name is %s",id[0]); + len = split(id[0], "_", id); - unsigned char tmp[len]; - for (size_t i = 0; i < len; i++) - { - unsigned int v = atoi(id[i]); - - // 去除代表20的2000 - if (v > 0xff) + unsigned char tmp[len]; + for (size_t i = 0; i < len; i++) { - v = v - 2000; + unsigned int v = atoi(id[i]); + + // 去除代表20的2000 + if (v > 0xff) + { + v = v - 2000; + } + + tmp[i] = v; } - - tmp[i] = v; - } - - memcpy(out, tmp, len); - return len; + LOG_HEX("file ID",16,tmp,len); + memcpy(out, tmp, len); + return len; } /** @@ -127,148 +146,269 @@ static size_t getID(const char *str, unsigned char *out) */ rt_uint8_t packInit(MSG *tpl, const char *fin, rt_uint8_t flag) { - //模板 - MSG msgs_tpl={ - .fstart = {0x88,0xAA,0xBB,0x88}, - .fnum = {0x00,0x01}, - .fbak = {0x00,0x02}, - .ftype = {0x70,0x21}, - .fdlen = {0x00,0x00}, +// memset(tpl, 0, sizeof(MSG)); // 分配空间 + // 模板 + MSG msgs_tpl = { + .fstart = {0x88, 0xAA, 0xBB, 0x88}, + .fnum = {0x00, 0x01}, + .fbak = {0x00, 0x02}, + .ftype = { + 0x70, 0x21}, + .fdlen = {0x00, 0x00}, - .ftccid = {0x37,0x32,0x32,0x32}, + .ftccid = {0x37, 0x32, 0x32, 0x32}, - // .findex = {0x00,0x01,0x02,0x03,0x04,0x05}, - .fcfg = flag, + .fcfg = flag, }; + rt_memcpy(tpl, &msgs_tpl, sizeof(MSG)); -// char *fin="log/2023_05_05/2023_05_05_10_59_23_123"; -// unsigned char id[7]; - size_t len = getID(fin, msgs_tpl.findex); - if (len != 7) { - LOG_I("file name %s format error",fin); + size_t len = getID(fin, tpl->findex); + if (len != 7) + { + LOG_E("file name %s format error", fin); + return RT_ERROR; } - memcpy(tpl,&msgs_tpl,sizof(msgs_tpl)); - return RT_EOK; - } - /** * @description: 按MSG帧格式拼接din数据后输出到dout + * @param *p_msg MSG格式配置文件 * @param {rt_uint8_t} *din 待打包数据 * @param {rt_uint8_t} len 待打包数据长度 - * @param {rt_uint8_t} *id 时间戳,作为数据包唯一ID - * @param {rt_uint8_t} flag 参数配置,如信息类型、压缩方式、加密方式等 - * @param {rt_uint8_t} *dout 输出buff + * @param {rt_uint8_t} *dout 打包后数据 * @return {*} 打包后数据总长度 */ rt_uint8_t packMsg(MSG *p_msg, rt_uint8_t *din, rt_uint8_t len, rt_uint8_t *dout) { - rt_uint8_t fralen=sizeof(MSG)+len;//len of current frame + rt_uint8_t fralen = sizeof(MSG) + len; // len of current frame // 计算各字段 - p_msg->fdlen[0]=0;//单包长度必不会超过0xFF,故高字节始终为0 - p_msg->fdlen[1]= fralen - 13;//总长度-帧头长度 + p_msg->fdlen[0] = 0; // 单包长度必不会超过0xFF,故高字节始终为0 + p_msg->fdlen[1] = fralen - 13; // 总长度-帧头长度 // memcpy(p_msg->findex,id,6); // 将待发数据传入帧数据 - memcpy(p_msg->fdata,din,len); + rt_memcpy(p_msg->fdata, din, len); // 将打包后帧数据传入buff - memcpy(dout,p_msg,fralen); + rt_memcpy(dout, p_msg, fralen); - // ! 释放内存 - // free(p_msg); - // p_msg=NULL; return fralen; } +/** + * @description: 将din按指定长度w分割,再按MSG帧格式拼接 + * @param *cfg MSG格式配置文件 + * @param {rt_uint8_t} *din 待打包数据 + * @param {rt_uint8_t} len 待打包数据长度 + * @param {rt_uint8_t} w 分割长度 + * @param {rt_uint8_t} *dout 打包后数据 + * @return {*} 打包后数据总长度 + */ +size_t packMsgs(MSG *cfg, rt_uint8_t *din, size_t len, rt_uint8_t w, rt_uint8_t (*dout)[200], rt_uint8_t *arrlen) +{ + if (!(w > 0)) // 无效长度 + { + w = len; + } + rt_uint8_t row = (len / w) + (len % w > 0 ? 1 : 0); +// rt_uint8_t packdata[row][200]; // 打包后数据 + rt_uint8_t tlen[row]; // 打包后数据各维长度 + rt_uint8_t index = 0; + +// rt_uint8_t in[len]; +// memcpy(in,din,len); + + cfg->fallpiece[0]=row; + for (size_t var = 0; var < len;var += w) + { + size_t tmplen = len - var; // 当前待打包数据的长度 + tmplen = tmplen > w ? w : tmplen; // 判断最后一包数据的长度 + cfg->fcurpiece[0] = index+1; + size_t col = packMsg(cfg, din+var, tmplen, dout[index]); + tlen[index] = col; + index++; + LOG_D("index/row-var-tmplen"); + LOG_D("%5d/%3d-%3d-%6d",index,row,var,tmplen); + LOG_HEX("per msg",27,dout[index-1],col); + LOG_D("--------"); + LOG_D("addr is %d",din); + rt_thread_mdelay(100); + } + +// for (size_t i = 0; i < row; i++) +// { +// memcpy(dout[i], packdata[i], tlen[i]); +// } + memcpy(arrlen, tlen, row); +// LOG_D("--addr is %d",din); + return row; +} + + +size_t demo (uint8_t *din) +{ + size_t s= 1024*10; + rt_uint8_t *buf = rt_malloc(s); + if (buf!=RT_NULL) { + LOG_D("mem ok, addr is %d",buf); + LOG_D("addr is %d",rt_memset(buf, 0xab, s)); + } + else { + LOG_E("no mem."); + } + + +for (size_t var = 0; var < s; ++ var) { + rt_memcpy(buf+var, din+var, 1); +} +LOG_HEX("buf",16,buf,100); + LOG_D("addr is %d",din); + if (buf) { + rt_free(buf); + } + + return 1; +} + /** * 将指定文件按帧协议进行切片打包,返回二维数组 - * @param cfg MSG格式配置文件 + * @param *cfg MSG格式配置文件 * @param fin 待打包文件名 + * @param flag 配置信息 * @param dout 打包后二维数组 + * @param arrlen 打包后二维数组各维数组的长度 * @return */ -size_t pack_File(MSG *cfg, const char *fin, char (*dout)[200]) +size_t pack_File(const char *fin, rt_uint8_t flag, char (*dout)[200], char *arrLen) { - int fd_in = -1, fd_out = -1; - int ret = 0; + MSG cfg; + rt_memset(&cfg, 0, sizeof(MSG)); // 分配空间 + rt_uint8_t rst = packInit(&cfg, fin, flag); + if (rst!= RT_EOK) { + return 0; + } - size_t file_size = 0; - rt_uint8_t *buffer = RT_NULL; - size_t flen = 150; //每包数据初始长度,最大不超过 FRAME_DATA_LEN_MAX + int fd_in = -1; //, fd_out = -1; + + static size_t file_size = 0; +// rt_uint8_t *buffer = RT_NULL; + size_t flen = 150; // 每包数据初始长度,最大不超过 FRAME_DATA_LEN_MAX + size_t len = 0; fd_in = open(fin, O_RDONLY, 0); if (fd_in < 0) { - rt_kprintf("[fastlz] open the input file : %s error!\n", fin); - ret = -1; - goto _exit; + LOG_E("open the input file : %s error!\n", fin); + close(fd_in); + return len; } -// fd_out = open(fout, O_WRONLY | O_CREAT | O_TRUNC, 0); -// if (fd_out < 0) -// { -// rt_kprintf("[fastlz] open the output file : %s error!\n", fout); -// ret = -1; -// goto _exit; -// } - file_size = lseek(fd_in, 0, SEEK_END); + LOG_I("file size is %d bytes.",file_size); lseek(fd_in, 0, SEEK_SET); - - //粗略调整每包大小 - while (file_size % flen < flen / 1.2 && flen < FRAME_DATA_LEN_MAX) //阈值约83% - { - flen += 1; + rt_uint8_t *buffer = rt_malloc(file_size); + if (buffer == RT_NULL) { + LOG_E("No memory for read %s.",fin); + return 0; } - if (file_size % flen < flen / 1.2) - { //到达限制仍不符合要求 - flen = 150; - while (file_size % flen < flen / 2.5 && flen < FRAME_DATA_LEN_MAX) //调整阈值为40% +// rt_uint8_t buffer[file_size]; + rt_memset(buffer, 0x00, file_size); + read(fd_in, buffer, file_size); + close(fd_in); + // 粗略调整每包大小 + if (file_size > FRAME_DATA_LEN_MAX) { + while (file_size % flen < flen / 1.2 && flen < FRAME_DATA_LEN_MAX) // 阈值约83% { flen += 1; } - } - rt_uint8_t packdata[file_size/flen+1][flen]; - buffer = (rt_uint8_t *) malloc(file_size); - - - for (int var = 0; var < file_size; ++flen) - { - packMsg(cfg,buffer+var,flen,packdata[var]); - } - - _exit: - if(fd_in >= 0) - { - close(fd_in); + if (file_size % flen < flen / 1.2) + { // 到达限制仍不符合要求 + flen = 150; + while (file_size % flen < flen / 2.5 && flen < FRAME_DATA_LEN_MAX) // 调整阈值为40% + { + flen += 1; + } } + } + else { + flen = file_size; + } + LOG_I("len of data per pack is %d Bytes.",flen); + LOG_I("cnt of packages is %d",(file_size / flen) + (file_size % flen > 0 ? 1 : 0)); +// LOG_HEX("BEFORE:",16,buffer,file_size); + LOG_D("1-addr is %p",buffer); -// if(fd_out >= 0) -// { -// close(fd_out); -// } -// if (cmprs_buffer) -// { -// free(cmprs_buffer); -// } -// -// if (buffer) -// { -// free(buffer); -// } -// return ret; + len = packMsgs(&cfg, buffer, file_size, flen, dout, arrLen); + LOG_D("2-addr is %p",buffer); +// len = demo(buffer); -} + LOG_D("len is %d",len); + LOG_I("file size is %d bytes.",file_size); +// LOG_HEX("AFTER:",16,buffer,file_size); + LOG_D("addr is %p",buffer); -void demomsg() { + if (fd_in >= 0) + { + close(fd_in); + } + + if (buffer!=RT_NULL) + { + LOG_D("try to free buf."); + rt_free(buffer); + LOG_D("free buf done."); + } + + return len; } +void pf_thread_entry(void* parameter) +{ + + char *f = (char *) parameter; + rt_uint8_t d[50][200]; + rt_uint8_t s[50]; + size_t len = pack_File(f, 0, d, s); + if (len) + { + LOG_I("Done."); + } +} + +void pmsg(int argc, char **argv) +{ + if (argc == 2) + { + static char c[STR_LEN_MAX]; + strcpy(c, argv[1]); + + /* 创建线程 */ + rt_thread_t thread = rt_thread_create("pmsg", pf_thread_entry, (void *) c, 1024 * 30, 25, 10); + /* 创建成功则启动线程 */ + if (thread != RT_NULL) + { + rt_thread_startup(thread); + // rt_kprintf("done"); + } + else + { + LOG_E("thread 'pmsg' create failure."); + return RT_ERROR; + } + } + else + { + rt_kprintf("Usage:\n"); + rt_kprintf("pmsg [input_file] pack \"input_file\" \n"); + } +} +#include + +MSH_CMD_EXPORT(pmsg, 打包文件。); diff --git a/applications/ttmsg/ttmsg.h b/applications/ttmsg/ttmsg.h index 9181e7f..3a0ee2f 100644 --- a/applications/ttmsg/ttmsg.h +++ b/applications/ttmsg/ttmsg.h @@ -11,15 +11,18 @@ #define APPLICATIONS_TTMSG_TTMSG_H_ #include -#include -#include +//#include +//#include -#include -#include +//#include +//#include +//#include "posix/string.h" #include #define FRAME_DATA_LEN_MAX 180 +#define STR_LEN_MAX 30 +/* typedef enum{ // @@ -46,8 +49,30 @@ typedef enum{ // }fopt_e; +*/ +//控制字,总两字节 +//加密,低2位 +#define CRY_NONE 0 +#define CRY_AES 1 +#define CRY_RSA 2 -#pragma pack(1) +//压缩,次高2位 +#define COMP_NONE (0<<2) +#define COMP_FAST_LZ (1<<2)//压缩率中等,demo约1/0.62,资源占用少 +#define COMP_QUICK_LZ (2<<2) +#define COMP_LZMA (3<<2)//压缩率可能最高,样例报错还未定位,猜测是内存不足 + +//数据类型子类,随CTRL_MODE不同而不同,共3位8种 +#define MODE_0 (0<<4) +#define MODE_1 (1<<4) +// 。。。 +#define MODE_7 (7<<4) + +//数据类型,最高位 +#define CTRL_MODE (0<<7) +#define DATA_MODE (1<<7) + +//#pragma pack(1) typedef struct{ //帧头 //格式是TT厂家确定的,厂家不变则不会变,13字节 @@ -71,7 +96,7 @@ typedef struct{ }MSG; -rt_uint8_t packMsg(MSG *p_msg, rt_uint8_t *din, rt_uint8_t len, rt_uint8_t *dout); +//rt_uint8_t packMsg(MSG *p_msg, rt_uint8_t *din, rt_uint8_t len, rt_uint8_t *dout); #endif /* APPLICATIONS_TTMSG_TTMSG_H_ */ diff --git a/applications/w25q.c b/applications/w25q.c index f4a9da7..f773539 100644 --- a/applications/w25q.c +++ b/applications/w25q.c @@ -13,7 +13,7 @@ //#define LOG_LVL LOG_LVL_DBG //#include -#define DBG_TAG "main" +#define DBG_TAG "w25q" #define DBG_LVL DBG_LOG #include @@ -23,8 +23,8 @@ int rt_hw_spi_flash_init(void) { __HAL_RCC_GPIOB_CLK_ENABLE(); - __HAL_RCC_GPIOD_CLK_ENABLE(); - rt_hw_spi_device_attach("spi1", "spi10", GPIOG, GPIO_PIN_8); +// __HAL_RCC_GPIOD_CLK_ENABLE(); + rt_hw_spi_device_attach("spi2", "spi10", GPIOB, GPIO_PIN_12); if (RT_NULL == rt_sfud_flash_probe("W25Q128", "spi10")) { diff --git a/drivers/board.c b/drivers/board.c index 00e244a..40a8c92 100644 --- a/drivers/board.c +++ b/drivers/board.c @@ -46,13 +46,13 @@ RT_WEAK void rt_hw_board_init() void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi) { GPIO_InitTypeDef GPIO_InitStruct = {0}; - if(hspi->Instance==SPI1) + if(hspi->Instance==SPI2) { /* USER CODE BEGIN SPI1_MspInit 0 */ /* USER CODE END SPI1_MspInit 0 */ /* Peripheral clock enable */ - __HAL_RCC_SPI1_CLK_ENABLE(); + __HAL_RCC_SPI2_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); @@ -61,12 +61,17 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi) PB4 ------> SPI1_MISO PB5 ------> SPI1_MOSI */ + /**SPI2 GPIO Configuration + PB13 ------> SPI1_SCK + PB14 ------> SPI1_MISO + PB15 ------> SPI1_MOSI + */ - GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5; + GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; - GPIO_InitStruct.Alternate = GPIO_AF5_SPI1; + GPIO_InitStruct.Alternate = GPIO_AF5_SPI2; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); /* USER CODE BEGIN SPI1_MspInit 1 */ diff --git a/drivers/board.h b/drivers/board.h index 154b338..23aa99e 100644 --- a/drivers/board.h +++ b/drivers/board.h @@ -68,8 +68,8 @@ extern "C" */ #define BSP_USING_UART1 -#define BSP_UART1_TX_PIN "PA9" -#define BSP_UART1_RX_PIN "PA10" +#define BSP_UART1_TX_PIN "PB6" +#define BSP_UART1_RX_PIN "PB7" #define BSP_USING_UART3 #define BSP_UART3_TX_PIN "PB10" @@ -123,8 +123,8 @@ extern "C" * such as #define HAL_SPI_MODULE_ENABLED */ -#define BSP_USING_SPI1 -/*#define BSP_USING_SPI2*/ +#define BSP_USING_SPI2 +/*#define BSP_USING_SPI1*/ /*#define BSP_USING_SPI3*/ /*-------------------------- SPI CONFIG END --------------------------*/ @@ -372,7 +372,7 @@ extern "C" #define LED_HEART GET_PIN(E,3) #ifndef ETH_RESET_PIN -#define ETH_RESET_PIN GET_PIN(E, 7)//71 +#define ETH_RESET_PIN GET_PIN(A, 4)//E-7 #endif ////#define RESET_LB GET_PIN(E, 1) ////#define RESET_UB GET_PIN(E, 0)