13 Commits

Author SHA1 Message Date
f4ac7db357 [修改] Keil工程支持MDK5
[详细说明]
    1. 兼容MDK4、MDK5编译;
    2. NSPE 增加自定义内容
        2.1. 增加开关宏: CONFIG_GY3513;
        2.2. 增加EVAL板定义集;
2023-06-15 16:26:54 +00:00
6503e589b4 [修改] bat脚本与exe工具增加可执行权限 2023-06-15 16:13:40 +00:00
58a63c59fb [修改] 忽略Keil工程中间产物 2023-06-15 16:11:08 +00:00
ada62165a6 [修改] 更新Readme说明 2023-06-14 16:03:01 +00:00
853a9461a0 [修改] 增加CONFIG_GY3513定制内容
[详细说明]
    1. 增加LED任务;
    2. 修复LED3配置错误问题;
2023-06-14 16:01:34 +00:00
242a8865ae [修改] VSCode工程 clang插件相关配置 2023-06-14 16:00:40 +00:00
3ca2c491d5 [Mod] 修改目标单板 EVAL 2023-06-13 16:38:23 +00:00
a389b906af [修改] 支持clangd插件 2023-06-13 16:37:59 +00:00
cc9e198164 [修改] MBL、NSPE支持Linux下make编译
[详细说明]
    1. 增加build_date.sh支持编译时间生成;
    2. 增加xxx_afterbuild.sh脚本,支持elf文件生成;
    3. MBL修改Project目录大小写错误导致的编译失败问题;
    4. 修改头文件目录分隔符心解决编译失败问题;
2023-06-13 15:53:18 +00:00
a38081a71d [修改] .gitignore更新 2023-06-13 15:52:54 +00:00
a37460118b [修改] 临时将工具链以软链形式关联 2023-06-13 15:51:47 +00:00
caa30d12e9 [修改] 输出目录修改为output 2023-06-13 15:49:21 +00:00
04ef4ce611 [修改] 增加Linux环境支持
[详细说明]
    1. Cmake兼容Linux环境;
    2.解决MBL工程目录错误导致的编译失败问题;
2023-06-05 15:36:05 +00:00
41 changed files with 7428 additions and 7003 deletions

192
.clang-format Normal file
View File

@ -0,0 +1,192 @@
---
Language: Cpp
# BasedOnStyle: WebKit
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
AlignArrayOfStructures: None
AlignConsecutiveMacros: None
AlignConsecutiveAssignments: None
AlignConsecutiveBitFields: None
AlignConsecutiveDeclarations: None
AlignEscapedNewlines: Right
AlignOperands: DontAlign
AlignTrailingComments: false
AllowAllArgumentsOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortEnumsOnASingleLine: true
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
AttributeMacros:
- __capability
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterCaseLabel: false
AfterClass: false
AfterControlStatement: Never
AfterEnum: false
AfterFunction: true
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: All
BreakBeforeConceptDeclarations: true
BreakBeforeBraces: WebKit
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeComma
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 0
CommentPragmas: '^ IWYU pragma:'
QualifierAlignment: Leave
CompactNamespaces: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
EmptyLineAfterAccessModifier: Never
EmptyLineBeforeAccessModifier: LogicalBlock
ExperimentalAutoDetectBinPacking: false
PackConstructorInitializers: BinPack
BasedOnStyle: ''
ConstructorInitializerAllOnOneLineOrOnePerLine: false
AllowAllConstructorInitializersOnNextLine: true
FixNamespaceComments: false
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IfMacros:
- KJ_IF_MAYBE
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
SortPriority: 0
CaseSensitive: false
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 3
SortPriority: 0
CaseSensitive: false
- Regex: '.*'
Priority: 1
SortPriority: 0
CaseSensitive: false
IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: ''
IndentAccessModifiers: false
IndentCaseLabels: false
IndentCaseBlocks: false
IndentGotoLabels: true
IndentPPDirectives: None
IndentExternBlock: AfterExternBlock
IndentRequires: false
IndentWidth: 4
IndentWrappedFunctionNames: false
InsertTrailingCommas: None
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
LambdaBodyIndentation: Signature
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: Inner
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 4
ObjCBreakBeforeNestedBlockParam: true
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakOpenParenthesis: 0
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PenaltyIndentedWhitespace: 0
PointerAlignment: Left
PPIndentWidth: -1
ReferenceAlignment: Pointer
ReflowComments: true
RemoveBracesLLVM: false
SeparateDefinitionBlocks: Leave
ShortNamespaceLines: 1
SortIncludes: CaseSensitive
SortJavaStaticImport: Before
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCaseColon: false
SpaceBeforeCpp11BracedList: true
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeParensOptions:
AfterControlStatements: true
AfterForeachMacros: true
AfterFunctionDefinitionName: false
AfterFunctionDeclarationName: false
AfterIfMacros: true
AfterOverloadedOperator: false
BeforeNonEmptyParentheses: false
SpaceAroundPointerQualifiers: Default
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: Never
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInLineCommentPrefix:
Minimum: 1
Maximum: -1
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
BitFieldColonSpacing: Both
Standard: Latest
StatementAttributeLikeMacros:
- Q_EMIT
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 8
UseCRLF: false
UseTab: Never
WhitespaceSensitiveMacros:
- STRINGIZE
- PP_STRINGIZE
- BOOST_PP_STRINGIZE
- NS_SWIFT_NAME
- CF_SWIFT_NAME
...

17
.gitignore vendored
View File

@ -1,3 +1,20 @@
_build_date.h
.cache/
.cmake/
output/
scripts/images/
# MBL
## Keil Project
MBL/Project/KEIL/*.ini
*.uvgui*
MBL/Project/KEIL/RTE/
MBL/Project/KEIL/mbl_ns/
NSPE/Project/WIFI_IOT/KEIL/RTE/
NSPE/Project/WIFI_IOT/KEIL/wifi_iot/
# Clang
compile_commands.json

View File

@ -4,7 +4,8 @@ project(GD32W51X LANGUAGES C ASM)
set(CONFIG_TZ_ENABLED OFF CACHE BOOL "Whether to enable trustzone")
set(CONFIG_OS "FREERTOS" CACHE STRING "Select which OS")
set(CONFIG_STATIC_LIB_BUILDED ON CACHE BOOL "Whether static lib builded, like wlan, iperf3 lib")
set(CONFIG_STATIC_LIB_BUILDED ON CACHE BOOL "Whether static lib builded, like wlan, iperf3 lib")
set(CONFIG_GY3513 ON CACHE BOOL "Whether to allow gaoyang3513's modification or not.")
include(${CMAKE_TOOLCHAIN_FILE})
toolchain_reload_compiler()
@ -23,6 +24,14 @@ include_directories(
ROM-EXPORT/mbedtls-2.17.0-rom/include
)
if(CONFIG_GY3513)
add_definitions(-DCONFIG_GY3513)
include_directories(
NSPE/Utilities
)
endif(CONFIG_GY3513)
if (CONFIG_TZ_ENABLED)
add_subdirectory(MBL/source)
include_directories(MBL/source)
@ -31,5 +40,4 @@ else()
add_subdirectory(MBL/source_ns)
endif()
add_subdirectory(NSPE)

View File

@ -1,453 +1,453 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
<SchemaVersion>1.0</SchemaVersion>
<Header>### uVision Project, (C) Keil Software</Header>
<Extensions>
<cExt>*.c</cExt>
<aExt>*.s*; *.src; *.a*</aExt>
<oExt>*.obj; *.o</oExt>
<lExt>*.lib</lExt>
<tExt>*.txt; *.h; *.inc</tExt>
<pExt>*.plm</pExt>
<CppX>*.cpp</CppX>
<nMigrate>0</nMigrate>
</Extensions>
<DaveTm>
<dwLowDateTime>0</dwLowDateTime>
<dwHighDateTime>0</dwHighDateTime>
</DaveTm>
<Target>
<TargetName>Target_GDM32</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<TargetOption>
<CLKADS>12000000</CLKADS>
<OPTTT>
<gFlags>1</gFlags>
<BeepAtEnd>1</BeepAtEnd>
<RunSim>0</RunSim>
<RunTarget>1</RunTarget>
<RunAbUc>0</RunAbUc>
</OPTTT>
<OPTHX>
<HexSelection>1</HexSelection>
<FlashByte>65535</FlashByte>
<HexRangeLowAddress>0</HexRangeLowAddress>
<HexRangeHighAddress>0</HexRangeHighAddress>
<HexOffset>0</HexOffset>
</OPTHX>
<OPTLEX>
<PageWidth>79</PageWidth>
<PageLength>66</PageLength>
<TabStop>8</TabStop>
<ListingPath>.\mbl_ns\Listings\</ListingPath>
</OPTLEX>
<ListingPage>
<CreateCListing>1</CreateCListing>
<CreateAListing>1</CreateAListing>
<CreateLListing>1</CreateLListing>
<CreateIListing>0</CreateIListing>
<AsmCond>1</AsmCond>
<AsmSymb>1</AsmSymb>
<AsmXref>0</AsmXref>
<CCond>1</CCond>
<CCode>0</CCode>
<CListInc>0</CListInc>
<CSymb>0</CSymb>
<LinkerCodeListing>0</LinkerCodeListing>
</ListingPage>
<OPTXL>
<LMap>1</LMap>
<LComments>1</LComments>
<LGenerateSymbols>1</LGenerateSymbols>
<LLibSym>1</LLibSym>
<LLines>1</LLines>
<LLocSym>1</LLocSym>
<LPubSym>1</LPubSym>
<LXref>0</LXref>
<LExpSel>0</LExpSel>
</OPTXL>
<OPTFL>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>1</IsCurrentTarget>
</OPTFL>
<CpuCode>255</CpuCode>
<DebugOpt>
<uSim>0</uSim>
<uTrg>1</uTrg>
<sLdApp>1</sLdApp>
<sGomain>1</sGomain>
<sRbreak>1</sRbreak>
<sRwatch>1</sRwatch>
<sRmem>1</sRmem>
<sRfunc>1</sRfunc>
<sRbox>1</sRbox>
<tLdApp>0</tLdApp>
<tGomain>0</tGomain>
<tRbreak>1</tRbreak>
<tRwatch>1</tRwatch>
<tRmem>1</tRmem>
<tRfunc>0</tRfunc>
<tRbox>1</tRbox>
<tRtrace>1</tRtrace>
<sRSysVw>1</sRSysVw>
<tRSysVw>1</tRSysVw>
<sRunDeb>0</sRunDeb>
<sLrtime>0</sLrtime>
<bEvRecOn>1</bEvRecOn>
<bSchkAxf>0</bSchkAxf>
<bTchkAxf>0</bTchkAxf>
<nTsel>15</nTsel>
<sDll></sDll>
<sDllPa></sDllPa>
<sDlgDll></sDlgDll>
<sDlgPa></sDlgPa>
<sIfile></sIfile>
<tDll></tDll>
<tDllPa></tDllPa>
<tDlgDll></tDlgDll>
<tDlgPa></tDlgPa>
<tIfile>.\mbl_ns.ini</tIfile>
<pMon>BIN\CMSIS_AGDI_V8M.DLL</pMon>
</DebugOpt>
<TargetDriverDllRegistry>
<SetRegEntry>
<Number>0</Number>
<Key>CMSIS_AGDI_V8M</Key>
<Name>-X"Any" -UAny -O206 -S0 -C0 -P00 -N00("ARM CoreSight SW-DP") -D00(0BE12477) -L00(0) -TO18 -TC10000000 -TP20 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC2000 -FN1 -FF0GD32W515_NS -FS08000000 -FL0200000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>UL2V8M</Key>
<Name>UL2V8M(-S0 -C0 -P0 -FN2 -FC1000 -FD20000000 -FF0GD32W515_NS -FF1GD32W515_S -FL02000 -FL12000 -FS08000000 -FS1C000000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM) -FP1($$Device:GD32W515PIQ6$Flash\GD32W515_S.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>JL2CM3</Key>
<Name>-U69662772 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC2000 -FN1 -FF0GD32W515_NS.FLM -FS08000000 -FL0200000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>DLGUARM</Key>
<Name></Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>DLGTARM</Key>
<Name>(6010=234,272,711,868,0)(6018=105,137,294,470,0)(6019=105,137,294,457,0)(6008=-1,-1,-1,-1,0)(6009=-1,-1,-1,-1,0)(6014=-1,-1,-1,-1,0)(6015=-1,-1,-1,-1,0)(6003=135,169,708,705,0)(6000=75,104,528,436,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>ARMDBGFLAGS</Key>
<Name></Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<MemoryWindow1>
<Mm>
<WinNumber>1</WinNumber>
<SubType>2</SubType>
<ItemText>0x08000000</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow1>
<MemoryWindow2>
<Mm>
<WinNumber>2</WinNumber>
<SubType>2</SubType>
<ItemText>0x08007c00</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow2>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
<DebugFlag>
<trace>0</trace>
<periodic>1</periodic>
<aLwin>1</aLwin>
<aCover>0</aCover>
<aSer1>0</aSer1>
<aSer2>0</aSer2>
<aPa>0</aPa>
<viewmode>1</viewmode>
<vrSel>0</vrSel>
<aSym>0</aSym>
<aTbox>0</aTbox>
<AscS1>0</AscS1>
<AscS2>0</AscS2>
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
<StkLoc>0</StkLoc>
<TrcWin>0</TrcWin>
<newCpu>0</newCpu>
<uProt>0</uProt>
</DebugFlag>
<LintExecutable></LintExecutable>
<LintConfigFile></LintConfigFile>
<bLintAuto>0</bLintAuto>
<bAutoGenD>0</bAutoGenD>
<LntExFlags>0</LntExFlags>
<pMisraName></pMisraName>
<pszMrule></pszMrule>
<pSingCmds></pSingCmds>
<pMultCmds></pMultCmds>
<pMisraNamep></pMisraNamep>
<pszMrulep></pszMrulep>
<pSingCmdsp></pSingCmdsp>
<pMultCmdsp></pMultCmdsp>
</TargetOption>
</Target>
<Group>
<GroupName>bootloader</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>1</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_flash.c</PathWithFileName>
<FilenameWithoutPath>mbl_flash.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>2</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_image.c</PathWithFileName>
<FilenameWithoutPath>mbl_image.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>3</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_ns.c</PathWithFileName>
<FilenameWithoutPath>mbl_ns.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>4</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_sys.c</PathWithFileName>
<FilenameWithoutPath>mbl_sys.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_uart.c</PathWithFileName>
<FilenameWithoutPath>mbl_uart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_api.c</PathWithFileName>
<FilenameWithoutPath>mbl_api.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>7</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\ROM-EXPORT\symbol\rom_symbol_mbedtls_20200709</PathWithFileName>
<FilenameWithoutPath>rom_symbol_mbedtls_20200709</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_qspi_flash.c</PathWithFileName>
<FilenameWithoutPath>mbl_qspi_flash.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>gdm32</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>9</FileNumber>
<FileType>2</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\platform\gdm32\armclang\mbl_startup_gdm32.s</PathWithFileName>
<FilenameWithoutPath>mbl_startup_gdm32.s</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\platform\gdm32\cmsis_core\mbl_system_gdm32.c</PathWithFileName>
<FilenameWithoutPath>mbl_system_gdm32.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_fmc.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_fmc.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_fwdgt.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_fwdgt.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_gpio.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_gpio.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>14</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_icache.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_icache.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>15</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_qspi.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_qspi.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_rcu.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_rcu.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>17</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_usart.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_usart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_misc.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_misc.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>1</RteFlg>
</Group>
</ProjectOpt>
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
<SchemaVersion>1.0</SchemaVersion>
<Header>### uVision Project, (C) Keil Software</Header>
<Extensions>
<cExt>*.c</cExt>
<aExt>*.s*; *.src; *.a*</aExt>
<oExt>*.obj; *.o</oExt>
<lExt>*.lib</lExt>
<tExt>*.txt; *.h; *.inc; *.md</tExt>
<pExt>*.plm</pExt>
<CppX>*.cpp</CppX>
<nMigrate>0</nMigrate>
</Extensions>
<DaveTm>
<dwLowDateTime>0</dwLowDateTime>
<dwHighDateTime>0</dwHighDateTime>
</DaveTm>
<Target>
<TargetName>Target_GDM32</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<TargetOption>
<CLKADS>12000000</CLKADS>
<OPTTT>
<gFlags>1</gFlags>
<BeepAtEnd>1</BeepAtEnd>
<RunSim>0</RunSim>
<RunTarget>1</RunTarget>
<RunAbUc>0</RunAbUc>
</OPTTT>
<OPTHX>
<HexSelection>1</HexSelection>
<FlashByte>65535</FlashByte>
<HexRangeLowAddress>0</HexRangeLowAddress>
<HexRangeHighAddress>0</HexRangeHighAddress>
<HexOffset>0</HexOffset>
</OPTHX>
<OPTLEX>
<PageWidth>79</PageWidth>
<PageLength>66</PageLength>
<TabStop>8</TabStop>
<ListingPath>.\mbl_ns\Listings\</ListingPath>
</OPTLEX>
<ListingPage>
<CreateCListing>1</CreateCListing>
<CreateAListing>1</CreateAListing>
<CreateLListing>1</CreateLListing>
<CreateIListing>0</CreateIListing>
<AsmCond>1</AsmCond>
<AsmSymb>1</AsmSymb>
<AsmXref>0</AsmXref>
<CCond>1</CCond>
<CCode>0</CCode>
<CListInc>0</CListInc>
<CSymb>0</CSymb>
<LinkerCodeListing>0</LinkerCodeListing>
</ListingPage>
<OPTXL>
<LMap>1</LMap>
<LComments>1</LComments>
<LGenerateSymbols>1</LGenerateSymbols>
<LLibSym>1</LLibSym>
<LLines>1</LLines>
<LLocSym>1</LLocSym>
<LPubSym>1</LPubSym>
<LXref>0</LXref>
<LExpSel>0</LExpSel>
</OPTXL>
<OPTFL>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>1</IsCurrentTarget>
</OPTFL>
<CpuCode>255</CpuCode>
<DebugOpt>
<uSim>0</uSim>
<uTrg>1</uTrg>
<sLdApp>1</sLdApp>
<sGomain>1</sGomain>
<sRbreak>1</sRbreak>
<sRwatch>1</sRwatch>
<sRmem>1</sRmem>
<sRfunc>1</sRfunc>
<sRbox>1</sRbox>
<tLdApp>0</tLdApp>
<tGomain>0</tGomain>
<tRbreak>1</tRbreak>
<tRwatch>1</tRwatch>
<tRmem>1</tRmem>
<tRfunc>0</tRfunc>
<tRbox>1</tRbox>
<tRtrace>1</tRtrace>
<sRSysVw>1</sRSysVw>
<tRSysVw>1</tRSysVw>
<sRunDeb>0</sRunDeb>
<sLrtime>0</sLrtime>
<bEvRecOn>1</bEvRecOn>
<bSchkAxf>0</bSchkAxf>
<bTchkAxf>0</bTchkAxf>
<nTsel>14</nTsel>
<sDll></sDll>
<sDllPa></sDllPa>
<sDlgDll></sDlgDll>
<sDlgPa></sDlgPa>
<sIfile></sIfile>
<tDll></tDll>
<tDllPa></tDllPa>
<tDlgDll></tDlgDll>
<tDlgPa></tDlgPa>
<tIfile>.\mbl_ns.ini</tIfile>
<pMon>BIN\CMSIS_AGDI_V8M.DLL</pMon>
</DebugOpt>
<TargetDriverDllRegistry>
<SetRegEntry>
<Number>0</Number>
<Key>CMSIS_AGDI_V8M</Key>
<Name>-X"Any" -UAny -O206 -S0 -C0 -P00 -N00("ARM CoreSight SW-DP") -D00(0BE12477) -L00(0) -TO18 -TC10000000 -TP20 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC2000 -FN1 -FF0GD32W515_NS -FS08000000 -FL0200000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>UL2V8M</Key>
<Name>UL2V8M(-S0 -C0 -P0 -FN2 -FC1000 -FD20000000 -FF0GD32W515_NS -FF1GD32W515_S -FL02000 -FL12000 -FS08000000 -FS1C000000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM) -FP1($$Device:GD32W515PIQ6$Flash\GD32W515_S.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>JL2CM3</Key>
<Name>-U69662772 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC2000 -FN1 -FF0GD32W515_NS.FLM -FS08000000 -FL0200000 -FP0($$Device:GD32W515PIQ6$Flash\GD32W515_NS.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>DLGUARM</Key>
<Name></Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>DLGTARM</Key>
<Name>(6010=234,272,711,868,0)(6018=105,137,294,470,0)(6019=105,137,294,457,0)(6008=-1,-1,-1,-1,0)(6009=-1,-1,-1,-1,0)(6014=-1,-1,-1,-1,0)(6015=-1,-1,-1,-1,0)(6003=135,169,708,705,0)(6000=75,104,528,436,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>ARMDBGFLAGS</Key>
<Name></Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<MemoryWindow1>
<Mm>
<WinNumber>1</WinNumber>
<SubType>2</SubType>
<ItemText>0x08000000</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow1>
<MemoryWindow2>
<Mm>
<WinNumber>2</WinNumber>
<SubType>2</SubType>
<ItemText>0x08007c00</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow2>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
<DebugFlag>
<trace>0</trace>
<periodic>1</periodic>
<aLwin>1</aLwin>
<aCover>0</aCover>
<aSer1>0</aSer1>
<aSer2>0</aSer2>
<aPa>0</aPa>
<viewmode>1</viewmode>
<vrSel>0</vrSel>
<aSym>0</aSym>
<aTbox>0</aTbox>
<AscS1>0</AscS1>
<AscS2>0</AscS2>
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
<StkLoc>0</StkLoc>
<TrcWin>0</TrcWin>
<newCpu>0</newCpu>
<uProt>0</uProt>
</DebugFlag>
<LintExecutable></LintExecutable>
<LintConfigFile></LintConfigFile>
<bLintAuto>0</bLintAuto>
<bAutoGenD>0</bAutoGenD>
<LntExFlags>0</LntExFlags>
<pMisraName></pMisraName>
<pszMrule></pszMrule>
<pSingCmds></pSingCmds>
<pMultCmds></pMultCmds>
<pMisraNamep></pMisraNamep>
<pszMrulep></pszMrulep>
<pSingCmdsp></pSingCmdsp>
<pMultCmdsp></pMultCmdsp>
</TargetOption>
</Target>
<Group>
<GroupName>bootloader</GroupName>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>1</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_flash.c</PathWithFileName>
<FilenameWithoutPath>mbl_flash.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>2</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_image.c</PathWithFileName>
<FilenameWithoutPath>mbl_image.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>3</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_ns.c</PathWithFileName>
<FilenameWithoutPath>mbl_ns.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>4</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_sys.c</PathWithFileName>
<FilenameWithoutPath>mbl_sys.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_uart.c</PathWithFileName>
<FilenameWithoutPath>mbl_uart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_api.c</PathWithFileName>
<FilenameWithoutPath>mbl_api.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>7</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\ROM-EXPORT\symbol\rom_symbol_mbedtls_20200709</PathWithFileName>
<FilenameWithoutPath>rom_symbol_mbedtls_20200709</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\source_ns\mbl_qspi_flash.c</PathWithFileName>
<FilenameWithoutPath>mbl_qspi_flash.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>gdm32</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>9</FileNumber>
<FileType>2</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\platform\gdm32\armclang\mbl_startup_gdm32.s</PathWithFileName>
<FilenameWithoutPath>mbl_startup_gdm32.s</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\platform\gdm32\cmsis_core\mbl_system_gdm32.c</PathWithFileName>
<FilenameWithoutPath>mbl_system_gdm32.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_fmc.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_fmc.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_fwdgt.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_fwdgt.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_gpio.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_gpio.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>14</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_icache.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_icache.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>15</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_qspi.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_qspi.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_rcu.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_rcu.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>17</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_usart.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_usart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\..\NSPE\Firmware\GD32W51x_standard_peripheral\Source\gd32w51x_misc.c</PathWithFileName>
<FilenameWithoutPath>gd32w51x_misc.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>1</RteFlg>
</Group>
</ProjectOpt>

View File

@ -10,14 +10,22 @@ set ROOT=%OUTPUT_PATH%\..\..\..\..\..
set SREC_CAT=%ROOT%\scripts\imgtool\srec_cat.exe
set OUTPUT_IMAGE_PATH=%ROOT%\scripts\images
for /f "tokens=1,2 delims=\" %%a in ("%TOOLKIT_PATH%") do set driver=%%a &set version=%%b
if "%TOOLKIT%" == "KEIL" (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.txt %OUTPUT_PATH%\%OUTPUT_NAME%.axf
if "%version%" == "Keil_v5" (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCLANG\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.txt %OUTPUT_PATH%\%OUTPUT_NAME%.axf
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.bin %OUTPUT_PATH%\%OUTPUT_NAME%.axf
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCLANG\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.bin %OUTPUT_PATH%\%OUTPUT_NAME%.axf
) else (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.txt %OUTPUT_PATH%\%OUTPUT_NAME%.axf
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\%OUTPUT_NAME%.bin %OUTPUT_PATH%\%OUTPUT_NAME%.axf
)
)
if "%TOOLKIT%" == "IAR" (
:: Generate ASM file
@ -36,5 +44,5 @@ IF EXIST %OUTPUT_IMAGE_PATH%\%OUTPUT_NAME%* del %OUTPUT_IMAGE_PATH%\%OUTPUT_NAME
copy %OUTPUT_PATH%\..\%OUTPUT_NAME%.bin %OUTPUT_IMAGE_PATH%\
:: Generate Hex file
%SREC_CAT% %OUTPUT_IMAGE_PATH%\%OUTPUT_NAME%.bin -Binary -offset 0x0C000000 -o %OUTPUT_IMAGE_PATH%\%OUTPUT_NAME%.hex -Intel
::exit

40
MBL/Project/mbl_afterbuild.sh Executable file
View File

@ -0,0 +1,40 @@
#!/bin/bash
#set -x
#echo "Args: $@"
OUTPUT_PATH=$1
OUTPUT_NAME=$2
TOOLKIT=$3
TOOLKIT_PATH=$4
OUTPUT_PATH=${OUTPUT_PATH%/}
ROOT=$(realpath ${OUTPUT_PATH}/../../../../..)
SREC_CAT=/usr/bin/srec_cat
OUTPUT_IMAGE_PATH=${ROOT}/scripts/images
if [ "${TOOLKIT}" == "KEIL" ]; then
# Generate txt for debug
${TOOLKIT_PATH}/ARM/ARMCC/bin/fromelf.exe --text -c -d --output=${OUTPUT_PATH}/../${OUTPUT_NAME}.txt ${OUTPUT_PATH}/${OUTPUT_NAME}.axf
# Generate binary image
%TOOLKIT_PATH%/ARM/ARMCC/bin/fromelf.exe --bin --8x1 --bincombined --output=${OUTPUT_PATH}/../${OUTPUT_NAME}.bin ${OUTPUT_PATH}/${OUTPUT_NAME}.axf
elif [ "${TOOLKIT}" == "IAR" ]; then
# Generate ASM file
%TOOLKIT_PATH%/bin/ielfdumparm.exe ${OUTPUT_PATH}/${OUTPUT_NAME}.axf --output ${OUTPUT_PATH}/../${OUTPUT_NAME}.asm --code
# Generate binary image
%TOOLKIT_PATH%/bin/ielftool.exe ${OUTPUT_PATH}/${OUTPUT_NAME}.axf --bin ${OUTPUT_PATH}/../${OUTPUT_NAME}.bin
elif [ "${TOOLKIT}" == "GCC" ]; then
arm-none-eabi-objdump -xS ${OUTPUT_PATH}/${OUTPUT_NAME}.axf > ${OUTPUT_PATH}/../${OUTPUT_NAME}.txt
arm-none-eabi-objcopy -Obinary ${OUTPUT_PATH}/${OUTPUT_NAME}.axf ${OUTPUT_PATH}/../${OUTPUT_NAME}.bin
fi
mkdir -p ${OUTPUT_IMAGE_PATH}
if [ -n "$(ls ${OUTPUT_IMAGE_PATH}/${OUTPUT_NAME}*)" ]; then
rm -rf ${OUTPUT_IMAGE_PATH}/${OUTPUT_NAME}*
fi
# Copy to output image path
cp ${OUTPUT_PATH}/../${OUTPUT_NAME}.bin ${OUTPUT_IMAGE_PATH}
# Generate Hex file
${SREC_CAT} ${OUTPUT_IMAGE_PATH}/${OUTPUT_NAME}.bin -Binary -offset 0x0C000000 -o ${OUTPUT_IMAGE_PATH}/${OUTPUT_NAME}.hex -Intel

View File

@ -1,6 +0,0 @@
//LOAD "..\\..\\..\\ROM-EXPORT\\symbol\\rom.axf" incremental
LOAD "..\\..\\..\\MBL\\project\\KEIL\\mbl\\Objects\\mbl.axf" incremental
LOAD "..\\..\\..\\PROT\\project\\KEIL\\secure_main\\Gdm32\\Objects\\prot.axf" incremental
LOAD "..\\..\\..\\NSPE\\Project\\WIFI_IOT\\KEIL\\nspe\\output\\nspe.axf" incremental
RESET

View File

@ -1,4 +0,0 @@
LOAD "mbl_ns\\Objects\\mbl-ns.axf" incremental
LOAD "..\\..\\..\\NSPE\\Project\\WIFI_IOT\\KEIL\\wifi_iot\\output\\nspe.axf" incremental
RESET

View File

@ -58,10 +58,17 @@ target_add_scatter_file(${TARGET_EXE}
target_link_options(${TARGET_EXE}
PUBLIC
-Wl,--just-symbols=${PROJECT_SOURCE_DIR}/ROM-EXPORT/symbol/rom_symbol.gcc
-Wl,-Map=${RUNTIME_OUTPUT_DIRECTORY}/${TARGET_EXE}.map
-Wl,-Map=${TAGET_PROJECT_DIR}/GCC/output/bin/${TARGET_EXE}.map
)
add_custom_command(TARGET ${TARGET_EXE} POST_BUILD
COMMAND ${TAGET_PROJECT_DIR}/mbl_afterbuild.bat ${TAGET_PROJECT_DIR}/GCC/output/bin ${TARGET_EXE} GCC \"\"
COMMENT "Building ${TARGET_EXE}"
)
if(CMAKE_HOST_UNIX)
add_custom_command(TARGET ${TARGET_EXE} POST_BUILD
COMMAND ${TAGET_PROJECT_DIR}/mbl_afterbuild.sh ${TAGET_PROJECT_DIR}/GCC/output/bin ${TARGET_EXE} GCC \"\"
COMMENT "Building ${TARGET_EXE}"
)
elseif(CMAKE_HOST_WIN32)
add_custom_command(TARGET ${TARGET_EXE} POST_BUILD
COMMAND ${TAGET_PROJECT_DIR}/mbl_afterbuild.bat ${TAGET_PROJECT_DIR}/GCC/output/bin ${TARGET_EXE} GCC \"\"
COMMENT "Building ${TARGET_EXE}"
)
endif()

View File

@ -23,18 +23,25 @@ CLEAN_ALL :=
#==============================================================================#
# Compile configure
#==============================================================================#
CROSS_COMPILE ?=
#==============================================================================#
# Target
#==============================================================================#
.PHONY: all $(BUILD_ALL) $(CLEAN_ALL)
all: check_env $(BUILD_ALL)
$(MAKE) -C $(CMAKE_DIR) -j$(MULTI_CORES)
@$(MAKE) -C $(CMAKE_DIR) -j$(MULTI_CORES)
check_env:
if [ ! -e $(CMAKE_DIR) ]; then \
@if [ ! -e $(OUTPUT_DIR) ]; then mkdir -p $(OUTPUT_DIR); fi;
@if [ ! -e $(CMAKE_DIR) ]; then \
mkdir -p $(CMAKE_DIR); \
cmake -G "Unix Makefiles" \
-DCMAKE_TOOLCHAIN_FILE:PATH=$(SDK_TOP)/scripts/cmake/toolchain.cmake \
-S $(LOCAL_DIR) -B $(CMAKE_DIR); \
-S $(LOCAL_DIR) -B $(CMAKE_DIR) \
-DCMAKE_TOOLCHAIN_FILE:PATH=$(SDK_TOP)/scripts/cmake/toolchain.cmake; \
fi;
clean: check_env $(CLEAN_ALL)
@rm -rf $(CMAKE_DIR) $(OUTPUT_DIR)

View File

@ -1,15 +1,20 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<ProjectWorkspace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_mpw.xsd">
<SchemaVersion>1.0</SchemaVersion>
<Header>### uVision Project, (C) Keil Software</Header>
<WorkspaceName>WorkSpace</WorkspaceName>
<project>
<PathAndName>.\MBL\project\KEIL\Project_MBL_NS.uvprojx</PathAndName>
<NodeIsActive>1</NodeIsActive>
<NodeIsExpanded>1</NodeIsExpanded>
</project>
<project>
<PathAndName>.\NSPE\Project\WIFI_IOT\KEIL\Project_WIFI_IOT.uvprojx</PathAndName>
<NodeIsExpanded>1</NodeIsExpanded>
</project>
</ProjectWorkspace>
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<ProjectWorkspace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_mpw.xsd">
<SchemaVersion>1.0</SchemaVersion>
<Header>### uVision Project, (C) Keil Software</Header>
<WorkspaceName>WorkSpace</WorkspaceName>
<project>
<PathAndName>.\MBL\project\KEIL\Project_MBL_NS.uvprojx</PathAndName>
</project>
<project>
<PathAndName>.\NSPE\Project\WIFI_IOT\KEIL\Project_WIFI_IOT.uvprojx</PathAndName>
<NodeIsActive>1</NodeIsActive>
<NodeIsExpanded>1</NodeIsExpanded>
</project>
</ProjectWorkspace>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

0
NSPE/Project/WIFI_IOT/build_date.bat Normal file → Executable file
View File

View File

@ -0,0 +1,7 @@
#!/bin/bash
DIR=$1
echo "/* Do not change the content here, it's auto generated */" > ${DIR}/WIFI_IOT/common/_build_date.h
echo "#define BUILD_DATE \"$(date +"%Y/%m/%d %H:%M")\"" >> ${DIR}/WIFI_IOT/common/_build_date.h
echo "#define DATE_GENERATED" >> ${DIR}/WIFI_IOT/common/_build_date.h

20
NSPE/Project/WIFI_IOT/nspe_afterbuild.bat Normal file → Executable file
View File

@ -15,12 +15,22 @@ set OUTPUT_FILE=nspe
IF EXIST %OUTPUT_PATH%\..\nspe* del %OUTPUT_PATH%\..\nspe*
if "%TOOLKIT%" == "KEIL" (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.txt %OUTPUT_PATH%\%OUTPUT_FILE%.axf
for /f "tokens=1,2 delims=\" %%a in ("%TOOLKIT_PATH%") do set driver=%%a &set version=%%b
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\nspe.bin %OUTPUT_PATH%\%OUTPUT_FILE%.axf
if "%TOOLKIT%" == "KEIL" (
if "%version%" == "Keil_v5" (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCLANG\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.txt %OUTPUT_PATH%\%OUTPUT_FILE%.axf
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCLANG\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.bin %OUTPUT_PATH%\%OUTPUT_FILE%.axf
) else (
:: Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.txt %OUTPUT_PATH%\%OUTPUT_FILE%.axf
:: Generate binary image
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.bin %OUTPUT_PATH%\%OUTPUT_FILE%.axf
)
)
if "%TOOLKIT%" == "IAR" (
:: Generate ASM file

97
NSPE/Project/WIFI_IOT/nspe_afterbuild.sh Normal file → Executable file
View File

@ -1,44 +1,53 @@
OUTPUT_PATH=$1
TOOLKIT=$2
TOOLKIT_PATH=$3
"OUTPUT_PATH=%OUTPUT_PATH:/=\%"
echo TOOLKIT=%TOOLKIT%
echo TOOLKIT_PATH=%TOOLKIT_PATH%
set ROOT=%OUTPUT_PATH%\..\..\..\..\..\..
set INDEX=0
set OUTPUT_IMAGE_PATH=%ROOT%\scripts\images
set SREC_CAT=%ROOT%\scripts\imgtool\srec_cat.exe
set OUTPUT_FILE=nspe
IF EXIST %OUTPUT_PATH%\..\nspe* del %OUTPUT_PATH%\..\nspe*
if "%TOOLKIT%" == "KEIL" (
# Generate txt for debug
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --text -c -d --output=%OUTPUT_PATH%\..\%OUTPUT_FILE%.txt %OUTPUT_PATH%\%OUTPUT_FILE%.axf
# Generate binary image
%TOOLKIT_PATH%\ARM\ARMCC\bin\fromelf.exe --bin --8x1 --bincombined --output=%OUTPUT_PATH%\..\nspe.bin %OUTPUT_PATH%\%OUTPUT_FILE%.axf
)
if "%TOOLKIT%" == "IAR" (
# Generate ASM file
%TOOLKIT_PATH%\bin\ielfdumparm.exe %OUTPUT_PATH%\%OUTPUT_FILE%.axf --output %OUTPUT_PATH%\..\%OUTPUT_FILE%.asm --code
# Generate binary image
%TOOLKIT_PATH%\bin\ielftool.exe %OUTPUT_PATH%\%OUTPUT_FILE%.axf --bin %OUTPUT_PATH%\..\%OUTPUT_FILE%.bin
)
if "%TOOLKIT%" == "GCC" (
arm-none-eabi-objdump -xS %OUTPUT_PATH%\%OUTPUT_FILE%.axf > %OUTPUT_PATH%\..\%OUTPUT_FILE%.txt
arm-none-eabi-objcopy -Obinary %OUTPUT_PATH%\%OUTPUT_FILE%.axf %OUTPUT_PATH%\..\%OUTPUT_FILE%.bin
)
# Copy nspe.bin to the image path as ota image
copy %OUTPUT_PATH%\..\nspe.bin %OUTPUT_IMAGE_PATH%\image-ota.bin
# concatenate mbl-ns.bin and nspe.bin
%SREC_CAT% %OUTPUT_IMAGE_PATH%\mbl-ns.bin -Binary -offset 0 %OUTPUT_PATH%\..\nspe.bin -Binary -offset 0xa000 -fill 0xFF 0x7FFC 0xA000 -o %OUTPUT_IMAGE_PATH%\image-all.bin -Binary
# Convert to HEX file
if exist %OUTPUT_IMAGE_PATH%\image-all.bin %SREC_CAT% %OUTPUT_IMAGE_PATH%\image-all.bin -Binary -offset 0x0C000000 -o %OUTPUT_IMAGE_PATH%\image-all.hex -Intel
#!/bin/bash
#set -x
#echo "Args: $@"
OUTPUT_PATH=$1
TOOLKIT=$2
TOOLKIT_PATH=$3
OUTPUT_PATH=${OUTPUT_PATH%/}
ROOT=$(realpath ${OUTPUT_PATH}/../../../../../..)
TOOLKIT=${TOOLKIT}
TOOLKIT_PATH=${TOOLKIT_PATH}
INDEX=0
SREC_CAT=/usr/bin/srec_cat
OUTPUT_FILE=nspe
OUTPUT_IMAGE_PATH=${ROOT}/scripts/images
mkdir -p ${OUTPUT_PATH}
if [ -n "$(ls ${OUTPUT_PATH}/../nspe*)" ]; then
rm -rf ${OUTPUT_PATH}/../nspe*
fi
if [ "${TOOLKIT}" == "KEIL" ]; then
# Generate txt for debug
${TOOLKIT_PATH}/ARM/ARMCC/bin/fromelf.exe --text -c -d --output=${OUTPUT_PATH}/../${OUTPUT_FILE}.txt ${OUTPUT_PATH}/${OUTPUT_FILE}.axf
# Generate binary image
${TOOLKIT_PATH}/ARM/ARMCC/bin/fromelf.exe --bin --8x1 --bincombined --output=${OUTPUT_PATH}/../nspe.bin ${OUTPUT_PATH}/${OUTPUT_FILE}.axf
elif [ "${TOOLKIT}" == "IAR" ]; then
# Generate ASM file
${TOOLKIT_PATH}/bin/ielfdumparm.exe ${OUTPUT_PATH}/${OUTPUT_FILE}.axf --output ${OUTPUT_PATH}/../${OUTPUT_FILE}.asm --code
# Generate binary image
${TOOLKIT_PATH}/bin/ielftool.exe ${OUTPUT_PATH}/${OUTPUT_FILE}.axf --bin ${OUTPUT_PATH}/../${OUTPUT_FILE}.bin
elif [ "${TOOLKIT}" == "GCC" ]; then
arm-none-eabi-objdump -xS ${OUTPUT_PATH}/${OUTPUT_FILE}.axf > ${OUTPUT_PATH}/../${OUTPUT_FILE}.txt
arm-none-eabi-objcopy -Obinary ${OUTPUT_PATH}/${OUTPUT_FILE}.axf ${OUTPUT_PATH}/../${OUTPUT_FILE}.bin
fi
mkdir -p ${OUTPUT_IMAGE_PATH}
# Copy nspe.bin to the image path as ota image
cp -rf ${OUTPUT_PATH}/../nspe.bin ${OUTPUT_IMAGE_PATH}/image-ota.bin
# concatenate mbl-ns.bin and nspe.bin
${SREC_CAT} ${OUTPUT_IMAGE_PATH}/mbl-ns.bin -Binary -offset 0 ${OUTPUT_PATH}/../nspe.bin -Binary -offset 0xa000 -fill 0xFF 0x7FFC 0xA000 -o ${OUTPUT_IMAGE_PATH}/image-all.bin -Binary
# Convert to HEX file
if [ -e ${OUTPUT_IMAGE_PATH}/image-all.bin ]; then
${SREC_CAT} ${OUTPUT_IMAGE_PATH}/image-all.bin -Binary -offset 0x0C000000 -o ${OUTPUT_IMAGE_PATH}/image-all.hex -Intel
fi

0
NSPE/Project/WIFI_IOT/wifi_version.bat Normal file → Executable file
View File

View File

@ -71,9 +71,9 @@ typedef enum
#define LED2_GPIO_PORT GPIOA
#define LED2_GPIO_CLK RCU_GPIOA
#define LED3_PIN GPIO_PIN_8
#define LED3_GPIO_PORT GPIOB
#define LED3_GPIO_CLK RCU_GPIOB
#define LED3_PIN GPIO_PIN_6
#define LED3_GPIO_PORT GPIOA
#define LED3_GPIO_CLK RCU_GPIOA
#define COMn 1U
#define EVAL_COM0 USART2

View File

@ -32,6 +32,13 @@ target_sources(app
../demo/cmsis_os_demo.c
)
if(CONFIG_GY3513)
target_sources(app
PRIVATE
../../Utilities/gd32w515p_eval.c
)
endif(CONFIG_GY3513)
target_link_libraries(app
gd32w51x_peripheral_api
gd32w51x_wifi_api
@ -53,6 +60,13 @@ target_sources(app
_build_date.h
)
if(CMAKE_HOST_UNIX)
set(BUILD_DATE_SCRIPT ${TAGET_PROJECT_DIR}/build_date.sh)
elseif(CMAKE_HOST_WIN32)
set(BUILD_DATE_SCRIPT ${TAGET_PROJECT_DIR}/build_date.bat)
endif()
message("Build script: ${BUILD_DATE_SCRIPT}")
add_custom_command(OUTPUT _build_date.h
COMMAND ${TAGET_PROJECT_DIR}/build_date.bat ${PROJECT_SOURCE_DIR}/NSPE
)
COMMAND ${BUILD_DATE_SCRIPT} ${PROJECT_SOURCE_DIR}/NSPE
)

View File

@ -33,6 +33,7 @@ OF SUCH DAMAGE.
*/
/*============================ INCLUDES ======================================*/
#include "wrapper_freertos.h"
#include "wrapper_os.h"
#include "debug_print.h"
#include "bsp_inc.h"
@ -48,6 +49,10 @@ OF SUCH DAMAGE.
#ifdef CONFIG_FATFS_SUPPORT
#include "fatfs.h"
#endif
#if defined (CONFIG_GY3513)
#include <gd32w515p_eval.h>
#endif // CONFIG_GY3513
/*============================ MACROS ========================================*/
/*============================ MACRO FUNCTIONS ===============================*/
/*============================ TYPES =========================================*/
@ -74,6 +79,31 @@ void do_ram_code_copy(void)
}
#endif
#if defined (CONFIG_GY3513)
static int32_t led_init(void)
{
gd_eval_led_init(LED1);
gd_eval_led_init(LED2);
gd_eval_led_init(LED3);
return 0;
}
void led_task(void *p_arg)
{
while (1) {
gd_eval_led_toggle(LED1);
sys_ms_sleep(200);
gd_eval_led_toggle(LED2);
sys_ms_sleep(200);
gd_eval_led_toggle(LED3);
sys_ms_sleep(200);
}
sys_task_delete(NULL);
}
#endif // CONFIG_GY3513
/*!
\brief initialize application
\param[in] none
@ -121,7 +151,14 @@ void start_task(void *p_arg)
*/
int main(void)
{
#if defined (CONFIG_GY3513)
TaskHandle_t *stTaskHndl_led = NULL;
#endif // CONFIG_GY3513
platform_init();
#if defined (CONFIG_GY3513)
led_init();
#endif // CONFIG_GY3513
DEBUGPRINT("SDK git revision: "WIFI_GIT_REVISION" \r\n");
DEBUGPRINT("SDK version: V%d.%d.%d\r\n", (RE_NSPE_VERSION >> 24), ((RE_NSPE_VERSION & 0xFF0000) >> 16), (RE_NSPE_VERSION & 0xFFFF));
@ -129,8 +166,17 @@ int main(void)
sys_os_init();
if (NULL == sys_task_create(NULL, (const uint8_t *)"start_task", NULL, START_TASK_STK_SIZE, 0,
START_TASK_PRIO, start_task, NULL)) {
#if defined (CONFIG_GY3513)
#define LED_TASK_STK_SIZE 256
#define LED_TASK_PRIO (TASK_PRIO_APP_BASE + TASK_PRIO_HIGHER(1))
stTaskHndl_led = sys_task_create(NULL, (const uint8_t *)"led_task", NULL, LED_TASK_STK_SIZE, 0, LED_TASK_PRIO, led_task, NULL);
if (stTaskHndl_led == NULL) {
DEBUG_ERROR("Error, task create failed.\r\n");
}
#endif // CONFIG_GY3513
if (NULL == sys_task_create(NULL, (const uint8_t *)"start_task", NULL, START_TASK_STK_SIZE, 0, START_TASK_PRIO, start_task, NULL)) {
DEBUGPRINT("ERROR: create start task failed\r\n");
}

View File

@ -735,5 +735,6 @@ void platform_init(void)
gdm3210x_fpga_init();
#elif CONFIG_PLATFORM == PLATFORM_ASIC_32W51X
gd32w51x_asic_init();
#endif
}

View File

@ -38,7 +38,7 @@ OF SUCH DAMAGE.
#include "bsp_inc.h"
#include "debug_print.h"
#include "trng.h"
#include "mbedtls\md5.h"
#include "mbedtls/md5.h"
unsigned char btrng_seed = 1;
static unsigned int randPool; /* Pool of randomness. */

View File

@ -1,3 +0,0 @@
/* Do not change the content here, it's auto generated */
#define BUILD_DATE "2022/12/07 16:07:03"
#define DATE_GENERATED

View File

@ -1,8 +1,15 @@
# GD32W51x_WiFi_IOT
本仓库作为本人学习GD32 + RTOS + cmake知识使用开发环境为是在Linux。
本仓库作为本人学习GD32 + RTOS + Cmake相关知识使用开发环境为Linux(Ubuntu 22.04)
## 说明
1. 基于官网 GD32W51x v1.0.3开发;
2. 加入source + lunch支持
### 环境配置
1. 临时增加工具链信息
```shell
ln -snf /opt/toolchains/gcc-arm-none-eabi/ prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8
```

View File

@ -35,25 +35,25 @@ OF SUCH DAMAGE.
#ifndef __ROM_EXPORT_MBEDTLS_H__
#define __ROM_EXPORT_MBEDTLS_H__
#include "mbedtls\md5.h"
#include "mbedtls\sha1.h"
#include "mbedtls\sha256.h"
#include "mbedtls\sha512.h"
#include "mbedtls\md.h"
#include "mbedtls\cipher.h"
#include "mbedtls\ssl_ciphersuites.h"
#include "mbedtls\dhm.h"
#include "mbedtls\ecdh.h"
#include "mbedtls\ecp.h"
#include "mbedtls\pk.h"
#include "mbedtls\ecp.h"
#include "mbedtls\x509_crt.h"
#include "mbedtls\bignum.h"
#include "mbedtls\ctr_drbg.h"
#include "mbedtls\ssl_ticket.h"
#include "mbedtls\ssl_cookie.h"
#include "mbedtls\base64.h"
#include "mbedtls\platform.h"
#include "mbedtls\memory_buffer_alloc.h"
#include "mbedtls/md5.h"
#include "mbedtls/sha1.h"
#include "mbedtls/sha256.h"
#include "mbedtls/sha512.h"
#include "mbedtls/md.h"
#include "mbedtls/cipher.h"
#include "mbedtls/ssl_ciphersuites.h"
#include "mbedtls/dhm.h"
#include "mbedtls/ecdh.h"
#include "mbedtls/ecp.h"
#include "mbedtls/pk.h"
#include "mbedtls/ecp.h"
#include "mbedtls/x509_crt.h"
#include "mbedtls/bignum.h"
#include "mbedtls/ctr_drbg.h"
#include "mbedtls/ssl_ticket.h"
#include "mbedtls/ssl_cookie.h"
#include "mbedtls/base64.h"
#include "mbedtls/platform.h"
#include "mbedtls/memory_buffer_alloc.h"
#endif // __ROM_EXPORT_MBEDTLS_H__

View File

@ -51,7 +51,7 @@ OF SUCH DAMAGE.
#define PLATFORM_BOARD_32W515T_START 0
#define PLATFORM_BOARD_32W515P_EVAL 1
#ifdef CONFIG_PLATFORM_ASIC
#define CONFIG_BOARD PLATFORM_BOARD_32W515T_START
#define CONFIG_BOARD PLATFORM_BOARD_32W515P_EVAL
#endif
#define XIP_FLASH_SIP 0

View File

@ -21,3 +21,4 @@ LOCAL_KERNEL := prebuilts/qemu-kernel/mips/kernel-qemu
PRODUCT_COPY_FILES += \
$(LOCAL_KERNEL):kernel
OUT_DIR := $(TOPDIR)output

View File

@ -0,0 +1 @@
/opt/toolchains/gcc-arm-none-eabi/

View File

@ -1,8 +1,8 @@
set(CMAKE_SYSTEM_NAME Generic)
set(CROSS_COMPILE arm-none-eabi)
find_program(CMAKE_C_COMPILER ${CROSS_COMPILE}-gcc)
find_program(CMAKE_CXX_COMPILER ${CROSS_COMPILE}-g++)
set(CROSS_COMPILE arm-none-eabi-)
find_program(CMAKE_C_COMPILER ${CROSS_COMPILE}gcc)
find_program(CMAKE_CXX_COMPILER ${CROSS_COMPILE}g++)
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})

0
scripts/imgtool/srec_cat.exe Normal file → Executable file
View File