Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
rt-thread
提交
ef71de34
R
rt-thread
项目概览
BaiXuePrincess
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
ef71de34
编写于
9月 17, 2021
作者:
G
guo
提交者:
GitHub
9月 17, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #5054 from yanmowudi/master
修复RTC问题,增加GCC工具链
上级
62acc5cf
f0dba498
变更
52
展开全部
隐藏空白更改
内联
并排
Showing
52 changed file
with
11359 addition
and
11858 deletion
+11359
-11858
bsp/swm320/.config
bsp/swm320/.config
+119
-49
bsp/swm320/README.md
bsp/swm320/README.md
+3
-3
bsp/swm320/applications/main.c
bsp/swm320/applications/main.c
+29
-32
bsp/swm320/drivers/Kconfig
bsp/swm320/drivers/Kconfig
+2
-2
bsp/swm320/drivers/board.c
bsp/swm320/drivers/board.c
+36
-0
bsp/swm320/drivers/drv_crypto.c
bsp/swm320/drivers/drv_crypto.c
+4
-8
bsp/swm320/drivers/drv_gpio.c
bsp/swm320/drivers/drv_gpio.c
+1
-0
bsp/swm320/drivers/drv_log.h
bsp/swm320/drivers/drv_log.h
+1
-1
bsp/swm320/drivers/drv_rtc.c
bsp/swm320/drivers/drv_rtc.c
+44
-68
bsp/swm320/drivers/drv_sdio.c
bsp/swm320/drivers/drv_sdio.c
+1
-1
bsp/swm320/drivers/drv_spi.c
bsp/swm320/drivers/drv_spi.c
+6
-6
bsp/swm320/drivers/linker_scripts/link.lds
bsp/swm320/drivers/linker_scripts/link.lds
+111
-45
bsp/swm320/libraries/CMSIS/CoreSupport/arm_common_tables.h
bsp/swm320/libraries/CMSIS/CoreSupport/arm_common_tables.h
+17
-18
bsp/swm320/libraries/CMSIS/CoreSupport/arm_const_structs.h
bsp/swm320/libraries/CMSIS/CoreSupport/arm_const_structs.h
+31
-31
bsp/swm320/libraries/CMSIS/CoreSupport/arm_math.h
bsp/swm320/libraries/CMSIS/CoreSupport/arm_math.h
+3632
-3833
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0.h
+361
-380
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0plus.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0plus.h
+427
-445
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm3.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm3.h
+955
-981
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm4.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm4.h
+1065
-1092
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm7.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm7.h
+1383
-1411
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmFunc.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmFunc.h
+163
-165
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmInstr.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmInstr.h
+200
-210
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmSimd.h
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmSimd.h
+514
-381
bsp/swm320/libraries/CMSIS/DeviceSupport/SWM320.h
bsp/swm320/libraries/CMSIS/DeviceSupport/SWM320.h
+51
-502
bsp/swm320/libraries/CMSIS/DeviceSupport/startup/arm/startup_SWM320.s
...ibraries/CMSIS/DeviceSupport/startup/arm/startup_SWM320.s
+62
-62
bsp/swm320/libraries/CMSIS/DeviceSupport/startup/gcc/startup_SWM320.s
...ibraries/CMSIS/DeviceSupport/startup/gcc/startup_SWM320.s
+406
-242
bsp/swm320/libraries/CMSIS/DeviceSupport/system_SWM320.c
bsp/swm320/libraries/CMSIS/DeviceSupport/system_SWM320.c
+46
-46
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_adc.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_adc.c
+131
-131
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_can.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_can.c
+196
-196
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.c
+17
-17
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.h
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.h
+8
-8
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_dma.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_dma.c
+37
-37
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_exti.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_exti.c
+42
-42
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_flash.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_flash.c
+21
-21
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_gpio.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_gpio.c
+81
-81
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_i2c.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_i2c.c
+44
-44
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_lcd.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_lcd.c
+34
-34
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.c
...wm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.c
+37
-37
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.h
...wm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.h
+2
-2
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_port.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_port.c
+16
-16
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_pwm.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_pwm.c
+95
-95
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_rtc.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_rtc.c
+126
-126
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdio.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdio.c
+57
-57
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdram.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdram.c
+18
-18
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_spi.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_spi.c
+175
-175
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sram.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sram.c
+12
-12
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_timr.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_timr.c
+68
-68
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_uart.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_uart.c
+168
-168
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_wdt.c
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_wdt.c
+45
-43
bsp/swm320/project.uvoptx
bsp/swm320/project.uvoptx
+142
-262
bsp/swm320/project.uvprojx
bsp/swm320/project.uvprojx
+94
-144
bsp/swm320/rtconfig.h
bsp/swm320/rtconfig.h
+23
-10
未找到文件。
bsp/swm320/.config
浏览文件 @
ef71de34
...
...
@@ -21,6 +21,13 @@ CONFIG_RT_USING_IDLE_HOOK=y
CONFIG_RT_IDLE_HOOK_LIST_SIZE
=
4
CONFIG_IDLE_THREAD_STACK_SIZE
=
256
# CONFIG_RT_USING_TIMER_SOFT is not set
#
# kservice optimization
#
# CONFIG_RT_KSERVICE_USING_STDLIB is not set
# CONFIG_RT_KSERVICE_USING_TINY_SIZE is not set
# CONFIG_RT_USING_ASM_MEMCPY is not set
CONFIG_RT_DEBUG
=
y
CONFIG_RT_DEBUG_COLOR
=
y
# CONFIG_RT_DEBUG_INIT_CONFIG is not set
...
...
@@ -54,6 +61,7 @@ CONFIG_RT_USING_MEMHEAP=y
# CONFIG_RT_USING_SLAB is not set
CONFIG_RT_USING_MEMHEAP_AS_HEAP
=
y
# CONFIG_RT_USING_USERHEAP is not set
# CONFIG_RT_USING_MEMTRACE is not set
CONFIG_RT_USING_HEAP
=
y
#
...
...
@@ -64,8 +72,9 @@ CONFIG_RT_USING_DEVICE=y
# CONFIG_RT_USING_INTERRUPT_INFO is not set
CONFIG_RT_USING_CONSOLE
=
y
CONFIG_RT_CONSOLEBUF_SIZE
=
128
CONFIG_RT_CONSOLE_DEVICE_NAME
=
"uart0"
CONFIG_RT_VER_NUM
=
0
x40003
CONFIG_RT_CONSOLE_DEVICE_NAME
=
"uart1"
# CONFIG_RT_PRINTF_LONGLONG is not set
CONFIG_RT_VER_NUM
=
0
x40004
CONFIG_ARCH_ARM
=
y
CONFIG_RT_USING_CPU_FFS
=
y
CONFIG_ARCH_ARM_CORTEX_M
=
y
...
...
@@ -89,19 +98,19 @@ CONFIG_RT_MAIN_THREAD_PRIORITY=10
# 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
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_THREAD_PRIORITY
=
20
CONFIG_FINSH_THREAD_STACK_SIZE
=
4096
CONFIG_FINSH_CMD_SIZE
=
80
# CONFIG_FINSH_USING_AUTH is not set
CONFIG_FINSH_USING_MSH
=
y
CONFIG_FINSH_USING_MSH_DEFAULT
=
y
# CONFIG_FINSH_USING_MSH_ONLY is not set
CONFIG_FINSH_ARG_MAX
=
10
#
...
...
@@ -116,6 +125,8 @@ CONFIG_RT_USING_DEVICE_IPC=y
CONFIG_RT_PIPE_BUFSZ
=
512
# 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 is not set
CONFIG_RT_SERIAL_RB_BUFSZ
=
64
# CONFIG_RT_USING_CAN is not set
...
...
@@ -154,6 +165,7 @@ CONFIG_RT_USING_PIN=y
CONFIG_RT_USING_LIBC
=
y
# CONFIG_RT_USING_PTHREADS is not set
# CONFIG_RT_USING_MODULE is not set
CONFIG_RT_LIBC_DEFAULT_TIMEZONE
=
8
#
# Network
...
...
@@ -190,8 +202,14 @@ CONFIG_RT_USING_LIBC=y
# CONFIG_RT_USING_RYM is not set
# CONFIG_RT_USING_ULOG is not set
# CONFIG_RT_USING_UTEST is not set
# CONFIG_RT_USING_RT_LINK is not set
# CONFIG_RT_USING_LWP is not set
#
# RT-Thread Utestcases
#
# CONFIG_RT_USING_UTESTCASES is not set
#
# RT-Thread online packages
#
...
...
@@ -239,6 +257,7 @@ CONFIG_RT_USING_LIBC=y
# 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
...
...
@@ -259,8 +278,6 @@ CONFIG_RT_USING_LIBC=y
# 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_ONNX_PARSER is not set
# CONFIG_PKG_USING_ONNX_BACKEND 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
...
...
@@ -275,6 +292,13 @@ CONFIG_RT_USING_LIBC=y
# 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_RAPIDJSON 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
#
# security packages
...
...
@@ -291,6 +315,7 @@ CONFIG_RT_USING_LIBC=y
# 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
...
...
@@ -300,9 +325,13 @@ CONFIG_RT_USING_LIBC=y
# 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
#
# tools packages
...
...
@@ -311,6 +340,7 @@ CONFIG_RT_USING_LIBC=y
# 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
...
...
@@ -339,15 +369,37 @@ CONFIG_RT_USING_LIBC=y
# 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
#
# system packages
#
#
# acceleration: Assembly language or algorithmic acceleration packages
#
# CONFIG_PKG_USING_RT_MEMCPY_CM is not set
# 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
#
# 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_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_FAL is not set
# CONFIG_PKG_USING_FLASHDB is not set
...
...
@@ -357,6 +409,9 @@ CONFIG_RT_USING_LIBC=y
# 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
...
...
@@ -366,24 +421,14 @@ CONFIG_RT_USING_LIBC=y
# CONFIG_PKG_USING_RAMDISK is not set
# CONFIG_PKG_USING_MININI is not set
# CONFIG_PKG_USING_QBOOT 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_PPOOL is not set
# CONFIG_PKG_USING_OPENAMP is not set
# CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set
# CONFIG_PKG_USING_RT_MEMCPY_CM is not set
# 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
# 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_WCWIDTH is not set
#
# peripheral libraries and drivers
...
...
@@ -408,7 +453,6 @@ CONFIG_RT_USING_LIBC=y
# 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_ROSSERIAL 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
...
...
@@ -446,10 +490,55 @@ CONFIG_RT_USING_LIBC=y
# 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
#
# 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
#
#
# 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
#
# 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_LIBCSV is not set
# CONFIG_PKG_USING_OPTPARSE is not set
# CONFIG_PKG_USING_FASTLZ is not set
...
...
@@ -460,44 +549,25 @@ CONFIG_RT_USING_LIBC=y
# 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_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
#
# 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
# 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_VT100 is not set
# CONFIG_PKG_USING_ULAPACK is not set
# CONFIG_PKG_USING_UKAL is not set
# CONFIG_PKG_USING_CRCLIB is not set
#
# games: games run on RT-Thread console
#
# 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_LWGPS is not set
# CONFIG_PKG_USING_TENSORFLOWLITEMICRO is not set
# CONFIG_PKG_USING_STATE_MACHINE is not set
# CONFIG_PKG_USING_MCURSES is not set
# CONFIG_PKG_USING_COWSAY is not set
# CONFIG_PKG_USING_TERMBOX is not set
#
# Hardware Drivers Config
...
...
@@ -508,8 +578,8 @@ CONFIG_SOC_SWM320=y
# On-chip Peripheral Drivers
#
CONFIG_BSP_USING_UART
=
y
CONFIG_BSP_USING_UART0
=
y
# CONFIG_BSP_USING_UART1 is not set
# CONFIG_BSP_USING_UART0 is not set
CONFIG_BSP_USING_UART1
=
y
# CONFIG_BSP_USING_UART2 is not set
# CONFIG_BSP_USING_UART3 is not set
CONFIG_BSP_USING_GPIO
=
y
...
...
bsp/swm320/README.md
浏览文件 @
ef71de34
...
...
@@ -93,7 +93,7 @@
-
32K片内时钟源
-
2~32MHz片外晶振
芯片更多详细信息请参考
[
华芯微特技术支持
]
[
http://www.synwit.cn/support-1/3.html
]
。
芯片更多详细信息请参考
[
华芯微特技术支持
]
(
http://www.synwit.cn/support-1/3.html
)
。
## 编译说明
...
...
@@ -119,7 +119,7 @@
-
使用 Jlink 连接开发板到 PC (需要 Jlink 驱动)
将串口
0 引脚为:
`[PA2/PA3]`
和 USB 转串口模块 P2
相连,串口配置方式为115200-N-8-1。
将串口
1 引脚为:
`[PC2/PC3]`
和 USB 转串口模块 J11
相连,串口配置方式为115200-N-8-1。
当使用
[
env工具
](
https://www.rt-thread.org/page/download.html
)
正确编译产生出rtthread.bin映像文件后,可以使用 ISP 的方式来烧写到设备中。
...
...
@@ -166,4 +166,4 @@ msh />
*
[
RT-Thread 文档中心
](
https://www.rt-thread.org/document/site/
)
*
[
SWM320数据手册
](
http
://www.synwit.cn/support-1/3.html
)
*
[
SWM320数据手册
](
http
s://www.synwit.cn/col.jsp?id=155
)
bsp/swm320/applications/main.c
浏览文件 @
ef71de34
/*
* Copyright (c) 2006-20
18
, RT-Thread Development Team
* Copyright (c) 2006-20
21
, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
...
...
@@ -10,7 +10,7 @@
#include <rtthread.h>
#include <rtdevice.h>
#define LED_PIN
21
#define LED_PIN
32
int
main
(
void
)
{
...
...
@@ -29,7 +29,7 @@ int main(void)
}
// #ifdef RT_USING_PIN
// #define KEY1_PIN
25
// #define KEY1_PIN
31
// void key1_cb(void *args)
// {
// rt_kprintf("key1 irq!\n");
...
...
@@ -46,7 +46,7 @@ int main(void)
// #endif
#ifdef RT_USING_ADC
#define ADC_DEV_NAME "adc
0
"
#define ADC_DEV_NAME "adc
1
"
#define ADC_DEV_CHANNEL 0
#define REFER_VOLTAGE 330
#define CONVERT_BITS (1 << 12)
...
...
@@ -64,16 +64,15 @@ static int adc_vol_sample(int argc, char *argv[])
return
RT_ERROR
;
}
while
(
1
)
{
ret
=
rt_adc_enable
(
adc_dev
,
ADC_DEV_CHANNEL
);
value
=
rt_adc_read
(
adc_dev
,
ADC_DEV_CHANNEL
);
rt_kprintf
(
"the value is :%d,"
,
value
);
vol
=
value
*
REFER_VOLTAGE
/
CONVERT_BITS
;
rt_kprintf
(
"the voltage is :%d.%02d
\n
"
,
vol
/
100
,
vol
%
100
);
rt_thread_mdelay
(
500
);
ret
=
rt_adc_disable
(
adc_dev
,
ADC_DEV_CHANNEL
);
}
ret
=
rt_adc_enable
(
adc_dev
,
ADC_DEV_CHANNEL
);
value
=
rt_adc_read
(
adc_dev
,
ADC_DEV_CHANNEL
);
rt_kprintf
(
"the value is :%d,"
,
value
);
vol
=
value
*
REFER_VOLTAGE
/
CONVERT_BITS
;
rt_kprintf
(
"the voltage is :%d.%02d
\n
"
,
vol
/
100
,
vol
%
100
);
ret
=
rt_adc_disable
(
adc_dev
,
ADC_DEV_CHANNEL
);
return
ret
;
}
...
...
@@ -143,17 +142,17 @@ MSH_CMD_EXPORT(hwtimer_sample, hwtimer sample);
#endif
#ifdef RT_USING_PWM
#define PWM_DEV_NAME "pwm0"
/* PWM
????
*/
#define PWM_DEV_CHANNEL 0
/* PWM
??
*/
#define PWM_DEV_NAME "pwm0"
/* PWM
设备名称
*/
#define PWM_DEV_CHANNEL 0
/* PWM
通道
*/
struct
rt_device_pwm
*
pwm_dev
;
/* PWM
????
*/
struct
rt_device_pwm
*
pwm_dev
;
/* PWM
设备句柄
*/
static
int
pwm_sample
(
int
argc
,
char
*
argv
[])
{
rt_uint32_t
period
,
pulse
;
period
=
500000
;
/*
???0.5ms,?????
ns */
pulse
=
250000
;
/* PWM
?????,?????
ns */
period
=
500000
;
/*
周期为0.5ms,单位为纳秒
ns */
pulse
=
250000
;
/* PWM
脉冲宽度值,单位为纳秒
ns */
pwm_dev
=
(
struct
rt_device_pwm
*
)
rt_device_find
(
PWM_DEV_NAME
);
if
(
pwm_dev
==
RT_NULL
)
...
...
@@ -170,26 +169,27 @@ MSH_CMD_EXPORT(pwm_sample, pwm sample);
#endif
#ifdef RT_USING_RTC
#include <time.h>
static
int
rtc_sample
(
int
argc
,
char
*
argv
[])
{
rt_err_t
ret
=
RT_EOK
;
time_t
now
;
ret
=
set_date
(
2020
,
6
,
15
);
ret
=
set_date
(
2020
,
2
,
28
);
if
(
ret
!=
RT_EOK
)
{
rt_kprintf
(
"set RTC date failed
\n
"
);
return
ret
;
}
ret
=
set_time
(
11
,
15
,
50
);
ret
=
set_time
(
23
,
59
,
55
);
if
(
ret
!=
RT_EOK
)
{
rt_kprintf
(
"set RTC time failed
\n
"
);
return
ret
;
}
rt_thread_mdelay
(
3000
);
//
rt_thread_mdelay(3000);
now
=
time
(
RT_NULL
);
rt_kprintf
(
"%s
\n
"
,
ctime
(
&
now
));
...
...
@@ -205,7 +205,7 @@ static rt_device_t wdg_dev;
static
void
idle_hook
(
void
)
{
rt_device_control
(
wdg_dev
,
RT_DEVICE_CTRL_WDT_KEEPALIVE
,
NULL
);
rt_device_control
(
wdg_dev
,
RT_DEVICE_CTRL_WDT_KEEPALIVE
,
RT_
NULL
);
rt_kprintf
(
"feed the dog!
\n
"
);
}
...
...
@@ -264,7 +264,7 @@ MSH_CMD_EXPORT(wdt_sample, wdt sample);
static
int
rt_hw_spi_flash_init
(
void
)
{
rt_hw_spi_device_attach
(
"spi0"
,
"spi00"
,
GPIO
A
,
PIN1
2
);
rt_hw_spi_device_attach
(
"spi0"
,
"spi00"
,
GPIO
P
,
PIN2
2
);
if
(
RT_NULL
==
rt_sfud_flash_probe
(
W25Q_FLASH_NAME
,
W25Q_SPI_DEVICE_NAME
))
{
...
...
@@ -273,7 +273,6 @@ static int rt_hw_spi_flash_init(void)
return
RT_EOK
;
}
/* ???????? */
INIT_COMPONENT_EXPORT
(
rt_hw_spi_flash_init
);
static
void
spi_w25q_sample
(
int
argc
,
char
*
argv
[])
...
...
@@ -292,12 +291,12 @@ static void spi_w25q_sample(int argc, char *argv[])
rt_strncpy
(
name
,
W25Q_SPI_DEVICE_NAME
,
RT_NAME_MAX
);
}
/*
?? spi ????????
*/
/*
查找 spi 设备获取设备句柄
*/
spi_dev_w25q
=
(
struct
rt_spi_device
*
)
rt_device_find
(
name
);
struct
rt_spi_configuration
cfg
;
cfg
.
data_width
=
8
;
cfg
.
mode
=
RT_SPI_MASTER
|
RT_SPI_MODE_0
|
RT_SPI_MSB
;
cfg
.
max_hz
=
2
0
*
1000
*
1000
;
/* 20M */
cfg
.
max_hz
=
3
0
*
1000
*
1000
;
/* 20M */
rt_spi_configure
(
spi_dev_w25q
,
&
cfg
);
if
(
!
spi_dev_w25q
)
...
...
@@ -306,11 +305,11 @@ static void spi_w25q_sample(int argc, char *argv[])
}
else
{
/*
??1:?? rt_spi_send_then_recv()??????
ID */
/*
方式1:使用 rt_spi_send_then_recv()发送命令读取
ID */
rt_spi_send_then_recv
(
spi_dev_w25q
,
&
w25x_read_id
,
1
,
id
,
5
);
rt_kprintf
(
"use rt_spi_send_then_recv() read w25q ID is:%x%x
\n
"
,
id
[
3
],
id
[
4
]);
/*
??2:?? rt_spi_transfer_message()??????
ID */
/*
方式2:使用 rt_spi_transfer_message()发送命令读取
ID */
struct
rt_spi_message
msg1
,
msg2
;
msg1
.
send_buf
=
&
w25x_read_id
;
...
...
@@ -352,7 +351,6 @@ static void spi_flash_elmfat_sample(void)
rt_kprintf
(
"Write string '%s' to /user/test.txt.
\n
"
,
str
);
/* ????????????,??????????????*/
fd
=
open
(
"/user/test.txt"
,
O_WRONLY
|
O_CREAT
);
if
(
fd
>=
0
)
{
...
...
@@ -362,7 +360,6 @@ static void spi_flash_elmfat_sample(void)
close
(
fd
);
}
/* ????????? */
fd
=
open
(
"/user/test.txt"
,
O_RDONLY
);
if
(
fd
>=
0
)
{
...
...
@@ -397,7 +394,7 @@ MSH_CMD_EXPORT(spi_w25q_sample, spi w25q sample);
//{
// int fd, size;
// struct statfs elm_stat;
// char str[] = "elmfat mount to sdcard.
\r\n
", buf[80];
// char str[] = "elmfat mount to sdcard.", buf[80];
// if (dfs_mkfs("elm", SDCARD_NAME) == 0)
// rt_kprintf("make elmfat filesystem success.\n");
...
...
bsp/swm320/drivers/Kconfig
浏览文件 @
ef71de34
...
...
@@ -245,11 +245,11 @@ menu "On-chip Peripheral Drivers"
select RT_USING_SPI
if BSP_USING_SPI
config BSP_USING_SPI0
bool "Enable SPI0 BUS(CS/
A12,MISO/A11,MOSI/A10,CLK/A9
)"
bool "Enable SPI0 BUS(CS/
P22,MISO/P19,MOSI/P18,CLK/P23
)"
default n
config BSP_USING_SPI1
bool "Enable SPI1 BUS(CS/
C4,MISO/C5,MOSI/C6,CLK/C7
)"
bool "Enable SPI1 BUS(CS/
B6,MISO/B3,MOSI/B2,CLK/B1
)"
default n
endif
...
...
bsp/swm320/drivers/board.c
浏览文件 @
ef71de34
...
...
@@ -17,6 +17,7 @@ static void bsp_clock_config(void)
SysTick_Config
(
SystemCoreClock
/
RT_TICK_PER_SECOND
);
SysTick
->
CTRL
|=
0x00000004UL
;
}
void
SysTick_Handler
(
void
)
{
/* enter interrupt */
...
...
@@ -28,6 +29,41 @@ void SysTick_Handler(void)
rt_interrupt_leave
();
}
/**
* This function will delay for some us.
*
* @param us the delay time of us
*/
void
rt_hw_us_delay
(
rt_uint32_t
us
)
{
rt_uint32_t
ticks
;
rt_uint32_t
told
,
tnow
,
tcnt
=
0
;
rt_uint32_t
reload
=
SysTick
->
LOAD
;
ticks
=
us
*
reload
/
(
1000000
/
RT_TICK_PER_SECOND
);
told
=
SysTick
->
VAL
;
while
(
1
)
{
tnow
=
SysTick
->
VAL
;
if
(
tnow
!=
told
)
{
if
(
tnow
<
told
)
{
tcnt
+=
told
-
tnow
;
}
else
{
tcnt
+=
reload
-
tnow
+
told
;
}
told
=
tnow
;
if
(
tcnt
>=
ticks
)
{
break
;
}
}
}
}
void
rt_hw_board_init
()
{
bsp_clock_config
();
...
...
bsp/swm320/drivers/drv_crypto.c
浏览文件 @
ef71de34
...
...
@@ -21,11 +21,6 @@ struct swm_hwcrypto_device
#ifdef BSP_USING_CRC
struct
hash_ctx_des
{
struct
swm_crc_cfg
contex
;
};
static
struct
hwcrypto_crc_cfg
crc_backup_cfg
;
static
rt_uint32_t
_crc_update
(
struct
hwcrypto_crc
*
ctx
,
const
rt_uint8_t
*
in
,
rt_size_t
length
)
...
...
@@ -108,6 +103,7 @@ static const struct hwcrypto_crc_ops crc_ops =
{
.
update
=
_crc_update
,
};
#endif
/* BSP_USING_CRC */
static
rt_err_t
_crypto_create
(
struct
rt_hwcrypto_ctx
*
ctx
)
{
...
...
@@ -170,7 +166,7 @@ static rt_err_t _crypto_clone(struct rt_hwcrypto_ctx *des, const struct rt_hwcry
case
HWCRYPTO_TYPE_CRC
:
if
(
des
->
contex
&&
src
->
contex
)
{
rt_memcpy
(
des
->
contex
,
src
->
contex
,
sizeof
(
struct
hash_ctx_des
));
rt_memcpy
(
des
->
contex
,
src
->
contex
,
sizeof
(
struct
swm_crc_cfg
));
}
break
;
#endif
/* BSP_USING_CRC */
...
...
@@ -226,5 +222,5 @@ int rt_hw_crypto_init(void)
}
INIT_BOARD_EXPORT
(
rt_hw_crypto_init
);
#endif
/* BSP_USING_WDT */
#endif
/* RT_USING_
WDT
*/
#endif
/* RT_USING_
HWCRYPTO
*/
bsp/swm320/drivers/drv_gpio.c
浏览文件 @
ef71de34
...
...
@@ -475,6 +475,7 @@ static void rt_hw_pin_isr(GPIO_TypeDef *GPIOx)
}
}
}
void
GPIOA_Handler
(
void
)
{
rt_interrupt_enter
();
...
...
bsp/swm320/drivers/drv_log.h
浏览文件 @
ef71de34
/*
* Copyright (c) 2006-20
18
, RT-Thread Development Team
* Copyright (c) 2006-20
21
, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
...
...
bsp/swm320/drivers/drv_rtc.c
浏览文件 @
ef71de34
...
...
@@ -10,6 +10,7 @@
*/
#include "drv_rtc.h"
#include <sys/time.h>
#ifdef RT_USING_RTC
#ifdef BSP_USING_RTC
...
...
@@ -18,8 +19,6 @@
#define LOG_TAG "drv.rtc"
#include <drv_log.h>
static
struct
rt_device
rtc_device
;
static
uint32_t
calcWeekDay
(
uint32_t
year
,
uint32_t
month
,
uint32_t
date
)
{
uint32_t
i
,
cnt
=
0
;
...
...
@@ -55,8 +54,8 @@ static time_t swm_get_rtc_time_stamp(void)
tm_new
.
tm_min
=
get_datetime
.
Minute
;
tm_new
.
tm_hour
=
get_datetime
.
Hour
;
tm_new
.
tm_mday
=
get_datetime
.
Date
;
tm_new
.
tm_mon
=
get_datetime
.
Month
-
1
;
tm_new
.
tm_year
=
get_datetime
.
Year
-
1900
;
tm_new
.
tm_mon
=
get_datetime
.
Month
;
tm_new
.
tm_year
=
get_datetime
.
Year
;
LOG_D
(
"get rtc time."
);
return
mktime
(
&
tm_new
);
...
...
@@ -72,9 +71,9 @@ static rt_err_t swm_set_rtc_time_stamp(time_t time_stamp)
set_datetime
.
Minute
=
p_tm
->
tm_min
;
set_datetime
.
Hour
=
p_tm
->
tm_hour
;
set_datetime
.
Date
=
p_tm
->
tm_mday
;
set_datetime
.
Month
=
p_tm
->
tm_mon
+
1
;
set_datetime
.
Year
=
p_tm
->
tm_year
+
1900
;
//
datetime.Day = p_tm->tm_wday;
set_datetime
.
Month
=
p_tm
->
tm_mon
;
set_datetime
.
Year
=
p_tm
->
tm_year
;
//
set_
datetime.Day = p_tm->tm_wday;
RTC_Stop
(
RTC
);
while
(
RTC
->
CFGABLE
==
0
)
...
...
@@ -86,7 +85,7 @@ static rt_err_t swm_set_rtc_time_stamp(time_t time_stamp)
RTC
->
MONDAY
=
(
calcWeekDay
(
set_datetime
.
Year
,
set_datetime
.
Month
,
set_datetime
.
Date
)
<<
RTC_MONDAY_DAY_Pos
)
|
((
set_datetime
.
Month
)
<<
RTC_MONDAY_MON_Pos
);
RTC
->
YEAR
=
set_datetime
.
Year
-
1901
;
RTC
->
YEAR
=
set_datetime
.
Year
;
RTC
->
LOAD
=
1
<<
RTC_LOAD_TIME_Pos
;
RTC_Start
(
RTC
);
...
...
@@ -94,43 +93,7 @@ static rt_err_t swm_set_rtc_time_stamp(time_t time_stamp)
return
RT_EOK
;
}
static
rt_err_t
swm_rtc_control
(
rt_device_t
rtc_device
,
int
cmd
,
void
*
args
)
{
rt_err_t
result
=
RT_EOK
;
RT_ASSERT
(
rtc_device
!=
RT_NULL
);
switch
(
cmd
)
{
case
RT_DEVICE_CTRL_RTC_GET_TIME
:
*
(
rt_uint32_t
*
)
args
=
swm_get_rtc_time_stamp
();
LOG_D
(
"RTC: get rtc_time %x
\n
"
,
*
(
rt_uint32_t
*
)
args
);
break
;
case
RT_DEVICE_CTRL_RTC_SET_TIME
:
if
(
swm_set_rtc_time_stamp
(
*
(
rt_uint32_t
*
)
args
))
{
result
=
-
RT_ERROR
;
}
LOG_D
(
"RTC: set rtc_time %x
\n
"
,
*
(
rt_uint32_t
*
)
args
);
break
;
default:
break
;
}
return
result
;
}
#ifdef RT_USING_DEVICE_OPS
const
static
struct
rt_device_ops
swm_rtc_ops
=
{
RT_NULL
,
RT_NULL
,
RT_NULL
,
RT_NULL
,
RT_NULL
,
swm_rtc_control
};
#endif
static
void
swm_rtc_init
(
void
)
static
rt_err_t
swm_rtc_init
(
void
)
{
RTC_InitStructure
rtc_initstruct
;
...
...
@@ -144,37 +107,50 @@ static void swm_rtc_init(void)
rtc_initstruct
.
MinuteIEn
=
0
;
RTC_Init
(
RTC
,
&
rtc_initstruct
);
RTC_Start
(
RTC
);
return
RT_EOK
;
}
static
rt_err_t
swm_rtc_get_secs
(
void
*
args
)
{
*
(
rt_uint32_t
*
)
args
=
swm_get_rtc_time_stamp
();
LOG_D
(
"RTC: get rtc_time %x
\n
"
,
*
(
rt_uint32_t
*
)
args
);
return
RT_EOK
;
}
static
rt_err_t
rt_hw_rtc_register
(
rt_device_t
rtc_device
,
const
char
*
name
,
rt_uint32_t
flag
)
static
rt_err_t
swm_rtc_set_secs
(
void
*
args
)
{
RT_ASSERT
(
rtc_device
!=
RT_NULL
);
swm_rtc_init
();
#ifdef RT_USING_DEVICE_OPS
rtc_device
->
ops
=
&
swm_rtc_ops
;
#else
rtc_device
->
init
=
RT_NULL
;
rtc_device
->
open
=
RT_NULL
;
rtc_device
->
close
=
RT_NULL
;
rtc_device
->
read
=
RT_NULL
;
rtc_device
->
write
=
RT_NULL
;
rtc_device
->
control
=
swm_rtc_control
;
#endif
rtc_device
->
type
=
RT_Device_Class_RTC
;
rtc_device
->
rx_indicate
=
RT_NULL
;
rtc_device
->
tx_complete
=
RT_NULL
;
rtc_device
->
user_data
=
RT_NULL
;
/* register a character device */
return
rt_device_register
(
rtc_device
,
name
,
flag
);
rt_err_t
result
=
RT_EOK
;
if
(
swm_set_rtc_time_stamp
(
*
(
rt_uint32_t
*
)
args
))
{
result
=
-
RT_ERROR
;
}
LOG_D
(
"RTC: set rtc_time %x
\n
"
,
*
(
rt_uint32_t
*
)
args
);
return
result
;
}
static
const
struct
rt_rtc_ops
swm_rtc_ops
=
{
swm_rtc_init
,
swm_rtc_get_secs
,
swm_rtc_set_secs
,
RT_NULL
,
RT_NULL
,
RT_NULL
,
RT_NULL
,
};
static
rt_rtc_dev_t
swm_rtc_device
;
int
rt_hw_rtc_init
(
void
)
{
rt_err_t
result
;
result
=
rt_hw_rtc_register
(
&
rtc_device
,
"rtc"
,
RT_DEVICE_FLAG_RDWR
);
swm_rtc_device
.
ops
=
&
swm_rtc_ops
;
result
=
rt_hw_rtc_register
(
&
swm_rtc_device
,
"rtc"
,
RT_DEVICE_FLAG_RDWR
,
RT_NULL
);
if
(
result
!=
RT_EOK
)
{
LOG_E
(
"rtc register err code: %d"
,
result
);
...
...
bsp/swm320/drivers/drv_sdio.c
浏览文件 @
ef71de34
...
...
@@ -47,7 +47,7 @@ static void rthw_sdio_wait_completed(struct rthw_sdio *sdio)
SDIO_TypeDef
*
hw_sdio
=
sdio
->
sdio_des
.
hw_sdio
;
if
(
rt_event_recv
(
&
sdio
->
event
,
0xffffffff
,
RT_EVENT_FLAG_OR
|
RT_EVENT_FLAG_CLEAR
,
rt_tick_from_millisecond
(
5
000
),
&
status
)
!=
RT_EOK
)
rt_tick_from_millisecond
(
1
000
),
&
status
)
!=
RT_EOK
)
{
LOG_E
(
"wait completed timeout"
);
cmd
->
err
=
-
RT_ETIMEOUT
;
...
...
bsp/swm320/drivers/drv_spi.c
浏览文件 @
ef71de34
...
...
@@ -279,15 +279,15 @@ int rt_hw_spi_init(void)
rt_err_t
result
;
#ifdef BSP_USING_SPI0
PORT_Init
(
PORT
A
,
PIN9
,
FUNMUX1_SPI0_SCLK
,
0
);
PORT_Init
(
PORT
A
,
PIN10
,
FUNMUX0_SPI0_MOSI
,
0
);
PORT_Init
(
PORT
A
,
PIN11
,
FUNMUX1_SPI0_MISO
,
1
);
PORT_Init
(
PORT
P
,
PIN23
,
FUNMUX1_SPI0_SCLK
,
0
);
PORT_Init
(
PORT
P
,
PIN18
,
FUNMUX0_SPI0_MOSI
,
0
);
PORT_Init
(
PORT
P
,
PIN19
,
FUNMUX1_SPI0_MISO
,
1
);
#endif //BSP_USING_SPI0
#ifdef BSP_USING_SPI1
PORT_Init
(
PORT
C
,
PIN7
,
FUNMUX1_SPI1_SCLK
,
0
);
PORT_Init
(
PORT
C
,
PIN6
,
FUNMUX0_SPI1_MOSI
,
0
);
PORT_Init
(
PORT
C
,
PIN5
,
FUNMUX1_SPI1_MISO
,
1
);
PORT_Init
(
PORT
B
,
PIN1
,
FUNMUX1_SPI1_SCLK
,
0
);
PORT_Init
(
PORT
B
,
PIN2
,
FUNMUX0_SPI1_MOSI
,
0
);
PORT_Init
(
PORT
B
,
PIN3
,
FUNMUX1_SPI1_MISO
,
1
);
#endif //BSP_USING_SPI1
for
(
int
i
=
0
;
i
<
sizeof
(
spi_cfg
)
/
sizeof
(
spi_cfg
[
0
]);
i
++
)
{
...
...
bsp/swm320/drivers/linker_scripts/link.lds
浏览文件 @
ef71de34
/* Entry Point */
ENTRY(Reset_Handler)
/* Specify the memory areas */
/* Program Entry, set to mark it as "used" and avoid gc */
MEMORY
{
ROM (arx) : ORIGIN = 0x00000000, LENGTH = 0x00080000 /* 512k
*/
RAM (arw) : ORIGIN = 0x20000000, LENGTH = 0x00020000 /* 128k
*/
CODE (rx) : ORIGIN = 0x00000000, LENGTH = 512k /* 1024KB flash
*/
DATA (rw) : ORIGIN = 0x20000000, LENGTH = 128k /* 128K sram
*/
}
ENTRY(Reset_Handler)
_system_stack_size = 0x200;
/* Define output sections */
SECTIONS
{
. = ORIGIN(ROM);
.text :
{
KEEP(*(.isr_vector))
*(.text)
*(.text*)
. = ALIGN(4);
_stext = .;
KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4);
*(.text) /* remaining code */
*(.text.*) /* remaining code */
*(.rodata) /* read-only data (constants) */
*(.rodata*)
} > ROM
*(.glue_7)
*(.glue_7t)
*(.gnu.linkonce.t*)
/* section information for finsh shell */
. = ALIGN(4);
__fsymtab_start = .;
KEEP(*(FSymTab))
__fsymtab_end = .;
. = ALIGN(4);
__vsymtab_start = .;
KEEP(*(VSymTab))
__vsymtab_end = .;
. = ALIGN(4);
/* section information for initial. */
. = ALIGN(4);
__rt_init_start = .;
KEEP(*(SORT(.rti_fn*)))
__rt_init_end = .;
. = ALIGN(4);
. = ALIGN(4);
_etext = .;
} > CODE = 0
/* .ARM.exidx is sorted, so has to go in its own output section. */
__exidx_start = .;
.ARM.exidx :
{
*(.ARM.exidx* .gnu.linkonce.armexidx.*)
/* This is used by the startup in order to initialize the .data secion */
_sidata = .;
} > CODE
__exidx_end = .;
. = ALIGN(4);
__data_load__ = LOADADDR(.data);
/* .data section which is used for initialized data */
. = ALIGN(4);
.data :
.data : AT (_sidata)
{
__data_start__ = .;
. = ALIGN(4);
/* This is used by the startup in order to initialize the .data secion */
_sdata = . ;
*(.data)
*(.data*)
*(.data.*)
*(.gnu.linkonce.d*)
. = ALIGN(4);
/* This is used by the startup in order to initialize the .data secion */
_edata = . ;
} >DATA
.stack :
{
. = . + _system_stack_size;
. = ALIGN(4);
_
_data_end__
= .;
} >
RAM AT> ROM
_
estack
= .;
} >
DATA
. = ALIGN(4)
;
__bss_start = .
;
.bss :
{
__bss_start__ = .;
. = ALIGN(4);
/* This is used by the startup in order to initialize the .bss secion */
_sbss = .;
*(.bss)
*(.bss*)
*(.bss
.
*)
*(COMMON)
. = ALIGN(4);
__bss_end__ = .;
} > RAM
. = ALIGN(4);
/* This is used by the startup in order to initialize the .bss secion */
_ebss = . ;
*(.bss.init)
} > DATA
__bss_end = .;
.heap :
{
end = .;
__HeapBase = .;
*(.heap)
} > RAM
/* .stack_dummy section doesn't contains any symbols.
* It is only used for linker to calculate size of stack sections */
.stack_dummy :
{
*(.stack)
} > RAM
_end = .;
__StackTop = ORIGIN(RAM) + LENGTH(RAM);
__StackLimit = __StackTop - SIZEOF(.stack_dummy);
ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed with stack")
/* Stabs debugging sections. */
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
.stab.excl 0 : { *(.stab.excl) }
.stab.exclstr 0 : { *(.stab.exclstr) }
.stab.index 0 : { *(.stab.index) }
.stab.indexstr 0 : { *(.stab.indexstr) }
.comment 0 : { *(.comment) }
/* DWARF debug sections.
* Symbols in the DWARF debugging sections are relative to the beginning
* of the section so we begin them at 0. */
/* DWARF 1 */
.debug 0 : { *(.debug) }
.line 0 : { *(.line) }
/* GNU DWARF 1 extensions */
.debug_srcinfo 0 : { *(.debug_srcinfo) }
.debug_sfnames 0 : { *(.debug_sfnames) }
/* DWARF 1.1 and DWARF 2 */
.debug_aranges 0 : { *(.debug_aranges) }
.debug_pubnames 0 : { *(.debug_pubnames) }
/* DWARF 2 */
.debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_line 0 : { *(.debug_line) }
.debug_frame 0 : { *(.debug_frame) }
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
}
bsp/swm320/libraries/CMSIS/CoreSupport/arm_common_tables.h
浏览文件 @
ef71de34
...
...
@@ -2,12 +2,12 @@
* Copyright (C) 2010-2014 ARM Limited. All rights reserved.
*
* $Date: 31. July 2014
* $Revision:
V1.4.4
* $Revision:
V1.4.4
*
* Project:
CMSIS DSP Library
* Title:
arm_common_tables.h
* Project:
CMSIS DSP Library
* Title:
arm_common_tables.h
*
* Description:
This file has extern declaration for common tables like Bitreverse, reciprocal etc which are used across different functions
* Description:
This file has extern declaration for common tables like Bitreverse, reciprocal etc which are used across different functions
*
* Target Processor: Cortex-M4/Cortex-M3
*
...
...
@@ -85,14 +85,13 @@ extern const float32_t twiddleCoef_rfft_1024[1024];
extern
const
float32_t
twiddleCoef_rfft_2048
[
2048
];
extern
const
float32_t
twiddleCoef_rfft_4096
[
4096
];
/* floating-point bit reversal tables */
#define ARMBITREVINDEXTABLE__16_TABLE_LENGTH ((uint16_t)20
)
#define ARMBITREVINDEXTABLE__32_TABLE_LENGTH ((uint16_t)48
)
#define ARMBITREVINDEXTABLE__64_TABLE_LENGTH ((uint16_t)56
)
#define ARMBITREVINDEXTABLE_128_TABLE_LENGTH ((uint16_t)208
)
#define ARMBITREVINDEXTABLE_256_TABLE_LENGTH ((uint16_t)440
)
#define ARMBITREVINDEXTABLE_512_TABLE_LENGTH ((uint16_t)448
)
#define ARMBITREVINDEXTABLE__16_TABLE_LENGTH ((uint16_t)20)
#define ARMBITREVINDEXTABLE__32_TABLE_LENGTH ((uint16_t)48)
#define ARMBITREVINDEXTABLE__64_TABLE_LENGTH ((uint16_t)56)
#define ARMBITREVINDEXTABLE_128_TABLE_LENGTH ((uint16_t)208)
#define ARMBITREVINDEXTABLE_256_TABLE_LENGTH ((uint16_t)440)
#define ARMBITREVINDEXTABLE_512_TABLE_LENGTH ((uint16_t)448)
#define ARMBITREVINDEXTABLE1024_TABLE_LENGTH ((uint16_t)1800)
#define ARMBITREVINDEXTABLE2048_TABLE_LENGTH ((uint16_t)3808)
#define ARMBITREVINDEXTABLE4096_TABLE_LENGTH ((uint16_t)4032)
...
...
@@ -108,13 +107,13 @@ extern const uint16_t armBitRevIndexTable2048[ARMBITREVINDEXTABLE2048_TABLE_LENG
extern
const
uint16_t
armBitRevIndexTable4096
[
ARMBITREVINDEXTABLE4096_TABLE_LENGTH
];
/* fixed-point bit reversal tables */
#define ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH ((uint16_t)12
)
#define ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH ((uint16_t)24
)
#define ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH ((uint16_t)56
)
#define ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH ((uint16_t)112
)
#define ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH ((uint16_t)240
)
#define ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH ((uint16_t)480
)
#define ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH ((uint16_t)992
)
#define ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH ((uint16_t)12)
#define ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH ((uint16_t)24)
#define ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH ((uint16_t)56)
#define ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH ((uint16_t)112)
#define ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH ((uint16_t)240)
#define ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH ((uint16_t)480)
#define ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH ((uint16_t)992)
#define ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH ((uint16_t)1984)
#define ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH ((uint16_t)4032)
...
...
bsp/swm320/libraries/CMSIS/CoreSupport/arm_const_structs.h
浏览文件 @
ef71de34
...
...
@@ -2,12 +2,12 @@
* Copyright (C) 2010-2014 ARM Limited. All rights reserved.
*
* $Date: 31. July 2014
* $Revision:
V1.4.4
* $Revision:
V1.4.4
*
* Project:
CMSIS DSP Library
* Title:
arm_const_structs.h
* Project:
CMSIS DSP Library
* Title:
arm_const_structs.h
*
* Description:
This file has constant structs that are initialized for
* Description:
This file has constant structs that are initialized for
* user convenience. For example, some can be given as
* arguments to the arm_cfft_f32() function.
*
...
...
@@ -46,34 +46,34 @@
#include "arm_math.h"
#include "arm_common_tables.h"
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len16
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len32
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len64
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len128
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len256
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len512
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len1024
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len2048
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len4096
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len16
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len32
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len64
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len128
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len256
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len512
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len1024
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len2048
;
extern
const
arm_cfft_instance_f32
arm_cfft_sR_f32_len4096
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len16
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len32
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len64
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len128
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len256
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len512
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len1024
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len2048
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len4096
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len16
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len32
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len64
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len128
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len256
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len512
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len1024
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len2048
;
extern
const
arm_cfft_instance_q31
arm_cfft_sR_q31_len4096
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len16
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len32
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len64
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len128
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len256
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len512
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len1024
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len2048
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len4096
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len16
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len32
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len64
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len128
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len256
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len512
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len1024
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len2048
;
extern
const
arm_cfft_instance_q15
arm_cfft_sR_q15_len4096
;
#endif
bsp/swm320/libraries/CMSIS/CoreSupport/arm_math.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm0plus.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm3.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm4.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cm7.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmFunc.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmInstr.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/CoreSupport/core_cmSimd.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/DeviceSupport/SWM320.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/DeviceSupport/startup/arm/startup_SWM320.s
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/DeviceSupport/startup/gcc/startup_SWM320.s
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/CMSIS/DeviceSupport/system_SWM320.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_adc.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_can.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_crc.h
浏览文件 @
ef71de34
...
...
@@ -9,10 +9,10 @@
void
CRC_Init
(
CRC_TypeDef
*
CRCx
,
uint32_t
mode
,
uint32_t
out_not
,
uint32_t
out_rev
,
uint32_t
ini_val
);
/******************************************************************************************************************************************
* 函数名称:
CRC_Write()
* 功能说明:
CRC写入数据
* 输 入: uint32_t data
要写入的数据
/******************************************************************************************************************************************
* 函数名称:
CRC_Write()
* 功能说明:
CRC写入数据
* 输 入: uint32_t data
要写入的数据
* 输 出: 无
* 注意事项: 无
******************************************************************************************************************************************/
...
...
@@ -21,11 +21,11 @@ static __INLINE void CRC_Write(uint32_t data)
CRC
->
DATAIN
=
data
;
}
/******************************************************************************************************************************************
* 函数名称:
CRC_Result()
* 功能说明:
获取CRC计算结果
/******************************************************************************************************************************************
* 函数名称:
CRC_Result()
* 功能说明:
获取CRC计算结果
* 输 入: 无
* 输 出: uint32_t
CRC 计算结果
* 输 出: uint32_t
CRC 计算结果
* 注意事项: 无
******************************************************************************************************************************************/
static
__INLINE
uint32_t
CRC_Result
(
void
)
...
...
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_dma.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_exti.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_flash.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_gpio.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_i2c.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_lcd.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_norflash.h
浏览文件 @
ef71de34
...
...
@@ -20,8 +20,8 @@ uint32_t NORFL_Read(uint32_t addr);
uint16_t
NORFL_ReadID
(
uint32_t
id_addr
);
/* 当前版本总线读只支持字读
#define NORFL_Read8(addr)
*((volatile uint8_t *)(NORFLM_BASE + addr))
#define NORFL_Read16(addr)
*((volatile uint16_t *)(NORFLM_BASE + addr)) */
#define NORFL_Read8(addr)
*((volatile uint8_t *)(NORFLM_BASE + addr))
#define NORFL_Read16(addr)
*((volatile uint16_t *)(NORFLM_BASE + addr)) */
#define NORFL_Read32(addr) *((volatile uint32_t *)(NORFLM_BASE + addr))
#define NORFL_CMD_READ 0
...
...
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_port.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_pwm.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_rtc.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdio.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sdram.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_spi.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_sram.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_timr.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_uart.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_wdt.c
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/project.uvoptx
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/project.uvprojx
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
bsp/swm320/rtconfig.h
浏览文件 @
ef71de34
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录