aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template')
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/EWARM/stm32f37x_flash_offset.icf33
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/MDK-ARM/SysTick.uvopt2356
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/SysTick.rapp1336
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f10x_hd_flash_offset.ld242
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f30x_flash_offset.ld242
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_hd_flash_offset.ld171
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_md_flash_offset.ld171
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL/.project137
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/.project137
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/TASKING/STM32F10x_XL.lsl165
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32373C_EVAL/.launch44
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.cproject133
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.project142
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/.cproject138
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.hex52
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.launch48
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210B-EVAL/.cproject266
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL/.project160
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL_XL/stm32_flash.ld170
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32373C-EVAL/STM32373C-EVAL.elf.launch40
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/STM32L152D-EVAL.elf.launch43
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/stm32_flash.ld171
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/inc/stm32f37x_conf.h83
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/stm32_it.c180
-rw-r--r--thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/system_stm32f30x.c382
25 files changed, 7042 insertions, 0 deletions
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/EWARM/stm32f37x_flash_offset.icf b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/EWARM/stm32f37x_flash_offset.icf
new file mode 100644
index 0000000..5403956
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/EWARM/stm32f37x_flash_offset.icf
@@ -0,0 +1,33 @@
+/*###ICF### Section handled by ICF editor, don't touch! ****/
+/*-Editor annotation file-*/
+/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
+/*-Specials-*/
+define symbol __ICFEDIT_intvec_start__ = 0x08003000;
+/*-Memory Regions-*/
+define symbol __ICFEDIT_region_ROM_start__ = 0x08003000;
+define symbol __ICFEDIT_region_ROM_end__ = 0x0803FFFF;
+define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
+define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF;
+/*-Sizes-*/
+define symbol __ICFEDIT_size_cstack__ = 0x1800;
+define symbol __ICFEDIT_size_heap__ = 0x800;
+/**** End of ICF editor section. ###ICF###*/
+
+
+define memory mem with size = 4G;
+define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
+define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
+export symbol __ICFEDIT_region_RAM_start__;
+export symbol __ICFEDIT_region_RAM_end__;
+
+define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
+define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
+
+initialize by copy { readwrite };
+do not initialize { section .noinit };
+
+place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
+
+place in ROM_region { readonly };
+place in RAM_region { readwrite,
+ block CSTACK, block HEAP }; \ No newline at end of file
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/MDK-ARM/SysTick.uvopt b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/MDK-ARM/SysTick.uvopt
new file mode 100644
index 0000000..c128f99
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/MDK-ARM/SysTick.uvopt
@@ -0,0 +1,2356 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_opt.xsd">
+
+ <SchemaVersion>1.0</SchemaVersion>
+
+ <Header>### uVision Project, (C) Keil Software</Header>
+
+ <Extensions>
+ <cExt>*.c</cExt>
+ <aExt>*.s*; *.src; *.a*</aExt>
+ <oExt>*.obj</oExt>
+ <lExt>*.lib</lExt>
+ <tExt>*.txt; *.h; *.inc</tExt>
+ <pExt>*.plm</pExt>
+ <CppX>*.cpp</CppX>
+ </Extensions>
+
+ <DaveTm>
+ <dwLowDateTime>0</dwLowDateTime>
+ <dwHighDateTime>0</dwHighDateTime>
+ </DaveTm>
+
+ <Target>
+ <TargetName>STM3210B-EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM3210B-EVAL\</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>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DARMSTM.DLL</SimDlgDllName>
+ <SimDlgDllArguments>-pSTM32F103VB</SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TARMSTM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments>-pSTM32F103VB</TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-UM0015BJE -O2190 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06416041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128 -FS08000000 -FL020000</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint/>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM3210E-EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM3210E-EVAL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>255</CpuCode>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DARMSTM.DLL</SimDlgDllName>
+ <SimDlgDllArguments>-pSTM32F103ZE</SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TARMSTM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments>-pSTM32F103ZE</TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-UM0015BJE -O2190 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06416041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint>
+ <Bp>
+ <Number>0</Number>
+ <Type>0</Type>
+ <LineNumber>144</LineNumber>
+ <EnabledFlag>1</EnabledFlag>
+ <Address>134218958</Address>
+ <ByteObject>0</ByteObject>
+ <HtxType>0</HtxType>
+ <ManyObjects>0</ManyObjects>
+ <SizeOfObject>0</SizeOfObject>
+ <BreakByAccess>0</BreakByAccess>
+ <BreakIfRCount>1</BreakIfRCount>
+ <Filename>stm32f10x_it.c</Filename>
+ <ExecCommand></ExecCommand>
+ <Expression></Expression>
+ </Bp>
+ </Breakpoint>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM3210E-EVAL_XL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM3210E-EVAL_XL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>255</CpuCode>
+ <Books>
+ <Book>
+ <Number>0</Number>
+ <Title>Reference Manual</Title>
+ <Path>DATASHTS\ST\STM32F10xxx.PDF</Path>
+ </Book>
+ </Books>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DARMSTM.DLL</SimDlgDllName>
+ <SimDlgDllArguments>-pSTM32F103ZG</SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TARMSTM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments>-pSTM32F103ZG</TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-UM0015BJE -O142 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06416041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint>
+ <Bp>
+ <Number>0</Number>
+ <Type>0</Type>
+ <LineNumber>144</LineNumber>
+ <EnabledFlag>1</EnabledFlag>
+ <Address>134218958</Address>
+ <ByteObject>0</ByteObject>
+ <HtxType>0</HtxType>
+ <ManyObjects>0</ManyObjects>
+ <SizeOfObject>0</SizeOfObject>
+ <BreakByAccess>0</BreakByAccess>
+ <BreakIfRCount>1</BreakIfRCount>
+ <Filename>stm32f10x_it.c</Filename>
+ <ExecCommand></ExecCommand>
+ <Expression></Expression>
+ </Bp>
+ </Breakpoint>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM32L152-EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM32L152-EVAL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>255</CpuCode>
+ <Books>
+ <Book>
+ <Number>0</Number>
+ <Title>Datasheet</Title>
+ <Path>DATASHTS\ST\STM32L151xx_152xx_DS.PDF</Path>
+ </Book>
+ </Books>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DCM.DLL</SimDlgDllName>
+ <SimDlgDllArguments>-pCM3</SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TCM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-UM0015BJE -O142 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(4BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06416041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L15x_128 -FS08000000 -FL020000</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint>
+ <Bp>
+ <Number>0</Number>
+ <Type>0</Type>
+ <LineNumber>144</LineNumber>
+ <EnabledFlag>1</EnabledFlag>
+ <Address>134218958</Address>
+ <ByteObject>0</ByteObject>
+ <HtxType>0</HtxType>
+ <ManyObjects>0</ManyObjects>
+ <SizeOfObject>0</SizeOfObject>
+ <BreakByAccess>0</BreakByAccess>
+ <BreakIfRCount>1</BreakIfRCount>
+ <Filename>stm32f10x_it.c</Filename>
+ <ExecCommand></ExecCommand>
+ <Expression></Expression>
+ </Bp>
+ </Breakpoint>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM32L152D-EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM32L152D_EVAL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>255</CpuCode>
+ <Books>
+ <Book>
+ <Number>0</Number>
+ <Title>Datasheet</Title>
+ <Path>DATASHTS\ST\STM32L162xx_DS.PDF</Path>
+ </Book>
+ </Books>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments>-MPU</SimDllArguments>
+ <SimDlgDllName>DCM.DLL</SimDlgDllName>
+ <SimDlgDllArguments>-pCM3</SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments>-MPU</TargetDllArguments>
+ <TargetDlgDllName>TCM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-UV0579U9E -O2254 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L15x_128 -FS08000000 -FL020000</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint/>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM32373C_EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM32373C_EVAL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>0</CpuCode>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DARMSTM.DLL</SimDlgDllName>
+ <SimDlgDllArguments></SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TARMSTM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments></TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-O14 -S0 -C0 -N00("ARM Cortex-M4") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F3xx_256 -FS08000000 -FL040000)</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint/>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Target>
+ <TargetName>STM32303C_EVAL</TargetName>
+ <ToolsetNumber>0x4</ToolsetNumber>
+ <ToolsetName>ARM-ADS</ToolsetName>
+ <TargetOption>
+ <CLKADS>8000000</CLKADS>
+ <OPTTT>
+ <gFlags>1</gFlags>
+ <BeepAtEnd>0</BeepAtEnd>
+ <RunSim>1</RunSim>
+ <RunTarget>0</RunTarget>
+ </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>.\STM32303C_EVAL\</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>0</IsCurrentTarget>
+ </OPTFL>
+ <CpuCode>0</CpuCode>
+ <DllOpt>
+ <SimDllName>SARMCM3.DLL</SimDllName>
+ <SimDllArguments></SimDllArguments>
+ <SimDlgDllName>DARMSTM.DLL</SimDlgDllName>
+ <SimDlgDllArguments></SimDlgDllArguments>
+ <TargetDllName>SARMCM3.DLL</TargetDllName>
+ <TargetDllArguments></TargetDllArguments>
+ <TargetDlgDllName>TARMSTM.DLL</TargetDlgDllName>
+ <TargetDlgDllArguments></TargetDlgDllArguments>
+ </DllOpt>
+ <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>1</tLdApp>
+ <tGomain>1</tGomain>
+ <tRbreak>1</tRbreak>
+ <tRwatch>1</tRwatch>
+ <tRmem>1</tRmem>
+ <tRfunc>0</tRfunc>
+ <tRbox>1</tRbox>
+ <sRunDeb>0</sRunDeb>
+ <sLrtime>0</sLrtime>
+ <nTsel>1</nTsel>
+ <sDll></sDll>
+ <sDllPa></sDllPa>
+ <sDlgDll></sDlgDll>
+ <sDlgPa></sDlgPa>
+ <sIfile></sIfile>
+ <tDll></tDll>
+ <tDllPa></tDllPa>
+ <tDlgDll></tDlgDll>
+ <tDlgPa></tDlgPa>
+ <tIfile></tIfile>
+ <pMon>BIN\UL2CM3.DLL</pMon>
+ </DebugOpt>
+ <TargetDriverDllRegistry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGUARM</Key>
+ <Name>(105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>DLGTARM</Key>
+ <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)</Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>ARMDBGFLAGS</Key>
+ <Name></Name>
+ </SetRegEntry>
+ <SetRegEntry>
+ <Number>0</Number>
+ <Key>UL2CM3</Key>
+ <Name>-O14 -S0 -C0 -N00("ARM Cortex-M4") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F3xx_256 -FS08000000 -FL040000)</Name>
+ </SetRegEntry>
+ </TargetDriverDllRegistry>
+ <Breakpoint/>
+ <MemoryWindow1>
+ <Mm>
+ <WinNumber>1</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x20000000</ItemText>
+ </Mm>
+ </MemoryWindow1>
+ <MemoryWindow2>
+ <Mm>
+ <WinNumber>2</WinNumber>
+ <SubType>2</SubType>
+ <ItemText>0x8000000</ItemText>
+ </Mm>
+ </MemoryWindow2>
+ <DebugFlag>
+ <trace>0</trace>
+ <periodic>0</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>
+ </TargetOption>
+ </Target>
+
+ <Group>
+ <GroupName>User</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>1</GroupNumber>
+ <FileNumber>1</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c</PathWithFileName>
+ <FilenameWithoutPath>misc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>1</GroupNumber>
+ <FileNumber>2</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_misc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_misc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>1</GroupNumber>
+ <FileNumber>3</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\src\main.c</PathWithFileName>
+ <FilenameWithoutPath>main.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>1</GroupNumber>
+ <FileNumber>4</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\src\stm32_it.c</PathWithFileName>
+ <FilenameWithoutPath>stm32_it.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>CMSIS</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>5</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\src\system_stm32f10x.c</PathWithFileName>
+ <FilenameWithoutPath>system_stm32f10x.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>6</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\src\system_stm32l1xx.c</PathWithFileName>
+ <FilenameWithoutPath>system_stm32l1xx.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>7</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_hd.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_hd.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>8</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_ld.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_ld.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>9</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_ld_vl.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_ld_vl.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>10</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_md.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_md.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>11</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_md_vl.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_md_vl.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>12</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\arm\startup_stm32f10x_xl.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f10x_xl.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>13</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Source\Templates\arm\startup_stm32l1xx_hd.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32l1xx_hd.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>14</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Source\Templates\arm\startup_stm32l1xx_md.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32l1xx_md.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>15</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Source\Templates\arm\startup_stm32l1xx_mdp.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32l1xx_mdp.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>16</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F37x\Source\Templates\arm\startup_stm32f37x.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f37x.s</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>17</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\src\system_stm32f37x.c</PathWithFileName>
+ <FilenameWithoutPath>system_stm32f37x.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>18</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\src\system_stm32f30x.c</PathWithFileName>
+ <FilenameWithoutPath>system_stm32f30x.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>19</FileNumber>
+ <FileType>2</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\CMSIS\Device\ST\STM32F30x\Source\Templates\arm\startup_stm32f30x.s</PathWithFileName>
+ <FilenameWithoutPath>startup_stm32f30x.s</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32F10x_StdPeriph_Driver</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>20</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_usart.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>21</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_exti.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>22</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_gpio.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>23</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_rcc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>24</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_spi.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>25</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_i2c.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>26</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_sdio.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>3</GroupNumber>
+ <FileNumber>27</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f10x_dma.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32L1xx_StdPeriph_Driver</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>28</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_usart.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>29</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_flash.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_flash.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>30</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_gpio.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>31</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_rcc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>32</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_syscfg.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>33</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_spi.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>34</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_exti.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>35</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_i2c.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>36</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_dma.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>4</GroupNumber>
+ <FileNumber>37</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_sdio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l1xx_sdio.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32F37x_StdPeriph_Driver</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>38</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_adc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_adc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>39</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_dma.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_dma.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>40</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_exti.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_exti.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>41</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_flash.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_flash.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>42</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_gpio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_gpio.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>43</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_i2c.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_i2c.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>44</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_pwr.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_pwr.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>45</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_rcc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_rcc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>46</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_syscfg.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_syscfg.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>47</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_usart.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_usart.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>5</GroupNumber>
+ <FileNumber>48</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_spi.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f37x_spi.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32F30x_StdPeriph_Driver</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>49</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_adc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_adc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>50</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_can.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_can.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>51</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_crc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_crc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>52</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_dac.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_dac.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>53</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_dma.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_dma.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>54</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_exti.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_exti.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>55</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_flash.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_flash.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>56</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_gpio.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_gpio.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>57</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_i2c.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_i2c.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>58</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_misc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_misc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>59</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_pwr.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_pwr.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>60</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_rcc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_rcc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>61</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_rtc.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_rtc.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>62</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_spi.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_spi.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>63</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_syscfg.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_syscfg.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>64</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_tim.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_tim.c</FilenameWithoutPath>
+ </File>
+ <File>
+ <GroupNumber>6</GroupNumber>
+ <FileNumber>65</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_usart.c</PathWithFileName>
+ <FilenameWithoutPath>stm32f30x_usart.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM3210B-EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>7</GroupNumber>
+ <FileNumber>66</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM3210B_EVAL\stm3210b_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm3210b_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM3210E-EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>8</GroupNumber>
+ <FileNumber>67</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm3210e_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32L152-EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>9</GroupNumber>
+ <FileNumber>68</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM32L152_EVAL\stm32l152_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l152_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32L152D-EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>10</GroupNumber>
+ <FileNumber>69</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM32L152D_EVAL\stm32l152d_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm32l152d_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32373C_EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>11</GroupNumber>
+ <FileNumber>70</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM32373C_EVAL\stm32373c_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm32373c_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>STM32303C_EVAL</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>12</GroupNumber>
+ <FileNumber>71</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\Utilities\STM32_EVAL\STM32303C_EVAL\stm32303c_eval.c</PathWithFileName>
+ <FilenameWithoutPath>stm32303c_eval.c</FilenameWithoutPath>
+ </File>
+ </Group>
+
+ <Group>
+ <GroupName>Doc</GroupName>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <cbSel>0</cbSel>
+ <File>
+ <GroupNumber>13</GroupNumber>
+ <FileNumber>72</FileNumber>
+ <FileType>5</FileType>
+ <tvExp>0</tvExp>
+ <Focus>0</Focus>
+ <ColumnNumber>0</ColumnNumber>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <TopLine>0</TopLine>
+ <CurrentLine>0</CurrentLine>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\readme.txt</PathWithFileName>
+ <FilenameWithoutPath>readme.txt</FilenameWithoutPath>
+ </File>
+ </Group>
+
+</ProjectOpt>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/SysTick.rapp b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/SysTick.rapp
new file mode 100644
index 0000000..d36629d
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/SysTick.rapp
@@ -0,0 +1,1336 @@
+
+<ApplicationBuild Header="SysTick" Extern=".\SysTick.rapp" Path=".\SysTick.rapp" OutputFile=".\STM32F303C_EVAL\SysTick.elf" sate="98" Config="STM32F303C_EVAL" >
+ <Group Header="Doc" Marker="-1" OutputFile="" sate="0" >
+ <NodeText Path="..\readme.txt" Header="readme.txt" Marker="-1" OutputFile="" sate="0" />
+
+ </Group>
+ <Group Header="User" Marker="-1" OutputFile="" sate="96" >
+ <NodeC Path="..\src\main.c" Header="main.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\main.o" sate="0" />
+ <NodeC Path="..\src\stm32_it.c" Header="stm32_it.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32_it.o" sate="0" />
+
+ </Group>
+ <Configs>
+ <Config Header="STM3210E-EVAL" />
+ <Config Header="STM3210B-EVAL" />
+ <Config Header="STM3210E-EVAL_XL" />
+ <Config Header="STM32L152-EVAL" />
+ <Config Header="STM32L152D-EVAL" />
+ <Config Header="STM32373C_EVAL" />
+ <Config Header="STM32F303C_EVAL" />
+
+ </Configs>
+ <Group Header="STM32F10x" Marker="0" OutputFile="" sate="96" >
+ <Group Header="CMSIS" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\src\system_stm32f10x.c" Header="system_stm32f10x.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\system_stm32f10x.o" sate="0" >
+ <Options> </Options>
+
+ </NodeC>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_hd.s" Header="startup_stm32f10x_hd.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_hd.o" sate="0" >
+ <Options>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_hd_vl.s" Header="startup_stm32f10x_hd_vl.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_hd_vl.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_ld.s" Header="startup_stm32f10x_ld.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_ld.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_ld_vl.s" Header="startup_stm32f10x_ld_vl.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_ld_vl.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_md.s" Header="startup_stm32f10x_md.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_md.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_md_vl.s" Header="startup_stm32f10x_md_vl.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_md_vl.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Source\Templates\gcc_ride7\startup_stm32f10x_xl.s" Header="startup_stm32f10x_xl.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f10x_xl.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+
+ </Group>
+ <Group Header="STM32F10x_StdPeriph_Driver" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c" Header="stm32f10x_usart.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_usart.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c" Header="misc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\misc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c" Header="stm32f10x_dma.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_dma.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c" Header="stm32f10x_exti.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_exti.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c" Header="stm32f10x_flash.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_flash.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c" Header="stm32f10x_gpio.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_gpio.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c" Header="stm32f10x_i2c.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_i2c.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c" Header="stm32f10x_rcc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_rcc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c" Header="stm32f10x_sdio.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_sdio.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c" Header="stm32f10x_spi.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f10x_spi.o" sate="0" />
+ <Options>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM3210E-EVAL" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval.c" Header="stm3210e_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm3210e_eval.o" sate="0" />
+ <Options>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM3210B_EVAL" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM3210B_EVAL\stm3210b_eval.c" Header="stm3210b_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm3210b_eval.o" sate="0" />
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="No" Removable="1" />
+ <Property Header="LinkExclude" Value="No" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Options>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32373C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32F303C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM32L1xx" Marker="0" OutputFile="" sate="96" >
+ <Group Header="CMSIS" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\src\system_stm32l1xx.c" Header="system_stm32l1xx.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\system_stm32l1xx.o" sate="0" >
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="NodeC" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="NodeC" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="NodeC" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="NodeC" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeC>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Source\Templates\gcc_ride7\startup_stm32l1xx_md.s" Header="startup_stm32l1xx_md.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32l1xx_md.o" sate="0" >
+ <Options>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Source\Templates\gcc_ride7\startup_stm32l1xx_hd.s" Header="startup_stm32l1xx_hd.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32l1xx_hd.o" sate="0" >
+ <Options>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="NodeASM" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </NodeASM>
+
+ </Group>
+ <Group Header="STM32L1xx_StdPeriph_Driver" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c" Header="stm32l1xx_spi.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_spi.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c" Header="stm32l1xx_usart.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_usart.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\misc.c" Header="misc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\misc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c" Header="stm32l1xx_dma.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_dma.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c" Header="stm32l1xx_exti.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_exti.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_flash.c" Header="stm32l1xx_flash.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_flash.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c" Header="stm32l1xx_gpio.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_gpio.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c" Header="stm32l1xx_i2c.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_i2c.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c" Header="stm32l1xx_rcc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l1xx_rcc.o" sate="0" />
+ <Options>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="No" Removable="1" />
+ <Property Header="LinkExclude" Value="No" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM32L152_EVAL" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM32L152_EVAL\stm32l152_eval.c" Header="stm32l152_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l152_eval.o" sate="0" />
+ <Options>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM32L152D_EVAL" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM32L152D_EVAL\stm32l152d_eval.c" Header="stm32l152d_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32l152d_eval.o" sate="0" />
+ <Options>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Options>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210C-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+ <Property Header="LinkExclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32373C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32F303C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM32F37x" Marker="0" OutputFile="" sate="96" >
+ <Group Header="CMSIS" Marker="-1" OutputFile="" sate="96" >
+ <NodeC Path="..\src\system_stm32f37x.c" Header="system_stm32f37x.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\system_stm32f37x.o" sate="0" />
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F37x\Source\Templates\gcc_ride7\startup_stm32f37x.s" Header="startup_stm32f37x.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f37x.o" sate="0" />
+
+ </Group>
+ <Group Header="STM32373C_EVAL" Marker="-1" OutputFile="" sate="0" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM32373C_EVAL\stm32373c_eval.c" Header="stm32373c_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32373c_eval.o" sate="0" />
+
+ </Group>
+ <Group Header="STM32F37x_StdPeriph_Driver" Marker="-1" OutputFile="" sate="96" >
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_pwr.c" Header="stm32f37x_pwr.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_pwr.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_rcc.c" Header="stm32f37x_rcc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_rcc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_dma.c" Header="stm32f37x_dma.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_dma.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_exti.c" Header="stm32f37x_exti.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_exti.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_flash.c" Header="stm32f37x_flash.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_flash.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_gpio.c" Header="stm32f37x_gpio.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_gpio.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\src\stm32f37x_misc.c" Header="stm32f37x_misc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f37x_misc.o" sate="0" />
+
+ </Group>
+ <Options>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32F303C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Group Header="STM32F30X" Marker="-1" OutputFile="" sate="96" >
+ <Group Header="CMSIS" Marker="-1" OutputFile="" sate="96" >
+ <NodeASM Path="..\..\..\..\Libraries\CMSIS\Device\ST\STM32F30x\Source\Templates\gcc_ride7\startup_stm32f30x.s" Header="startup_stm32f30x.s" Marker="-1" OutputFile=".\STM32F303C_EVAL\startup_stm32f30x.o" sate="0" />
+ <NodeC Path="..\src\system_stm32f30x.c" Header="system_stm32f30x.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\system_stm32f30x.o" sate="0" />
+
+ </Group>
+ <Group Header="STM32F30x_StdPeriph_Driver" Marker="-1" OutputFile="" sate="96" >
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_misc.c" Header="stm32f30x_misc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_misc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_pwr.c" Header="stm32f30x_pwr.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_pwr.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_rcc.c" Header="stm32f30x_rcc.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_rcc.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_dma.c" Header="stm32f30x_dma.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_dma.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_exti.c" Header="stm32f30x_exti.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_exti.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_flash.c" Header="stm32f30x_flash.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_flash.o" sate="0" />
+ <NodeC Path="..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\src\stm32f30x_gpio.c" Header="stm32f30x_gpio.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32f30x_gpio.o" sate="0" />
+
+ </Group>
+ <Group Header="STM32303C_EVAL" Marker="-1" OutputFile="" sate="96" >
+ <NodeC Path="..\..\..\..\Utilities\STM32_EVAL\STM32303C_EVAL\stm32303c_eval.c" Header="stm32303c_eval.c" Marker="-1" OutputFile=".\STM32F303C_EVAL\stm32303c_eval.o" sate="0" />
+
+ </Group>
+ <Options>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32373C_EVAL" >
+ <Set Header="Group" >
+ <Section Header="Build" >
+ <Property Header="Exclude" Value="Yes" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+
+ </Options>
+
+ </Group>
+ <Options>
+ <Config Header="Standard" >
+ <Set Header="ApplicationBuild" >
+ <Section Header="General" >
+ <Property Header="TargetFamily" Value="ARM" />
+
+ </Section>
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\CM3\CoreSupport;..\..\..\..\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x;..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\Obj" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\Lst" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="Target" >
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32F103ZET6" />
+
+ </Section>
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\\GNU.config" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Scripts" >
+ <Property Header="SCRIPTFILES" Value="Yes" Removable="1" />
+ <Property Header="File" Value="stm32f10x_flash_offset.ld" Removable="1" />
+
+ </Section>
+ <Section Header="LIB" >
+ <Property Header="STLIB" Value="0" Removable="1" />
+ <Property Header="UART0PUTC" Value="0" Removable="1" />
+
+ </Section>
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="Yes" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STM3210E_EVAL; STM32F10X_HD; USE_STDPERIPH_DRIVER" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM3210E-EVAL" >
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STM3210E_EVAL; STM32F10X_HD; USE_STDPERIPH_DRIVER" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM3210E-EVAL" Removable="1" />
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Include;..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL\STM3210E_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM3210E-EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Scripts" >
+ <Property Header="File" Value="stm32f10x_hd_flash_offset.ld" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+
+ </Section>
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="Target" >
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+
+ </Set>
+ </Config>
+ <Config Header="STM3210B-EVAL" >
+ <Set Header="Target" >
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32F103VBT6" />
+
+ </Section>
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STM3210B_EVAL; STM32F10X_MD; USE_STDPERIPH_DRIVER" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM3210B-EVAL" Removable="1" />
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Include;..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL\STM3210B_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM3210B-EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Scripts" >
+ <Property Header="File" Value="stm32f10x_md_flash_offset.ld" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+
+ </Section>
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+
+ </Set>
+ </Config>
+ <Config Header="STM3210E-EVAL_XL" >
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\CMSIS\Device\ST\STM32F10x\Include;..\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL\STM3210E_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM3210E-EVAL_XL" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM3210E-EVAL_XL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STM3210E_EVAL;STM32F10X_HD;USE_STDPERIPH_DRIVER" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Scripts" >
+ <Property Header="File" Value="stm32f10x_xl_flash_offset.ld" Removable="1" />
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+
+ </Section>
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="Target" >
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32F103ZGT6" />
+
+ </Section>
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+
+ </Set>
+ </Config>
+ <Config Header="STM32L152-EVAL" >
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Include;..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL\STM32L152_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM32L152-EVAL" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM32L152-EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="Target" >
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32L152VBT6" />
+
+ </Section>
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STDPERIPH_DRIVER; STM32L1XX_MD; USE_STM32L152_EVAL" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+ <Section Header="Scripts" >
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+ <Property Header="File" Value="$(ApplicationDir)\stm32l1xx_md_flash_offset.ld" Removable="1" />
+
+ </Section>
+
+ </Set>
+ </Config>
+ <Config Header="STM32L152D-EVAL" >
+ <Set Header="Target" >
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32L152ZD" />
+
+ </Section>
+
+ </Set>
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Include;..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL\STM32L152D_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM32L152D_EVAL" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM32L152D_EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STDPERIPH_DRIVER; STM32L1XX_HD; USE_STM32L152D_EVAL" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+ <Section Header="Scripts" >
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+ <Property Header="File" Value="stm32l1xx_hd_flash_offset.ld" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32373C_EVAL" >
+ <Set Header="Target" >
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32F373xC" />
+
+ </Section>
+
+ </Set>
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Libraries\STM32F37x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL;..\..\..\..\Utilities\STM32_EVAL\STM32373C_EVAL;..\..\..\..\Libraries\CMSIS\Device\ST\STM32F37x\Include;..\..\..\..\Utilities\STM32_EVAL\Common" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM32F373C_EVAL" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM32F373C_EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STDPERIPH_DRIVER;STM32F37X;USE_STM32373C_EVAL" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+ <Section Header="Scripts" >
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+ <Property Header="File" Value="stm32f37x_flash_offset.ld" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32F37C_EVAL" >
+ <Set Header="Target" >
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Scripts" >
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ <Config Header="STM32F303C_EVAL" >
+ <Set Header="Target" >
+ <Section Header="ToolSetARM" >
+ <Property Header="BuildToolSetARM" Value="ARM\GNU.config" />
+
+ </Section>
+ <Section Header="ProcessorARM" >
+ <Property Header="Processor" Value="STM32F303xC" />
+
+ </Section>
+
+ </Set>
+ <Set Header="ApplicationBuild" >
+ <Section Header="Directories" >
+ <Property Header="IncDir" Value="..\inc;..\..\..\..\Libraries\CMSIS\Device\ST\STM32F30x\Include;..\..\..\..\Libraries\STM32F30x_StdPeriph_Driver\inc;..\..\..\..\Utilities\STM32_EVAL;..\..\..\..\Utilities\STM32_EVAL\Common;..\..\..\..\Libraries\CMSIS\Include;..\..\..\..\Utilities\STM32_EVAL\STM32303C_EVAL" Removable="1" />
+ <Property Header="OutDir" Value="$(ApplicationDir)\STM32F303C_EVAL" Removable="1" />
+ <Property Header="ListDir" Value="$(ApplicationDir)\STM32F303_EVAL" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="GCC" >
+ <Section Header="Defines" >
+ <Property Header="Defines" Value="USE_STDPERIPH_DRIVER;STM32F30X;USE_STM32303C_EVAL" Removable="1" />
+
+ </Section>
+ <Section Header="OPTIMIZE" >
+ <Property Header="Optimize" Value="-Os" Removable="1" />
+
+ </Section>
+
+ </Set>
+ <Set Header="LD" >
+ <Section Header="Startup" >
+ <Property Header="DEFAULTSTARTUP" Value="No" Removable="1" />
+ <Property Header="File" Value="" Removable="1" />
+
+ </Section>
+ <Section Header="Scripts" >
+ <Property Header="StarterKitLimit" Value="No" Removable="1" />
+ <Property Header="SCRIPTFILES" Value="No" Removable="1" />
+ <Property Header="File" Value="stm32f30x_flash_offset.ld" Removable="1" />
+
+ </Section>
+
+ </Set>
+
+ </Config>
+ </Options>
+</ApplicationBuild> \ No newline at end of file
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f10x_hd_flash_offset.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f10x_hd_flash_offset.ld
new file mode 100644
index 0000000..6d98d85
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f10x_hd_flash_offset.ld
@@ -0,0 +1,242 @@
+/*
+Default linker script for STM32F10x_512K_64K
+Copyright RAISONANCE S.A.S. 2008
+*/
+
+/* include the common STM32F10x sub-script */
+
+/* Common part of the linker scripts for STM32 devices*/
+
+
+/* default stack sizes.
+
+These are used by the startup in order to allocate stacks for the different modes.
+*/
+
+__Stack_Size = 1024 ;
+
+PROVIDE ( _Stack_Size = __Stack_Size ) ;
+
+__Stack_Init = _estack - __Stack_Size ;
+
+/*"PROVIDE" allows to easily override these values from an object file or the commmand line.*/
+PROVIDE ( _Stack_Init = __Stack_Init ) ;
+
+/*
+There will be a link error if there is not this amount of RAM free at the end.
+*/
+_Minimum_Stack_Size = 0x100 ;
+
+
+/* include the memory spaces definitions sub-script */
+/*
+Linker subscript for STM32F10x definitions with 512K Flash and 64K RAM */
+
+/* Memory Spaces Definitions */
+
+MEMORY
+{
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K
+ FLASH (rx) : ORIGIN = 0x8003000, LENGTH = 512K-0x3000
+ FLASHB1 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB0 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB1 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB2 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB3 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+}
+
+/* higher address of the user mode stack */
+_estack = 0x20010000;
+
+
+
+/* include the sections management sub-script for FLASH mode */
+
+/* Sections Definitions */
+
+SECTIONS
+{
+ /* for Cortex devices, the beginning of the startup code is stored in the .isr_vector section, which goes to FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+
+ .flashtext :
+ {
+ . = ALIGN(4);
+ *(.flashtext) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+
+ /* the program code is stored in the .text section, which goes to Flash */
+ .text :
+ {
+ . = ALIGN(4);
+
+ *(.text) /* remaining code */
+ *(.text.*) /* remaining code */
+ *(.rodata) /* read-only data (constants) */
+ *(.rodata*)
+ *(.glue_7)
+ *(.glue_7t)
+
+ . = ALIGN(4);
+ _etext = .;
+ /* This is used by the startup in order to initialize the .data secion */
+ _sidata = _etext;
+ } >FLASH
+
+
+
+ /* This is the initialized data section
+ The program executes knowing that the data is in the RAM
+ but the loader puts the initial values in the FLASH (inidata).
+ It is one task of the startup to copy the initial values from FLASH to RAM. */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .data secion */
+ _sdata = . ;
+
+ *(.data)
+ *(.data.*)
+
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .data secion */
+ _edata = . ;
+ } >RAM
+
+
+
+ /* This is the uninitialized data section */
+ .bss :
+ {
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .;
+
+ *(.bss)
+ *(COMMON)
+
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .bss secion */
+ _ebss = . ;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* This is the user stack section
+ This is just to check that there is enough RAM left for the User mode stack
+ It should generate an error if it's full.
+ */
+ ._usrstack :
+ {
+ . = ALIGN(4);
+ _susrstack = . ;
+
+ . = . + _Minimum_Stack_Size ;
+
+ . = ALIGN(4);
+ _eusrstack = . ;
+ } >RAM
+
+
+
+ /* this is the FLASH Bank1 */
+ /* the C or assembly source must explicitly place the code or data there
+ using the "section" attribute */
+ .b1text :
+ {
+ *(.b1text) /* remaining code */
+ *(.b1rodata) /* read-only data (constants) */
+ *(.b1rodata*)
+ } >FLASHB1
+
+ /* this is the EXTMEM */
+ /* the C or assembly source must explicitly place the code or data there
+ using the "section" attribute */
+
+ /* EXTMEM Bank0 */
+ .eb0text :
+ {
+ *(.eb0text) /* remaining code */
+ *(.eb0rodata) /* read-only data (constants) */
+ *(.eb0rodata*)
+ } >EXTMEMB0
+
+ /* EXTMEM Bank1 */
+ .eb1text :
+ {
+ *(.eb1text) /* remaining code */
+ *(.eb1rodata) /* read-only data (constants) */
+ *(.eb1rodata*)
+ } >EXTMEMB1
+
+ /* EXTMEM Bank2 */
+ .eb2text :
+ {
+ *(.eb2text) /* remaining code */
+ *(.eb2rodata) /* read-only data (constants) */
+ *(.eb2rodata*)
+ } >EXTMEMB2
+
+ /* EXTMEM Bank0 */
+ .eb3text :
+ {
+ *(.eb3text) /* remaining code */
+ *(.eb3rodata) /* read-only data (constants) */
+ *(.eb3rodata*)
+ } >EXTMEMB3
+
+
+
+ /* after that it's only debugging information. */
+
+ /* remove the debugging information from the standard libraries */
+ DISCARD :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+
+ /* 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) }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f30x_flash_offset.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f30x_flash_offset.ld
new file mode 100644
index 0000000..5bfdec7
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32f30x_flash_offset.ld
@@ -0,0 +1,242 @@
+/*
+Default linker script for STM32F37x_256K_32K
+Copyright RAISONANCE S.A.S. 2008
+*/
+
+/* include the common STM32F30x sub-script */
+
+/* Common part of the linker scripts for STM32 devices*/
+
+
+/* default stack sizes.
+
+These are used by the startup in order to allocate stacks for the different modes.
+*/
+
+__Stack_Size = 1024 ;
+
+PROVIDE ( _Stack_Size = __Stack_Size ) ;
+
+__Stack_Init = _estack - __Stack_Size ;
+
+/*"PROVIDE" allows to easily override these values from an object file or the commmand line.*/
+PROVIDE ( _Stack_Init = __Stack_Init ) ;
+
+/*
+There will be a link error if there is not this amount of RAM free at the end.
+*/
+_Minimum_Stack_Size = 0x100 ;
+
+
+/* include the memory spaces definitions sub-script */
+/*
+Linker subscript for STM32F30x definitions with 256K Flash and 32K RAM */
+
+/* Memory Spaces Definitions */
+
+MEMORY
+{
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 32K
+ FLASH (rx) : ORIGIN = 0x8003000, LENGTH = 256K-0x3000
+ FLASHB1 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB0 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB1 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB2 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+ EXTMEMB3 (rx) : ORIGIN = 0x00000000, LENGTH = 0
+}
+
+/* higher address of the user mode stack */
+_estack = 0x20008000;
+
+
+
+/* include the sections management sub-script for FLASH mode */
+
+/* Sections Definitions */
+
+SECTIONS
+{
+ /* for Cortex devices, the beginning of the startup code is stored in the .isr_vector section, which goes to FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+
+ .flashtext :
+ {
+ . = ALIGN(4);
+ *(.flashtext) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+
+ /* the program code is stored in the .text section, which goes to Flash */
+ .text :
+ {
+ . = ALIGN(4);
+
+ *(.text) /* remaining code */
+ *(.text.*) /* remaining code */
+ *(.rodata) /* read-only data (constants) */
+ *(.rodata*)
+ *(.glue_7)
+ *(.glue_7t)
+
+ . = ALIGN(4);
+ _etext = .;
+ /* This is used by the startup in order to initialize the .data secion */
+ _sidata = _etext;
+ } >FLASH
+
+
+
+ /* This is the initialized data section
+ The program executes knowing that the data is in the RAM
+ but the loader puts the initial values in the FLASH (inidata).
+ It is one task of the startup to copy the initial values from FLASH to RAM. */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .data secion */
+ _sdata = . ;
+
+ *(.data)
+ *(.data.*)
+
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .data secion */
+ _edata = . ;
+ } >RAM
+
+
+
+ /* This is the uninitialized data section */
+ .bss :
+ {
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .;
+
+ *(.bss)
+ *(COMMON)
+
+ . = ALIGN(4);
+ /* This is used by the startup in order to initialize the .bss secion */
+ _ebss = . ;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* This is the user stack section
+ This is just to check that there is enough RAM left for the User mode stack
+ It should generate an error if it's full.
+ */
+ ._usrstack :
+ {
+ . = ALIGN(4);
+ _susrstack = . ;
+
+ . = . + _Minimum_Stack_Size ;
+
+ . = ALIGN(4);
+ _eusrstack = . ;
+ } >RAM
+
+
+
+ /* this is the FLASH Bank1 */
+ /* the C or assembly source must explicitly place the code or data there
+ using the "section" attribute */
+ .b1text :
+ {
+ *(.b1text) /* remaining code */
+ *(.b1rodata) /* read-only data (constants) */
+ *(.b1rodata*)
+ } >FLASHB1
+
+ /* this is the EXTMEM */
+ /* the C or assembly source must explicitly place the code or data there
+ using the "section" attribute */
+
+ /* EXTMEM Bank0 */
+ .eb0text :
+ {
+ *(.eb0text) /* remaining code */
+ *(.eb0rodata) /* read-only data (constants) */
+ *(.eb0rodata*)
+ } >EXTMEMB0
+
+ /* EXTMEM Bank1 */
+ .eb1text :
+ {
+ *(.eb1text) /* remaining code */
+ *(.eb1rodata) /* read-only data (constants) */
+ *(.eb1rodata*)
+ } >EXTMEMB1
+
+ /* EXTMEM Bank2 */
+ .eb2text :
+ {
+ *(.eb2text) /* remaining code */
+ *(.eb2rodata) /* read-only data (constants) */
+ *(.eb2rodata*)
+ } >EXTMEMB2
+
+ /* EXTMEM Bank0 */
+ .eb3text :
+ {
+ *(.eb3text) /* remaining code */
+ *(.eb3rodata) /* read-only data (constants) */
+ *(.eb3rodata*)
+ } >EXTMEMB3
+
+
+
+ /* after that it's only debugging information. */
+
+ /* remove the debugging information from the standard libraries */
+ DISCARD :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+
+ /* 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) }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_hd_flash_offset.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_hd_flash_offset.ld
new file mode 100644
index 0000000..664b998
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_hd_flash_offset.ld
@@ -0,0 +1,171 @@
+/*
+*****************************************************************************
+**
+** File : stm32_flash.ld
+**
+** Abstract : Linker script for stm32l1xx_hd Device with
+** 384KByte FLASH, 48KByte RAM
+**
+** Set heap size, stack size and stack location according
+** to application requirements.
+**
+** Set memory bank area and size if external memory is used.
+**
+** Target : STMicroelectronics STM32
+**
+** Environment : Atollic TrueSTUDIO(R)
+**
+** Distribution: The file is distributed “as is,” without any warranty
+** of any kind.
+**
+** (c)Copyright Atollic AB.
+** You may use this file as-is or modify it according to the needs of your
+** project. Distribution of this file (unmodified or modified) is not
+** permitted. Atollic AB permit registered Atollic TrueSTUDIO(R) users the
+** rights to distribute the assembled, compiled & linked contents of this
+** file as part of an application binary file, provided that it is built
+** using the Atollic TrueSTUDIO(R) toolchain.
+**
+*****************************************************************************
+*/
+
+/* Entry Point */
+ENTRY(Reset_Handler)
+
+/* Highest address of the user mode stack */
+_estack = 0x2000C000; /* end of 16K RAM */
+
+/* Generate a link error if heap and stack don't fit into RAM */
+_Min_Heap_Size = 0; /* required amount of heap */
+_Min_Stack_Size = 0x80; /* required amount of stack */
+
+/* Specify the memory areas */
+MEMORY
+{
+ FLASH (rx) : ORIGIN = 0x08003000, LENGTH = 384K - 0x3000
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 48K
+ MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
+}
+
+/* Define output sections */
+SECTIONS
+{
+ /* The startup code goes first into FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+ /* The program code and other data goes into FLASH */
+ .text :
+ {
+ . = ALIGN(4);
+ *(.text) /* .text sections (code) */
+ *(.text*) /* .text* sections (code) */
+ *(.rodata) /* .rodata sections (constants, strings, etc.) */
+ *(.rodata*) /* .rodata* sections (constants, strings, etc.) */
+ *(.glue_7) /* glue arm to thumb code */
+ *(.glue_7t) /* glue thumb to arm code */
+ *(.eh_frame)
+
+ KEEP (*(.init))
+ KEEP (*(.fini))
+
+ . = ALIGN(4);
+ _etext = .; /* define a global symbols at end of code */
+ } >FLASH
+
+
+ .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
+ .ARM : {
+ __exidx_start = .;
+ *(.ARM.exidx*)
+ __exidx_end = .;
+ } >FLASH
+
+ .preinit_array :
+ {
+ PROVIDE_HIDDEN (__preinit_array_start = .);
+ KEEP (*(.preinit_array*))
+ PROVIDE_HIDDEN (__preinit_array_end = .);
+ } >FLASH
+ .init_array :
+ {
+ PROVIDE_HIDDEN (__init_array_start = .);
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array*))
+ PROVIDE_HIDDEN (__init_array_end = .);
+ } >FLASH
+ .fini_array :
+ {
+ PROVIDE_HIDDEN (__fini_array_start = .);
+ KEEP (*(.fini_array*))
+ KEEP (*(SORT(.fini_array.*)))
+ PROVIDE_HIDDEN (__fini_array_end = .);
+ } >FLASH
+
+ /* used by the startup to initialize data */
+ _sidata = .;
+
+ /* Initialized data sections goes into RAM, load LMA copy after code */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ _sdata = .; /* create a global symbol at data start */
+ *(.data) /* .data sections */
+ *(.data*) /* .data* sections */
+
+ . = ALIGN(4);
+ _edata = .; /* define a global symbol at data end */
+ } >RAM
+
+ /* Uninitialized data section */
+ . = ALIGN(4);
+ .bss :
+ {
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .; /* define a global symbol at bss start */
+ __bss_start__ = _sbss;
+ *(.bss)
+ *(.bss*)
+ *(COMMON)
+
+ . = ALIGN(4);
+ _ebss = .; /* define a global symbol at bss end */
+ __bss_end__ = _ebss;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* User_heap_stack section, used to check that there is enough RAM left */
+ ._user_heap_stack :
+ {
+ . = ALIGN(4);
+ . = . + _Min_Heap_Size;
+ . = . + _Min_Stack_Size;
+ . = ALIGN(4);
+ } >RAM
+
+ /* MEMORY_bank1 section, code must be located here explicitly */
+ /* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
+ .memory_b1_text :
+ {
+ *(.mb1text) /* .mb1text sections (code) */
+ *(.mb1text*) /* .mb1text* sections (code) */
+ *(.mb1rodata) /* read-only data (constants) */
+ *(.mb1rodata*)
+ } >MEMORY_B1
+
+ /* Remove information from the standard libraries */
+ /DISCARD/ :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+
+ .ARM.attributes 0 : { *(.ARM.attributes) }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_md_flash_offset.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_md_flash_offset.ld
new file mode 100644
index 0000000..865fc02
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/RIDE/stm32l1xx_md_flash_offset.ld
@@ -0,0 +1,171 @@
+/*
+*****************************************************************************
+**
+** File : stm32_flash.ld
+**
+** Abstract : Linker script for stm32l1xx_md Device with
+** 128KByte FLASH, 16KByte RAM
+**
+** Set heap size, stack size and stack location according
+** to application requirements.
+**
+** Set memory bank area and size if external memory is used.
+**
+** Target : STMicroelectronics STM32
+**
+** Environment : Atollic TrueSTUDIO(R)
+**
+** Distribution: The file is distributed “as is,” without any warranty
+** of any kind.
+**
+** (c)Copyright Atollic AB.
+** You may use this file as-is or modify it according to the needs of your
+** project. Distribution of this file (unmodified or modified) is not
+** permitted. Atollic AB permit registered Atollic TrueSTUDIO(R) users the
+** rights to distribute the assembled, compiled & linked contents of this
+** file as part of an application binary file, provided that it is built
+** using the Atollic TrueSTUDIO(R) toolchain.
+**
+*****************************************************************************
+*/
+
+/* Entry Point */
+ENTRY(Reset_Handler)
+
+/* Highest address of the user mode stack */
+_estack = 0x20004000; /* end of 16K RAM */
+
+/* Generate a link error if heap and stack don't fit into RAM */
+_Min_Heap_Size = 0; /* required amount of heap */
+_Min_Stack_Size = 0x80; /* required amount of stack */
+
+/* Specify the memory areas */
+MEMORY
+{
+ FLASH (rx) : ORIGIN = 0x08003000, LENGTH = 128K - 0x3000
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 16K
+ MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
+}
+
+/* Define output sections */
+SECTIONS
+{
+ /* The startup code goes first into FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+ /* The program code and other data goes into FLASH */
+ .text :
+ {
+ . = ALIGN(4);
+ *(.text) /* .text sections (code) */
+ *(.text*) /* .text* sections (code) */
+ *(.rodata) /* .rodata sections (constants, strings, etc.) */
+ *(.rodata*) /* .rodata* sections (constants, strings, etc.) */
+ *(.glue_7) /* glue arm to thumb code */
+ *(.glue_7t) /* glue thumb to arm code */
+ *(.eh_frame)
+
+ KEEP (*(.init))
+ KEEP (*(.fini))
+
+ . = ALIGN(4);
+ _etext = .; /* define a global symbols at end of code */
+ } >FLASH
+
+
+ .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
+ .ARM : {
+ __exidx_start = .;
+ *(.ARM.exidx*)
+ __exidx_end = .;
+ } >FLASH
+
+ .preinit_array :
+ {
+ PROVIDE_HIDDEN (__preinit_array_start = .);
+ KEEP (*(.preinit_array*))
+ PROVIDE_HIDDEN (__preinit_array_end = .);
+ } >FLASH
+ .init_array :
+ {
+ PROVIDE_HIDDEN (__init_array_start = .);
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array*))
+ PROVIDE_HIDDEN (__init_array_end = .);
+ } >FLASH
+ .fini_array :
+ {
+ PROVIDE_HIDDEN (__fini_array_start = .);
+ KEEP (*(.fini_array*))
+ KEEP (*(SORT(.fini_array.*)))
+ PROVIDE_HIDDEN (__fini_array_end = .);
+ } >FLASH
+
+ /* used by the startup to initialize data */
+ _sidata = .;
+
+ /* Initialized data sections goes into RAM, load LMA copy after code */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ _sdata = .; /* create a global symbol at data start */
+ *(.data) /* .data sections */
+ *(.data*) /* .data* sections */
+
+ . = ALIGN(4);
+ _edata = .; /* define a global symbol at data end */
+ } >RAM
+
+ /* Uninitialized data section */
+ . = ALIGN(4);
+ .bss :
+ {
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .; /* define a global symbol at bss start */
+ __bss_start__ = _sbss;
+ *(.bss)
+ *(.bss*)
+ *(COMMON)
+
+ . = ALIGN(4);
+ _ebss = .; /* define a global symbol at bss end */
+ __bss_end__ = _ebss;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* User_heap_stack section, used to check that there is enough RAM left */
+ ._user_heap_stack :
+ {
+ . = ALIGN(4);
+ . = . + _Min_Heap_Size;
+ . = . + _Min_Stack_Size;
+ . = ALIGN(4);
+ } >RAM
+
+ /* MEMORY_bank1 section, code must be located here explicitly */
+ /* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
+ .memory_b1_text :
+ {
+ *(.mb1text) /* .mb1text sections (code) */
+ *(.mb1text*) /* .mb1text* sections (code) */
+ *(.mb1rodata) /* read-only data (constants) */
+ *(.mb1rodata*)
+ } >MEMORY_B1
+
+ /* Remove information from the standard libraries */
+ /DISCARD/ :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+
+ .ARM.attributes 0 : { *(.ARM.attributes) }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL/.project b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL/.project
new file mode 100644
index 0000000..9d12c27
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL/.project
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>STM3210E-EVAL</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.tasking.arm.TskManagedBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ <nature>com.tasking.arm.target</nature>
+ </natures>
+ <linkedResources>
+ <link>
+ <name>CMSIS</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>Doc</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>User</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>CMSIS/system_stm32f10x.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/system_stm32f10x.c</locationURI>
+ </link>
+ <link>
+ <name>Doc/readme.txt</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/readme.txt</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL/stm3210e_eval.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Utilities/STM32_EVAL/STM3210E_EVAL/stm3210e_eval.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/misc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/misc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_adc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_adc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_dma.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_dma.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_exti.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_exti.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_flash.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_fsmc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_fsmc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_gpio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_i2c.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_rcc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_sdio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_spi.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_tim.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_usart.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c</locationURI>
+ </link>
+ <link>
+ <name>User/main.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/main.c</locationURI>
+ </link>
+ <link>
+ <name>User/stm32_it.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/stm32_it.c</locationURI>
+ </link>
+ </linkedResources>
+</projectDescription>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/.project b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/.project
new file mode 100644
index 0000000..3e37ba5
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/.project
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>STM3210E-EVAL_XL</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.tasking.arm.TskManagedBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ <nature>com.tasking.arm.target</nature>
+ </natures>
+ <linkedResources>
+ <link>
+ <name>CMSIS</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>Doc</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>User</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>CMSIS/system_stm32f10x.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/system_stm32f10x.c</locationURI>
+ </link>
+ <link>
+ <name>Doc/readme.txt</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/readme.txt</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL/stm3210e_eval.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Utilities/STM32_EVAL/STM3210E_EVAL/stm3210e_eval.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/misc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/misc.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_adc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_adc.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_dma.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_dma.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_exti.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_exti.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_flash.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_flash.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_fsmc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_fsmc.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_gpio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_i2c.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_i2c.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_rcc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_sdio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_spi.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_tim.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c</locationURI>
+ </link>
+ <link>
+ <name>STM3210x_StdPeriph_Driver/stm32f10x_usart.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c</locationURI>
+ </link>
+ <link>
+ <name>User/main.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/main.c</locationURI>
+ </link>
+ <link>
+ <name>User/stm32_it.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/stm32_it.c</locationURI>
+ </link>
+ </linkedResources>
+</projectDescription>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/TASKING/STM32F10x_XL.lsl b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/TASKING/STM32F10x_XL.lsl
new file mode 100644
index 0000000..e6e5969
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM3210E-EVAL_XL/TASKING/STM32F10x_XL.lsl
@@ -0,0 +1,165 @@
+////////////////////////////////////////////////////////////////////////////
+//
+// File : stm32f103_cmsis.lsl
+//
+// Version : @(#)stm32f103_cmsis.lsl 1.2 09/06/04
+//
+// Description : LSL file for the STMicroelectronics STM32F103, CMSIS version
+//
+// Copyright 2009 Altium BV
+//
+// NOTE:
+// This file is derived from cm3.lsl and stm32f103.lsl.
+// It is assumed that the user works with the ARMv7M architecture.
+// Other architectures will not work with this lsl file.
+//
+////////////////////////////////////////////////////////////////////////////
+
+//
+// We do not want the vectors as defined in arm_arch.lsl
+//
+#define __NO_DEFAULT_AUTO_VECTORS 1
+#define __NR_OF_VECTORS 76
+
+
+#ifndef __STACK
+# define __STACK 8k
+#endif
+#ifndef __HEAP
+# define __HEAP 2k
+#endif
+#ifndef __VECTOR_TABLE_ROM_ADDR
+# define __VECTOR_TABLE_ROM_ADDR 0x08003000
+#endif
+#ifndef __XVWBUF
+#define __XVWBUF 256 /* buffer used by CrossView */
+#endif
+
+#include <arm_arch.lsl>
+
+////////////////////////////////////////////////////////////////////////////
+//
+// In the STM32F10x, 3 different boot modes can be selected
+// - User Flash memory is selected as boot space
+// - SystemMemory is selected as boot space
+// - Embedded SRAM is selected as boot space
+//
+// This aliases the physical memory associated with each boot mode to Block
+// 000 (0x00000000 boot memory). Even when aliased in the boot memory space,
+// the related memory (Flash memory or SRAM) is still accessible at its
+// original memory space.
+//
+// If no memory is defined yet use the following memory settings
+//
+#ifndef __MEMORY
+
+memory stm32f103flash
+{
+ mau = 8;
+ type = rom;
+ size = 0x100000;
+ map ( size = 0x100000, dest_offset=0x08003000, dest=bus:ARM:local_bus);
+}
+
+memory stm32f103ram
+{
+ mau = 8;
+ type = ram;
+ size = 96k;
+ map ( size = 96k, dest_offset=0x20000000, dest=bus:ARM:local_bus);
+}
+
+#endif /* __MEMORY */
+
+
+//
+// Custom vector table defines interrupts according to CMSIS standard
+//
+# if defined(__CPU_ARMV7M__)
+section_setup ::linear
+{
+ // vector table with handler addresses
+ vector_table "vector_table" ( vector_size = 4, size = __NR_OF_VECTORS, run_addr = __VECTOR_TABLE_ROM_ADDR,
+ template = ".text.handler_address",
+ template_symbol = "_lc_vector_handler",
+ vector_prefix = "_vector_",
+ fill = loop,
+ no_inline
+ )
+ {
+ vector ( id = 0, fill = "_lc_ub_stack" ); // Top of Stack
+ vector ( id = 1, fill = "Reset_Handler" ); /* Reset Handler */
+ vector ( id = 2, optional, fill = "NMI_Handler" );
+ vector ( id = 3, optional, fill = "HardFault_Handler" );
+ vector ( id = 4, optional, fill = "MemManage_Handler" );
+ vector ( id = 5, optional, fill = "BusFault_Handler" );
+ vector ( id = 6, optional, fill = "UsageFault_Handler" );
+ vector ( id = 11, optional, fill = "SVC_Handler" );
+ vector ( id = 12, optional, fill = "DebugMon_Handler" );
+ vector ( id = 14, optional, fill = "PendSV_Handler" );
+ vector ( id = 15, optional, fill = "SysTick_Handler" );
+
+ // External Interrupts :
+ vector ( id = 16, optional, fill = "WWDG_IRQHandler" ); // Window Watchdog
+ vector ( id = 17, optional, fill = "PVD_IRQHandler" ); // PVD through EXTI Line detect
+ vector ( id = 18, optional, fill = "TAMPER_IRQHandler" ); // Tamper
+ vector ( id = 19, optional, fill = "RTC_IRQHandler" ); // RTC
+ vector ( id = 20, optional, fill = "FLASH_IRQHandler" ); // Flash
+ vector ( id = 21, optional, fill = "RCC_IRQHandler" ); // RCC
+ vector ( id = 22, optional, fill = "EXTI0_IRQHandler" ); // EXTI Line 0
+ vector ( id = 23, optional, fill = "EXTI1_IRQHandler" ); // EXTI Line 1
+ vector ( id = 24, optional, fill = "EXTI2_IRQHandler" ); // EXTI Line 2
+ vector ( id = 25, optional, fill = "EXTI3_IRQHandler" ); // EXTI Line 3
+ vector ( id = 26, optional, fill = "EXTI4_IRQHandler" ); // EXTI Line 4
+ vector ( id = 27, optional, fill = "DMA1_Channel1_IRQHandler" ); // DMA Channel 1
+ vector ( id = 28, optional, fill = "DMA1_Channel2_IRQHandler" ); // DMA Channel 2
+ vector ( id = 29, optional, fill = "DMA1_Channel3_IRQHandler" ); // DMA Channel 3
+ vector ( id = 30, optional, fill = "DMA1_Channel4_IRQHandler" ); // DMA Channel 4
+ vector ( id = 31, optional, fill = "DMA1_Channel5_IRQHandler" ); // DMA Channel 5
+ vector ( id = 32, optional, fill = "DMA1_Channel6_IRQHandler" ); // DMA Channel 6
+ vector ( id = 33, optional, fill = "DMA1_Channel7_IRQHandler" ); // DMA Channel 7
+ vector ( id = 34, optional, fill = "ADC1_2_IRQHandler" ); // ADC1 and ADC2
+ vector ( id = 35, optional, fill = "USB_HP_CAN1_TX_IRQHandler" ); // USB High Priority or CAN1 TX
+ vector ( id = 36, optional, fill = "USB_LP_CAN1_RX0_IRQHandler" ); // USB LowPriority or CAN1 RX0
+ vector ( id = 37, optional, fill = "CAN1_RX1_IRQHandler" ); // CAN1 RX1
+ vector ( id = 38, optional, fill = "CAN1_SCE_IRQHandler" ); // CAN1 SCE
+ vector ( id = 39, optional, fill = "EXTI9_5_IRQHandler" ); // EXTI Line 9..5
+ vector ( id = 40, optional, fill = "TIM1_BRK_TIM9_IRQHandler" ); // TIM1 Break
+ vector ( id = 41, optional, fill = "TIM1_UP_TIM10_IRQHandler" ); // TIM1 Update
+ vector ( id = 42, optional, fill = "TIM1_TRG_COM_TIM11_IRQHandler" ); // TIM1 Trigger and Commutation
+ vector ( id = 43, optional, fill = "TIM1_CC_IRQHandler" ); // TIM1 Capture Compare
+ vector ( id = 44, optional, fill = "TIM2_IRQHandler" ); // TIM2
+ vector ( id = 45, optional, fill = "TIM3_IRQHandler" ); // TIM3
+ vector ( id = 46, optional, fill = "TIM4_IRQHandler" ); // TIM4
+ vector ( id = 47, optional, fill = "I2C1_EV_IRQHandler" ); // I2C1 Event
+ vector ( id = 48, optional, fill = "I2C1_ER_IRQHandler" ); // I2C1 Error
+ vector ( id = 49, optional, fill = "I2C2_EV_IRQHandler" ); // I2C2 Event
+ vector ( id = 50, optional, fill = "I2C2_ER_IRQHandler" ); // I2C2 Error
+ vector ( id = 51, optional, fill = "SPI1_IRQHandler" ); // SPI1
+ vector ( id = 52, optional, fill = "SPI2_IRQHandler" ); // SPI2
+ vector ( id = 53, optional, fill = "USART1_IRQHandler" ); // USART1
+ vector ( id = 54, optional, fill = "USART2_IRQHandler" ); // USART2
+ vector ( id = 55, optional, fill = "USART3_IRQHandler" ); // USART3
+ vector ( id = 56, optional, fill = "EXTI15_10_IRQHandler" ); // EXTI Line 15..10
+ vector ( id = 57, optional, fill = "RTCAlarm_IRQHandler" ); // RTC Alarm through EXTI Line
+ vector ( id = 58, optional, fill = "USBWakeUp_IRQHandler" ); // USB Wakeup from suspend
+ vector ( id = 59, optional, fill = "TIM8_BRK_TIM12_IRQHandler" ); // TIM8 Break
+ vector ( id = 60, optional, fill = "TIM8_UP_TIM13_IRQHandler" ); // TIM8 Update
+ vector ( id = 61, optional, fill = "TIM8_TRG_COM_TIM14_IRQHandler" ); // TIM8 Trigger and Commutation
+ vector ( id = 62, optional, fill = "TIM8_CC_IRQHandler" ); // TIM8 Capture Compare
+ vector ( id = 63, optional, fill = "ADC3_IRQHandler" ); // ADC3
+ vector ( id = 64, optional, fill = "FSMC_IRQHandler" ); // FSMC
+ vector ( id = 65, optional, fill = "SDIO_IRQHandler" ); // SDIO
+ vector ( id = 66, optional, fill = "TIM5_IRQHandler" ); // TIM5
+ vector ( id = 67, optional, fill = "SPI3_IRQHandler" ); // SPI3
+ vector ( id = 68, optional, fill = "UART4_IRQHandler" ); // UART4
+ vector ( id = 69, optional, fill = "UART5_IRQHandler" ); // UART5
+ vector ( id = 70, optional, fill = "TIM6_IRQHandler" ); // TIM6
+ vector ( id = 71, optional, fill = "TIM7_IRQHandler" ); // TIM7
+ vector ( id = 72, optional, fill = "DMA2_Channel1_IRQHandler" ); // DMA2 Channel1
+ vector ( id = 73, optional, fill = "DMA2_Channel2_IRQHandler" ); // DMA2 Channel2
+ vector ( id = 74, optional, fill = "DMA2_Channel3_IRQHandler" ); // DMA2 Channel3
+ vector ( id = 75, optional, fill = "DMA2_Channel4_5_IRQHandler" ); // DMA2 Channel4 and DMA2 Channel5
+ }
+}
+# endif
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32373C_EVAL/.launch b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32373C_EVAL/.launch
new file mode 100644
index 0000000..4635ffb
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32373C_EVAL/.launch
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<launchConfiguration type="com.tasking.cdt.launch.localCLaunch">
+ <booleanAttribute key="com.tasking.debug.cdt.core.BREAK_ON_EXIT" value="true"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.CACHE_TARGET_ACCESS" value="false"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.COMMUNICATION" value="J-Link over USB (JTAG)"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.CONFIGURATION" value="Default"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.DILOGCALLBACK_LOG_FILE_NAME" value=""/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.DOWNLOAD" value="true"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.FSS_ROOT" value="${project_loc}\${build_config}"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.GDILOG_FILE_NAME" value=""/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.GOTO_MAIN" value="true"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.HISTORY_BUFFER_ENABLED" value="false"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.MSGLOG_FILE_NAME" value=""/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.PROGRAM_FLASH" value="true"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.PSM_ENABLED" value="true"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.RESET_TARGET" value="true"/>
+ <stringAttribute key="com.tasking.debug.cdt.core.TARGET" value="STMicroelectronics STM32L152-EVAL"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.TARGET_POLLING" value="false"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.USE_MDF_FILE" value="false"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.VERIFY" value="true"/>
+ <booleanAttribute key="com.tasking.debug.cdt.core.linkToProject" value="true"/>
+ <stringAttribute key="debugger_configuration.debug_instrument_module" value="dijlinkarm"/>
+ <stringAttribute key="debugger_configuration.gdi.flash.flash_mirror_address" value="0x0"/>
+ <stringAttribute key="debugger_configuration.gdi.flash.flash_monitor" value="fstm32l1xx.sre"/>
+ <stringAttribute key="debugger_configuration.gdi.flash.flash_sector_buffer_size" value="4096"/>
+ <stringAttribute key="debugger_configuration.gdi.flash.flash_workspace" value="0x20000000"/>
+ <stringAttribute key="debugger_configuration.gdi.resource.hwdiarm.protocol" value="JTAG"/>
+ <stringAttribute key="debugger_configuration.general.kdi_orti_file" value=""/>
+ <stringAttribute key="debugger_configuration.general.ksm_sharedlib" value=""/>
+ <stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_ID" value="com.tasking.debug.cdt.core.CDebugger"/>
+ <stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="run"/>
+ <booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
+ <booleanAttribute key="org.eclipse.cdt.launch.ENABLE_REGISTER_BOOKKEEPING" value="false"/>
+ <booleanAttribute key="org.eclipse.cdt.launch.ENABLE_VARIABLE_BOOKKEEPING" value="false"/>
+ <stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="${project_loc}\${build_config}\STM32L152-EVAL.abs"/>
+ <stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="STM32L152-EVAL"/>
+ <booleanAttribute key="org.eclipse.cdt.launch.use_terminal" value="true"/>
+ <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+ <listEntry value="/STM32L152-EVAL"/>
+</listAttribute>
+ <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+ <listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.cproject b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.cproject
new file mode 100644
index 0000000..8739dee
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.cproject
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?>
+
+<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
+ <storageModule moduleId="org.eclipse.cdt.core.settings">
+ <cconfiguration id="com.tasking.config.arm.abs.debug.2044455393">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.tasking.config.arm.abs.debug.2044455393" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+ <externalSettings/>
+ <extensions>
+ <extension id="com.tasking.managedbuilder.TASKING_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="com.tasking.managedbuilder.TskRegexErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactExtension="abs" artifactName="STM32L152-EVAL" buildArtefactType="com.tasking.arm.buildArtefactType.elf" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=com.tasking.arm.buildArtefactType.elf" cleanCommand="&quot;${PRODDIR}/bin/rm&quot; -rf" description="" id="com.tasking.config.arm.abs.debug.2044455393" name="Debug" parent="com.tasking.config.arm.abs.debug">
+ <folderInfo id="com.tasking.config.arm.abs.debug.2044455393." name="/" resourcePath="">
+ <toolChain id="com.tasking.arm.abs.debug.315882766" name="TASKING VX-toolset for ARM" superClass="com.tasking.arm.abs.debug">
+ <option id="com.tasking.arm.pluginVersion.306560835" name="Plugin version" superClass="com.tasking.arm.pluginVersion" value="1.88.0.0" valueType="string"/>
+ <option id="com.tasking.arm.prodDir.527888595" name="Product directory:" superClass="com.tasking.arm.prodDir" value="${eclipse_home}/.." valueType="string"/>
+ <option id="com.tasking.arm.cpu.1659227005" name="Processor:" superClass="com.tasking.arm.cpu" value="stm32l152vb" valueType="string"/>
+ <targetPlatform archList="all" binaryParser="com.tasking.managedbuilder.TASKING_ELF" id="com.tasking.arm.platform.abs.debug.2077143327" name="Debug" osList="" superClass="com.tasking.arm.platform.abs.debug"/>
+ <builder buildPath="${workspace_loc:/STM3210B-EVAL/Debug}" id="com.tasking.arm.builder.abs.debug.1207760117" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="TASKING ARM Makefile generator" parallelBuildOn="true" parallelizationNumber="-1" superClass="com.tasking.arm.builder.abs.debug"/>
+ <tool id="com.tasking.arm.cc.abs.debug.1657066278" name="C/C++ Compiler" superClass="com.tasking.arm.cc.abs.debug">
+ <option id="com.tasking.arm.cc.pr36858.1629322841" name="workaround for PR36858" superClass="com.tasking.arm.cc.pr36858" value="true" valueType="string"/>
+ <option id="com.tasking.arm.cc.includePaths.449008655" name="Include paths" superClass="com.tasking.arm.cc.includePaths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;..\..\..\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\STM32_USB-FS-Device_Driver\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL\Common&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL\STM32L152_EVAL&quot;"/>
+ </option>
+ <option id="com.tasking.arm.cc.definedSymbols.2139466164" name="Defined symbols" superClass="com.tasking.arm.cc.definedSymbols" valueType="definedSymbols">
+ <listOptionValue builtIn="false" value="USE_STDPERIPH_DRIVER"/>
+ <listOptionValue builtIn="false" value="STM32L1XX_MD"/>
+ <listOptionValue builtIn="false" value="USE_STM32L152_EVAL"/>
+ </option>
+ <option id="com.tasking.arm.cc.optimize.1365289574" name="Optimization level:" superClass="com.tasking.arm.cc.optimize" value="com.tasking.arm.cc.optimize.3" valueType="enumerated"/>
+ <option id="com.tasking.arm.cc.globalTypeChecking.1184544748" name="Perform global type checking on C code" superClass="com.tasking.arm.cc.globalTypeChecking" value="false" valueType="boolean"/>
+ <option id="com.tasking.arm.cc.nowarning.398961799" name="Suppress C compiler warnings" superClass="com.tasking.arm.cc.nowarning" valueType="stringList">
+ <listOptionValue builtIn="false" value="588"/>
+ <listOptionValue builtIn="false" value="549"/>
+ <listOptionValue builtIn="false" value="557"/>
+ <listOptionValue builtIn="false" value="508"/>
+ <listOptionValue builtIn="false" value="560"/>
+ </option>
+ <option id="com.tasking.arm.cc.defaultHeaderFile.1126538551" name="Include CMSIS device register definition header file" superClass="com.tasking.arm.cc.defaultHeaderFile" value="true" valueType="boolean"/>
+ <option id="com.tasking.arm.cc.cmsisIncludePaths.1232400927" name="Add CMSIS include paths" superClass="com.tasking.arm.cc.cmsisIncludePaths" value="true" valueType="boolean"/>
+ <inputType id="com.tasking.arm.cppInputType.78394475" name="C++" superClass="com.tasking.arm.cppInputType"/>
+ <inputType id="com.tasking.arm.cpp.cInputType.609856589" name="C" superClass="com.tasking.arm.cpp.cInputType"/>
+ <inputType id="com.tasking.arm.cc.msInputType.765887363" name="MS" superClass="com.tasking.arm.cc.msInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.as.abs.debug.1696826359" name="Assembler" superClass="com.tasking.arm.as.abs.debug">
+ <inputType id="com.tasking.arm.asmInputType.1662245119" name="ASM" superClass="com.tasking.arm.asmInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.lk.abs.debug.666839530" name="Linker" superClass="com.tasking.arm.lk.abs.debug">
+ <option id="com.tasking.arm.lk.lslFile.578724675" name="Linker script file:" superClass="com.tasking.arm.lk.lslFile" value="../TASKING/stm32l1xx_md.lsl" valueType="string"/>
+ <option id="com.tasking.arm.lk.outputFormat.ihex.1192937107" name="Generate Intel Hex format file" superClass="com.tasking.arm.lk.outputFormat.ihex" value="true" valueType="boolean"/>
+ <inputType id="com.tasking.arm.lkObjInputType.1921927729" name="OBJ" superClass="com.tasking.arm.lkObjInputType"/>
+ <inputType id="com.tasking.arm.lkLibInputType.1525417255" name="LIB" superClass="com.tasking.arm.lkLibInputType"/>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ <storageModule moduleId="com.tasking.toolInfo">
+ <toolInfo>TASKING program builder v4.3r1 Build 068</toolInfo>
+ </storageModule>
+ <storageModule addStartupFiles="false" moduleId="com.tasking.processor" updateRefProjects="true"/>
+ </cconfiguration>
+ <cconfiguration id="com.tasking.config.arm.abs.release.1258418627">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.tasking.config.arm.abs.release.1258418627" moduleId="org.eclipse.cdt.core.settings" name="Release">
+ <externalSettings/>
+ <extensions>
+ <extension id="com.tasking.managedbuilder.TASKING_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="com.tasking.managedbuilder.TskRegexErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactExtension="abs" artifactName="STM3210B-EVAL" buildArtefactType="com.tasking.arm.buildArtefactType.elf" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=com.tasking.arm.buildArtefactType.elf" cleanCommand="&quot;${PRODDIR}/bin/rm&quot; -rf" description="" id="com.tasking.config.arm.abs.release.1258418627" name="Release" parent="com.tasking.config.arm.abs.release">
+ <folderInfo id="com.tasking.config.arm.abs.release.1258418627." name="/" resourcePath="">
+ <toolChain id="com.tasking.arm.abs.release.1519878930" name="TASKING VX-toolset for ARM" superClass="com.tasking.arm.abs.release">
+ <option id="com.tasking.arm.pluginVersion.753991160" name="Plugin version" superClass="com.tasking.arm.pluginVersion" value="1.88.0.0" valueType="string"/>
+ <option id="com.tasking.arm.prodDir.116421631" name="Product directory:" superClass="com.tasking.arm.prodDir" value="${eclipse_home}/.." valueType="string"/>
+ <option id="com.tasking.arm.cpu.1935071203" name="Processor:" superClass="com.tasking.arm.cpu" value="stm32f103vb" valueType="string"/>
+ <targetPlatform archList="all" binaryParser="com.tasking.managedbuilder.TASKING_ELF" id="com.tasking.arm.platform.abs.release.1267471898" name="Release" osList="" superClass="com.tasking.arm.platform.abs.release"/>
+ <builder buildPath="${workspace_loc:/STM3210B-EVAL/Release}" id="com.tasking.arm.builder.abs.debug.1660652434" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="TASKING ARM Makefile generator" parallelBuildOn="true" parallelizationNumber="-1" superClass="com.tasking.arm.builder.abs.debug"/>
+ <tool id="com.tasking.arm.cc.abs.release.1575251102" name="C/C++ Compiler" superClass="com.tasking.arm.cc.abs.release">
+ <option id="com.tasking.arm.cc.pr36858.667949791" name="workaround for PR36858" superClass="com.tasking.arm.cc.pr36858" value="true" valueType="string"/>
+ <inputType id="com.tasking.arm.cppInputType.2091871615" name="C++" superClass="com.tasking.arm.cppInputType"/>
+ <inputType id="com.tasking.arm.cpp.cInputType.1848464199" name="C" superClass="com.tasking.arm.cpp.cInputType"/>
+ <inputType id="com.tasking.arm.cc.msInputType.1535867854" name="MS" superClass="com.tasking.arm.cc.msInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.as.abs.release.1696180280" name="Assembler" superClass="com.tasking.arm.as.abs.release">
+ <inputType id="com.tasking.arm.asmInputType.696605406" name="ASM" superClass="com.tasking.arm.asmInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.lk.abs.release.412256846" name="Linker" superClass="com.tasking.arm.lk.abs.release">
+ <inputType id="com.tasking.arm.lkObjInputType.244725194" name="OBJ" superClass="com.tasking.arm.lkObjInputType"/>
+ <inputType id="com.tasking.arm.lkLibInputType.407770682" name="LIB" superClass="com.tasking.arm.lkLibInputType"/>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <project id="STM3210B-EVAL.com.tasking.arm.target.abs.491846486" name="TASKING ARM Application" projectType="com.tasking.arm.target.abs"/>
+ </storageModule>
+ <storageModule moduleId="scannerConfiguration">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ <scannerConfigBuildInfo instanceId="com.tasking.config.arm.abs.release.1258418627;com.tasking.config.arm.abs.release.1258418627.">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.tasking.arm.TskARMScannerInfo"/>
+ </scannerConfigBuildInfo>
+ <scannerConfigBuildInfo instanceId="com.tasking.config.arm.abs.debug.2044455393;com.tasking.config.arm.abs.debug.2044455393.">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.tasking.arm.TskARMScannerInfo"/>
+ </scannerConfigBuildInfo>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.language.mapping">
+ <project-mappings>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.tasking.arm.clanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.tasking.arm.clanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.tasking.arm.cpplanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.tasking.arm.cpplanguage"/>
+ </project-mappings>
+ </storageModule>
+ <storageModule moduleId="refreshScope" versionNumber="1">
+ <resource resourceType="PROJECT" workspacePath="/STM3210B-EVAL"/>
+ </storageModule>
+</cproject>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.project b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.project
new file mode 100644
index 0000000..c67a687
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152-EVAL/.project
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>STM32L152-EVAL</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.tasking.arm.TskManagedBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ <nature>com.tasking.arm.target</nature>
+ </natures>
+ <linkedResources>
+ <link>
+ <name>CMSIS</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>Doc</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM32L152_EVAL</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>User</name>
+ <type>2</type>
+ <locationURI>WORKSPACE_LOC/.metadata/Link</locationURI>
+ </link>
+ <link>
+ <name>CMSIS/system_stm32l1xx.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/system_stm32l1xx.c</locationURI>
+ </link>
+ <link>
+ <name>Doc/readme.txt</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/readme.txt</locationURI>
+ </link>
+ <link>
+ <name>STM32L152_EVAL/stm32l152_eval.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Utilities/STM32_EVAL/STM32L152_EVAL/stm32l152_eval.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/misc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/misc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_dma.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_dma.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_exti.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_exti.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_flash.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_flash.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_gpio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_gpio.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_i2c.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_i2c.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_lcd.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_lcd.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_pwr.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_pwr.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_rcc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_rcc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_sdio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_sdio.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_spi.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_spi.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_syscfg.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_syscfg.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_tim.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_tim.c</locationURI>
+ </link>
+ <link>
+ <name>STM32L1xx_StdPeriph_Driver/stm32l1xx_usart.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32L1xx_StdPeriph_Driver/src/stm32l1xx_usart.c</locationURI>
+ </link>
+ <link>
+ <name>User/main.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/main.c</locationURI>
+ </link>
+ <link>
+ <name>User/stm32_it.c</name>
+ <type>1</type>
+ <locationURI>PARENT-2-PROJECT_LOC/src/stm32_it.c</locationURI>
+ </link>
+ </linkedResources>
+</projectDescription>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/.cproject b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/.cproject
new file mode 100644
index 0000000..b476107
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/.cproject
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?>
+
+<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
+ <storageModule moduleId="org.eclipse.cdt.core.settings">
+ <cconfiguration id="com.tasking.config.arm.abs.debug.2044455393">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.tasking.config.arm.abs.debug.2044455393" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+ <externalSettings/>
+ <extensions>
+ <extension id="com.tasking.managedbuilder.TASKING_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="com.tasking.managedbuilder.TskRegexErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactExtension="abs" artifactName="STM32L152D-EVAL" buildArtefactType="com.tasking.arm.buildArtefactType.elf" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=com.tasking.arm.buildArtefactType.elf" cleanCommand="&quot;${PRODDIR}/bin/rm&quot; -rf" description="" id="com.tasking.config.arm.abs.debug.2044455393" name="Debug" parent="com.tasking.config.arm.abs.debug">
+ <folderInfo id="com.tasking.config.arm.abs.debug.2044455393." name="/" resourcePath="">
+ <toolChain id="com.tasking.arm.abs.debug.315882766" name="TASKING VX-toolset for ARM" superClass="com.tasking.arm.abs.debug">
+ <option id="com.tasking.arm.pluginVersion.306560835" name="Plugin version" superClass="com.tasking.arm.pluginVersion" value="1.88.0.0" valueType="string"/>
+ <option id="com.tasking.arm.prodDir.527888595" name="Product directory:" superClass="com.tasking.arm.prodDir" value="${eclipse_home}/.." valueType="string"/>
+ <option id="com.tasking.arm.cpu.1659227005" name="Processor:" superClass="com.tasking.arm.cpu" value="stm32l152zd" valueType="string"/>
+ <targetPlatform archList="all" binaryParser="com.tasking.managedbuilder.TASKING_ELF" id="com.tasking.arm.platform.abs.debug.2077143327" name="Debug" osList="" superClass="com.tasking.arm.platform.abs.debug"/>
+ <builder buildPath="${workspace_loc:/STM3210B-EVAL/Debug}" id="com.tasking.arm.builder.abs.debug.1207760117" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="TASKING ARM Makefile generator" parallelBuildOn="true" parallelizationNumber="-1" superClass="com.tasking.arm.builder.abs.debug"/>
+ <tool id="com.tasking.arm.cc.abs.debug.1657066278" name="C/C++ Compiler" superClass="com.tasking.arm.cc.abs.debug">
+ <option id="com.tasking.arm.cc.pr36858.1629322841" name="workaround for PR36858" superClass="com.tasking.arm.cc.pr36858" value="true" valueType="string"/>
+ <option id="com.tasking.arm.cc.includePaths.449008655" name="Include paths" superClass="com.tasking.arm.cc.includePaths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;..\..\..\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\CMSIS\Device\ST\STM32L1xx\Include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\STM32_USB-FS-Device_Driver\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Libraries\STM32L1xx_StdPeriph_Driver\inc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL\Common&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;..\..\..\..\..\..\Utilities\STM32_EVAL\STM32L152D_EVAL&quot;"/>
+ </option>
+ <option id="com.tasking.arm.cc.definedSymbols.2139466164" name="Defined symbols" superClass="com.tasking.arm.cc.definedSymbols" valueType="definedSymbols">
+ <listOptionValue builtIn="false" value="USE_STDPERIPH_DRIVER"/>
+ <listOptionValue builtIn="false" value="STM32L1XX_HD"/>
+ <listOptionValue builtIn="false" value="USE_STM32L152D_EVAL"/>
+ </option>
+ <option id="com.tasking.arm.cc.optimize.1365289574" name="Optimization level:" superClass="com.tasking.arm.cc.optimize" value="com.tasking.arm.cc.optimize.3" valueType="enumerated"/>
+ <option id="com.tasking.arm.cc.globalTypeChecking.1184544748" name="Perform global type checking on C code" superClass="com.tasking.arm.cc.globalTypeChecking" value="false" valueType="boolean"/>
+ <option id="com.tasking.arm.cc.nowarning.398961799" name="Suppress C compiler warnings" superClass="com.tasking.arm.cc.nowarning" valueType="stringList">
+ <listOptionValue builtIn="false" value="588"/>
+ <listOptionValue builtIn="false" value="549"/>
+ <listOptionValue builtIn="false" value="557"/>
+ <listOptionValue builtIn="false" value="508"/>
+ <listOptionValue builtIn="false" value="560"/>
+ </option>
+ <option id="com.tasking.arm.cc.defaultHeaderFile.1126538551" name="Include CMSIS device register definition header file" superClass="com.tasking.arm.cc.defaultHeaderFile" value="true" valueType="boolean"/>
+ <option id="com.tasking.arm.cc.cmsisIncludePaths.1232400927" name="Add CMSIS include paths" superClass="com.tasking.arm.cc.cmsisIncludePaths" value="true" valueType="boolean"/>
+ <inputType id="com.tasking.arm.cppInputType.78394475" name="C++" superClass="com.tasking.arm.cppInputType"/>
+ <inputType id="com.tasking.arm.cpp.cInputType.609856589" name="C" superClass="com.tasking.arm.cpp.cInputType"/>
+ <inputType id="com.tasking.arm.cc.msInputType.765887363" name="MS" superClass="com.tasking.arm.cc.msInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.as.abs.debug.1696826359" name="Assembler" superClass="com.tasking.arm.as.abs.debug">
+ <inputType id="com.tasking.arm.asmInputType.1662245119" name="ASM" superClass="com.tasking.arm.asmInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.lk.abs.debug.666839530" name="Linker" superClass="com.tasking.arm.lk.abs.debug">
+ <option id="com.tasking.arm.lk.lslFile.578724675" name="Linker script file:" superClass="com.tasking.arm.lk.lslFile" value="../TASKING/stm32l1xx_hd.lsl" valueType="string"/>
+ <option id="com.tasking.arm.lk.misc.longBranchVeneers.1335381371" name="Generate long-branch veneers" superClass="com.tasking.arm.lk.misc.longBranchVeneers" value="true" valueType="boolean"/>
+ <option id="com.tasking.arm.lk.outputFormat.ihex.831097318" name="Generate Intel Hex format file" superClass="com.tasking.arm.lk.outputFormat.ihex" value="true" valueType="boolean"/>
+ <inputType id="com.tasking.arm.lkObjInputType.1921927729" name="OBJ" superClass="com.tasking.arm.lkObjInputType"/>
+ <inputType id="com.tasking.arm.lkLibInputType.1525417255" name="LIB" superClass="com.tasking.arm.lkLibInputType"/>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ <storageModule moduleId="com.tasking.toolInfo">
+ <toolInfo>TASKING VX-toolset for ARM Cortex: C compiler v4.3r1 Build 683 SN 00123456</toolInfo>
+ <toolInfo>TASKING program builder v4.3r1 Build 068</toolInfo>
+ <toolInfo>TASKING VX-toolset for ARM Cortex: assembler v4.3r1 Build 148</toolInfo>
+ <toolInfo>TASKING VX-toolset for ARM Cortex: control program v4.3r1 Build 120</toolInfo>
+ <toolInfo>TASKING VX-toolset for ARM Cortex: object linker v4.3r1 Build 142 SN 00123456</toolInfo>
+ </storageModule>
+ <storageModule addStartupFiles="false" moduleId="com.tasking.processor" updateRefProjects="true"/>
+ </cconfiguration>
+ <cconfiguration id="com.tasking.config.arm.abs.release.1258418627">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.tasking.config.arm.abs.release.1258418627" moduleId="org.eclipse.cdt.core.settings" name="Release">
+ <externalSettings/>
+ <extensions>
+ <extension id="com.tasking.managedbuilder.TASKING_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="com.tasking.managedbuilder.TskRegexErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactExtension="abs" artifactName="STM3210B-EVAL" buildArtefactType="com.tasking.arm.buildArtefactType.elf" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=com.tasking.arm.buildArtefactType.elf" cleanCommand="&quot;${PRODDIR}/bin/rm&quot; -rf" description="" id="com.tasking.config.arm.abs.release.1258418627" name="Release" parent="com.tasking.config.arm.abs.release">
+ <folderInfo id="com.tasking.config.arm.abs.release.1258418627." name="/" resourcePath="">
+ <toolChain id="com.tasking.arm.abs.release.1519878930" name="TASKING VX-toolset for ARM" superClass="com.tasking.arm.abs.release">
+ <option id="com.tasking.arm.pluginVersion.753991160" name="Plugin version" superClass="com.tasking.arm.pluginVersion" value="1.88.0.0" valueType="string"/>
+ <option id="com.tasking.arm.prodDir.116421631" name="Product directory:" superClass="com.tasking.arm.prodDir" value="${eclipse_home}/.." valueType="string"/>
+ <option id="com.tasking.arm.cpu.1935071203" name="Processor:" superClass="com.tasking.arm.cpu" value="stm32f103vb" valueType="string"/>
+ <targetPlatform archList="all" binaryParser="com.tasking.managedbuilder.TASKING_ELF" id="com.tasking.arm.platform.abs.release.1267471898" name="Release" osList="" superClass="com.tasking.arm.platform.abs.release"/>
+ <builder buildPath="${workspace_loc:/STM3210B-EVAL/Release}" id="com.tasking.arm.builder.abs.debug.1660652434" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="TASKING ARM Makefile generator" parallelBuildOn="true" parallelizationNumber="-1" superClass="com.tasking.arm.builder.abs.debug"/>
+ <tool id="com.tasking.arm.cc.abs.release.1575251102" name="C/C++ Compiler" superClass="com.tasking.arm.cc.abs.release">
+ <option id="com.tasking.arm.cc.pr36858.667949791" name="workaround for PR36858" superClass="com.tasking.arm.cc.pr36858" value="true" valueType="string"/>
+ <inputType id="com.tasking.arm.cppInputType.2091871615" name="C++" superClass="com.tasking.arm.cppInputType"/>
+ <inputType id="com.tasking.arm.cpp.cInputType.1848464199" name="C" superClass="com.tasking.arm.cpp.cInputType"/>
+ <inputType id="com.tasking.arm.cc.msInputType.1535867854" name="MS" superClass="com.tasking.arm.cc.msInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.as.abs.release.1696180280" name="Assembler" superClass="com.tasking.arm.as.abs.release">
+ <inputType id="com.tasking.arm.asmInputType.696605406" name="ASM" superClass="com.tasking.arm.asmInputType"/>
+ </tool>
+ <tool id="com.tasking.arm.lk.abs.release.412256846" name="Linker" superClass="com.tasking.arm.lk.abs.release">
+ <inputType id="com.tasking.arm.lkObjInputType.244725194" name="OBJ" superClass="com.tasking.arm.lkObjInputType"/>
+ <inputType id="com.tasking.arm.lkLibInputType.407770682" name="LIB" superClass="com.tasking.arm.lkLibInputType"/>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <project id="STM3210B-EVAL.com.tasking.arm.target.abs.491846486" name="TASKING ARM Application" projectType="com.tasking.arm.target.abs"/>
+ </storageModule>
+ <storageModule moduleId="scannerConfiguration">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ <scannerConfigBuildInfo instanceId="com.tasking.config.arm.abs.release.1258418627;com.tasking.config.arm.abs.release.1258418627.">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.tasking.arm.TskARMScannerInfo"/>
+ </scannerConfigBuildInfo>
+ <scannerConfigBuildInfo instanceId="com.tasking.config.arm.abs.debug.2044455393;com.tasking.config.arm.abs.debug.2044455393.">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.tasking.arm.TskARMScannerInfo"/>
+ </scannerConfigBuildInfo>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.language.mapping">
+ <project-mappings>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.tasking.arm.clanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.tasking.arm.clanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.tasking.arm.cpplanguage"/>
+ <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.tasking.arm.cpplanguage"/>
+ </project-mappings>
+ </storageModule>
+ <storageModule moduleId="refreshScope" versionNumber="1">
+ <resource resourceType="PROJECT" workspacePath="/STM3210B-EVAL"/>
+ </storageModule>
+</cproject>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.hex b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.hex
new file mode 100644
index 0000000..204ac12
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.hex
@@ -0,0 +1,52 @@
+:020000040800F2
+:2030000000C0002069340008B1330008B5330008B9330008BD330008113400081C300008C2
+:203020002030000824300008283000081534000819340008343000081D340008AD33000829
+:203040004030000844300008483000084C3000085030000854300008583000085C30000840
+:203060006030000864300008683000086C3000087030000874300008783000087C30000820
+:203080008030000884300008883000088C3000089030000894300008983000089C30000800
+:2030A000A0300008A4300008A8300008AC300008B0300008B4300008B8300008BC300008E0
+:2030C000C0300008C4300008C8300008CC300008D0300008D4300008D8300008DC300008C0
+:2030E000E0300008E4300008E8300008EC300008F0300008F4300008F8300008FC300008A0
+:203100000031000804310008083100080C3100081031000814310008183100081C31000877
+:2031200020310008000000000048E801000C0240000C0240001C0240001C02400800800025
+:20314000004000800800000008000000800000008000000043F60002C4F20202106843F6F9
+:20316000080350F480701060C4F202034CF20C01C8F6FF0118680840186043F60C01C4F2A0
+:203180000201106830F0011030F088501060106830F480201060186830F47D0018600020B6
+:2031A00008604DF8080D0190106850F480301060106810F4003001900098401C0090019886
+:2031C00018B90098B0F5A06FF2D1106810F4003018BF012001900198012849D143F6004085
+:2031E000C4F20200016851F004010160016851F002010160016851F00101016043F624008F
+:20320000C4F20200016851F0805101605FF4006047F20001C4F20001086047F20400C4F21B
+:203220000000006810F0100FF7D1186818601868186018681860186830F47D00186018683E
+:2032400050F411001860106850F080701060106810F0007FFBD0186830F00300186018682C
+:2032600050F003001860186810F00C000C28FAD15FF000605FF0E021C1F8080D02B07047D2
+:2032800030B502460B460024012010FA04F118680840884239D15FEA440E032010FA0EF00A
+:2032A0006FEA0005106828401060586810FA0EF11068084310605868012801D0022816D199
+:2032C000906828409060986810FA0EF1906808439060012010FA04F1908888439080D8680F
+:2032E00080B210FA04F081B29088084390805FEA4401032010FA01F1D0688843D060186997
+:1233000010FA0EF1D0680843D060641C102CBBD330BDC8
+:2033140000B5002000F052F8012000F04FF8022000F04CF8032000F049F800F037F8104811
+:2033340000685FF47A71B0FBF1F030F07F40411E5FF0E0204161F02180F8231D002181614C
+:203354000721016100F0B0F85FF4FA7000F012F800F0AAF85FF4967000F00CF8F2E7C046C2
+:043374000400002031
+:163388000249086008680028FCD1704700000020032002907047D4
+:1233A0005FF000605FF4405100F0AEB800F0A0B8704733
+:0233B400FEE732
+:0233B800FEE72E
+:0233BC00FEE72A
+:2033C00070B585B00546114C04F1180050F82500012100F081F804F1100636F81500009008
+:2033E00001200190002003900490FFF7D5FF04F1000454F825006946FFF742FF54F8250049
+:1234000036F81510018305B070BDC04608000020FEE7EE
+:023414007047FF
+:023418007047FB
+:02341C007047F7
+:2034200010B5104C54F8043B012B54F8040B54F8041B54F8042B06D1521E11F9013B00F8EE
+:20344000013BF9D1EEE7022B05D10021521E00F8011BFAD1E6E7032B18BF10BDFFF75AFF30
+:20346000E0E710BD20350008DFF824F0DFF824D0FFF770FEFFF7D4FF07485FF0E021C1F820
+:20348000080D00200146FFF745FF00F047F870476D34000800C0002000300008064901F18E
+:2034A000000252F8202001F1100131F8100032F8143F4340138070470800002000B50020FD
+:2034C000FFF7ECFF0120FFF7E9FF0220FFF7E6FF0320FFF7E3FF00BD43F61C02C4F2020246
+:2034E00011B11168014301E0116881431160704704480168002908BF70470168491E01607A
+:1E3500007047C0460000002031F0604131F07F0108435FF0E021C1F8080D7047FEE768
+:203520000100000000000020243100083000000000000000000000000000000000000000DD
+:040000050800346952
+:00000001FF
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.launch b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.launch
new file mode 100644
index 0000000..26462e6
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TASKING/STM32L152D-EVAL/STM32L152D-EVAL.launch
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="com.tasking.cdt.launch.localCLaunch">
+<booleanAttribute key="com.tasking.debug.cdt.core.BREAK_ON_EXIT" value="true"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.CACHE_TARGET_ACCESS" value="false"/>
+<stringAttribute key="com.tasking.debug.cdt.core.COMMUNICATION" value="ST-LINK over USB (SWD)"/>
+<stringAttribute key="com.tasking.debug.cdt.core.CONFIGURATION" value="Default"/>
+<stringAttribute key="com.tasking.debug.cdt.core.DILOGCALLBACK_LOG_FILE_NAME" value=""/>
+<booleanAttribute key="com.tasking.debug.cdt.core.DOWNLOAD" value="true"/>
+<stringAttribute key="com.tasking.debug.cdt.core.FSS_ROOT" value="${project_loc}\${build_config}"/>
+<stringAttribute key="com.tasking.debug.cdt.core.GDILOG_FILE_NAME" value=""/>
+<booleanAttribute key="com.tasking.debug.cdt.core.GOTO_MAIN" value="true"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.HISTORY_BUFFER_ENABLED" value="false"/>
+<stringAttribute key="com.tasking.debug.cdt.core.MSGLOG_FILE_NAME" value=""/>
+<booleanAttribute key="com.tasking.debug.cdt.core.PROGRAM_FLASH" value="true"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.PSM_ENABLED" value="true"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.RESET_TARGET" value="true"/>
+<stringAttribute key="com.tasking.debug.cdt.core.TARGET" value="STMicroelectronics STM32L152D-EVAL"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.TARGET_POLLING" value="false"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.USE_MDF_FILE" value="false"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.VERIFY" value="true"/>
+<booleanAttribute key="com.tasking.debug.cdt.core.linkToProject" value="true"/>
+<stringAttribute key="debugger_configuration.debug_instrument_module" value="distlink"/>
+<stringAttribute key="debugger_configuration.gdi.flash.flash_mirror_address" value="0x0"/>
+<stringAttribute key="debugger_configuration.gdi.flash.flash_monitor" value="fstm32l1xx.sre"/>
+<stringAttribute key="debugger_configuration.gdi.flash.flash_sector_buffer_size" value="4096"/>
+<stringAttribute key="debugger_configuration.gdi.flash.flash_workspace" value="0x20000000"/>
+<stringAttribute key="debugger_configuration.gdi.resource.hwdiarm.protocol" value="SWD"/>
+<stringAttribute key="debugger_configuration.general.kdi_orti_file" value=""/>
+<stringAttribute key="debugger_configuration.general.ksm_sharedlib" value=""/>
+<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_ID" value="com.tasking.debug.cdt.core.CDebugger"/>
+<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/>
+<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="run"/>
+<booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
+<booleanAttribute key="org.eclipse.cdt.launch.ENABLE_REGISTER_BOOKKEEPING" value="false"/>
+<booleanAttribute key="org.eclipse.cdt.launch.ENABLE_VARIABLE_BOOKKEEPING" value="false"/>
+<stringAttribute key="org.eclipse.cdt.launch.FORMAT" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&lt;contentList/&gt;"/>
+<stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;globalVariableList/&gt;&#13;&#10;"/>
+<stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;memoryBlockExpressionList/&gt;&#13;&#10;"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="${project_loc}\${build_config}\STM32L152D-EVAL.abs"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="STM32L152D-EVAL"/>
+<booleanAttribute key="org.eclipse.cdt.launch.use_terminal" value="true"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/STM32L152D-EVAL"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210B-EVAL/.cproject b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210B-EVAL/.cproject
new file mode 100644
index 0000000..f42f8ad
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210B-EVAL/.cproject
@@ -0,0 +1,266 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?>
+
+<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
+ <storageModule moduleId="org.eclipse.cdt.core.settings">
+ <cconfiguration id="com.atollic.truestudio.exe.debug.316348137">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.atollic.truestudio.exe.debug.316348137" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+ <externalSettings>
+ <externalSetting languages="com.atollic.truestudio.gcc.input.1633913031"/>
+ </externalSettings>
+ <extensions>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactExtension="elf" artifactName="STM3210B-EVAL" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="com.atollic.truestudio.exe.debug.316348137" name="Debug" parent="com.atollic.truestudio.exe.debug" postbuildStep="" prebuildStep="">
+ <folderInfo id="com.atollic.truestudio.exe.debug.316348137." name="/" resourcePath="">
+ <toolChain id="com.atollic.truestudio.exe.debug.toolchain.1057655060" name="Atollic ARM Tools" superClass="com.atollic.truestudio.exe.debug.toolchain">
+ <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.atollic.truestudio.exe.debug.toolchain.platform.734843313" isAbstract="false" name="Debug platform" superClass="com.atollic.truestudio.exe.debug.toolchain.platform"/>
+ <builder buildPath="${workspace_loc:/STM3210B-EVAL/Debug}" id="com.atollic.truestudio.mbs.builder1.290457456" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="com.atollic.truestudio.mbs.builder1"/>
+ <tool command="arm-atollic-eabi-gcc -c" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="com.atollic.truestudio.exe.debug.toolchain.as.732033945" name="Assembler" superClass="com.atollic.truestudio.exe.debug.toolchain.as">
+ <option id="com.atollic.truestudio.common_options.target.endianess.1322668714" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess"/>
+ <option id="com.atollic.truestudio.common_options.target.mcpu.898768892" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" value="STM32F103VB" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.common_options.target.instr_set.424153249" name="Instruction set" superClass="com.atollic.truestudio.common_options.target.instr_set" value="com.atollic.truestudio.common_options.target.instr_set.thumb2" valueType="enumerated"/>
+ <inputType id="com.atollic.truestudio.as.input.2142008470" name="Input" superClass="com.atollic.truestudio.as.input"/>
+ </tool>
+ <tool commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="com.atollic.truestudio.exe.debug.toolchain.gcc.1973350339" name="C Compiler" superClass="com.atollic.truestudio.exe.debug.toolchain.gcc">
+ <option id="com.atollic.truestudio.gcc.directories.select.1988110866" name="Include path" superClass="com.atollic.truestudio.gcc.directories.select" valueType="includePath">
+ <listOptionValue builtIn="false" value="../../../inc"/>
+ <listOptionValue builtIn="false" value="../../../../../../Libraries/STM32F10x_StdPeriph_Driver/inc"/>
+ <listOptionValue builtIn="false" value="../../../../../../Utilities/STM32_EVAL"/>
+ <listOptionValue builtIn="false" value="../../../../../../Libraries/CMSIS/Device/ST/STM32F10x/Include"/>
+ <listOptionValue builtIn="false" value="../../../../../../Libraries/CMSIS/Include"/>
+ <listOptionValue builtIn="false" value="../../../../../../Utilities/STM32_EVAL/STM3210B_EVAL"/>
+ <listOptionValue builtIn="false" value="../../../../../../Utilities/STM32_EVAL/Common"/>
+ </option>
+ <option id="com.atollic.truestudio.gcc.symbols.defined.1107808842" name="Defined symbols" superClass="com.atollic.truestudio.gcc.symbols.defined" valueType="definedSymbols">
+ <listOptionValue builtIn="false" value="USE_STM3210B_EVAL"/>
+ <listOptionValue builtIn="false" value="STM32F10X_MD"/>
+ <listOptionValue builtIn="false" value="USE_STDPERIPH_DRIVER"/>
+ </option>
+ <option id="com.atollic.truestudio.common_options.target.endianess.2070040810" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess"/>
+ <option id="com.atollic.truestudio.common_options.target.mcpu.1801492075" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" value="STM32F103VB" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.common_options.target.instr_set.175735774" name="Instruction set" superClass="com.atollic.truestudio.common_options.target.instr_set" value="com.atollic.truestudio.common_options.target.instr_set.thumb2" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.gcc.optimization.prep_garbage.601877778" name="Prepare dead code removal" superClass="com.atollic.truestudio.gcc.optimization.prep_garbage" value="true" valueType="boolean"/>
+ <option id="com.atollic.truestudio.gcc.optimization.prep_data.496634270" name="Prepare dead data removal" superClass="com.atollic.truestudio.gcc.optimization.prep_data" value="true" valueType="boolean"/>
+ <option id="com.atollic.truestudio.gcc.misc.otherflags.1297700233" name="Other options" superClass="com.atollic.truestudio.gcc.misc.otherflags" value=" -Os " valueType="string"/>
+ <inputType id="com.atollic.truestudio.gcc.input.1633913031" superClass="com.atollic.truestudio.gcc.input"/>
+ </tool>
+ <tool id="com.atollic.truestudio.exe.debug.toolchain.ld.172484552" name="C Linker" superClass="com.atollic.truestudio.exe.debug.toolchain.ld">
+ <option id="com.atollic.truestudio.common_options.target.endianess.1498290489" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess"/>
+ <option id="com.atollic.truestudio.common_options.target.mcpu.1792104502" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" value="STM32F103VB" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.common_options.target.instr_set.784303318" name="Instruction set" superClass="com.atollic.truestudio.common_options.target.instr_set" value="com.atollic.truestudio.common_options.target.instr_set.thumb2" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.ld.general.scriptfile.1117909711" name="Linker script" superClass="com.atollic.truestudio.ld.general.scriptfile" value="${workspace_loc:\STM3210B-EVAL\stm32_flash.ld}" valueType="string"/>
+ <option id="com.atollic.truestudio.ld.optimization.do_garbage.296160824" name="Dead code removal" superClass="com.atollic.truestudio.ld.optimization.do_garbage" value="true" valueType="boolean"/>
+ <inputType id="com.atollic.truestudio.ld.input.1781072409" name="Input" superClass="com.atollic.truestudio.ld.input">
+ <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+ <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+ </inputType>
+ </tool>
+ <tool id="com.atollic.truestudio.exe.debug.toolchain.gpp.315707442" name="C++ Compiler" superClass="com.atollic.truestudio.exe.debug.toolchain.gpp">
+ <option id="com.atollic.truestudio.gpp.symbols.defined.1911990920" name="Defined symbols" superClass="com.atollic.truestudio.gpp.symbols.defined" valueType="stringList">
+ <listOptionValue builtIn="false" value="USE_STM3210B_EVAL"/>
+ <listOptionValue builtIn="false" value="STM32F10X_MD"/>
+ <listOptionValue builtIn="false" value="USE_STDPERIPH_DRIVER"/>
+ </option>
+ <option id="com.atollic.truestudio.common_options.target.endianess.313911374" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess"/>
+ <option id="com.atollic.truestudio.common_options.target.mcpu.887021457" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" value="STM32F103VB" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.common_options.target.instr_set.1958027324" name="Instruction set" superClass="com.atollic.truestudio.common_options.target.instr_set" value="com.atollic.truestudio.common_options.target.instr_set.thumb2" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.gpp.optimization.prep_garbage.1399417399" name="Prepare dead code removal" superClass="com.atollic.truestudio.gpp.optimization.prep_garbage" value="true" valueType="boolean"/>
+ <option id="com.atollic.truestudio.gpp.optimization.fno_rtti.157276368" name="Disable RTTI" superClass="com.atollic.truestudio.gpp.optimization.fno_rtti"/>
+ <option id="com.atollic.truestudio.gpp.optimization.fno_exceptions.2035464181" name="Disable exception handling" superClass="com.atollic.truestudio.gpp.optimization.fno_exceptions"/>
+ </tool>
+ <tool id="com.atollic.truestudio.exe.debug.toolchain.ldcc.2081839827" name="C++ Linker" superClass="com.atollic.truestudio.exe.debug.toolchain.ldcc">
+ <option id="com.atollic.truestudio.common_options.target.endianess.309940778" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess"/>
+ <option id="com.atollic.truestudio.common_options.target.mcpu.1006608507" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" value="STM32F103VB" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.common_options.target.instr_set.1247154487" name="Instruction set" superClass="com.atollic.truestudio.common_options.target.instr_set" value="com.atollic.truestudio.common_options.target.instr_set.thumb2" valueType="enumerated"/>
+ <option id="com.atollic.truestudio.ldcc.optimization.do_garbage.1794965867" name="Dead code removal" superClass="com.atollic.truestudio.ldcc.optimization.do_garbage" value="true" valueType="boolean"/>
+ <option id="com.atollic.truestudio.ldcc.general.scriptfile.950094097" name="Linker script" superClass="com.atollic.truestudio.ldcc.general.scriptfile" value="${workspace_loc:\STM3210B-EVAL\stm32_flash.ld}" valueType="string"/>
+ </tool>
+ <tool id="com.atollic.truestudio.exe.debug.toolchain.secoutput.1741687010" name="Other" superClass="com.atollic.truestudio.exe.debug.toolchain.secoutput"/>
+ </toolChain>
+ </folderInfo>
+ <sourceEntries>
+ <entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name=""/>
+ </sourceEntries>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ <storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
+ <storageModule moduleId="scannerConfiguration">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="makefileGenerator">
+ <runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <scannerConfigBuildInfo instanceId="com.atollic.truestudio.exe.debug.316348137;com.atollic.truestudio.exe.debug.316348137.;com.atollic.truestudio.exe.debug.toolchain.gcc.1973350339;com.atollic.truestudio.gcc.input.1633913031">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
+ <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="makefileGenerator">
+ <runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+ <buildOutputProvider>
+ <openAction enabled="true" filePath=""/>
+ <parser enabled="true"/>
+ </buildOutputProvider>
+ <scannerInfoProvider id="specsFile">
+ <runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
+ <parser enabled="true"/>
+ </scannerInfoProvider>
+ </profile>
+ </scannerConfigBuildInfo>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
+ </cconfiguration>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <project id="STM3210B-EVAL.com.atollic.truestudio.exe.260392079" name="Executable" projectType="com.atollic.truestudio.exe"/>
+ </storageModule>
+</cproject>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL/.project b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL/.project
new file mode 100644
index 0000000..c5e4fbb
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL/.project
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>STM3210E-EVAL</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+ <triggers>clean,full,incremental,</triggers>
+ <arguments>
+ <dictionary>
+ <key>?children?</key>
+ <value>?name?=outputEntries\|?children?=?name?=entry\\\\\\\|\\\|\||</value>
+ </dictionary>
+ <dictionary>
+ <key>?name?</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.append_environment</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildArguments</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildCommand</key>
+ <value>make</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildLocation</key>
+ <value>${workspace_loc:/STM3210E-EVAL/Debug}</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.contents</key>
+ <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
+ <value>false</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableFullBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.stopOnError</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
+ <value>true</value>
+ </dictionary>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ </natures>
+ <linkedResources>
+ <link>
+ <name>CMSIS</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>Doc</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>TrueSTUDIO</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>User</name>
+ <type>2</type>
+ <locationURI>virtual:/virtual</locationURI>
+ </link>
+ <link>
+ <name>CMSIS/system_stm32f10x.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Projects/Device_Firmware_Upgrade/binary_template/src/system_stm32f10x.c</locationURI>
+ </link>
+ <link>
+ <name>Doc/readme.txt</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Projects/Device_Firmware_Upgrade/binary_template/readme.txt</locationURI>
+ </link>
+ <link>
+ <name>STM3210E_EVAL/stm3210e_eval.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Utilities/STM32_EVAL/STM3210E_EVAL/stm3210e_eval.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/misc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/misc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_exti.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_exti.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_gpio.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_rcc.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c</locationURI>
+ </link>
+ <link>
+ <name>STM32F10x_StdPeriph_Driver/stm32f10x_usart.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_usart.c</locationURI>
+ </link>
+ <link>
+ <name>TrueSTUDIO/startup_stm32f10x_hd.s</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Libraries/CMSIS/Device/ST/STM32F10x/Source/Templates/TrueSTUDIO/startup_stm32f10x_hd.s</locationURI>
+ </link>
+ <link>
+ <name>User/main.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Projects/Device_Firmware_Upgrade/binary_template/src/main.c</locationURI>
+ </link>
+ <link>
+ <name>User/stm32_it.c</name>
+ <type>1</type>
+ <locationURI>PARENT-5-PROJECT_LOC/Projects/Device_Firmware_Upgrade/binary_template/src/stm32_it.c</locationURI>
+ </link>
+ </linkedResources>
+</projectDescription>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL_XL/stm32_flash.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL_XL/stm32_flash.ld
new file mode 100644
index 0000000..67a3772
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM3210E-EVAL_XL/stm32_flash.ld
@@ -0,0 +1,170 @@
+/*
+*****************************************************************************
+**
+** File : stm32_flash.ld
+**
+** Abstract : Linker script for STM32F103ZG Device with
+** 1MByte FLASH, 96KByte RAM
+**
+** Set heap size, stack size and stack location according
+** to application requirements.
+**
+** Set memory bank area and size if external memory is used.
+**
+** Target : STMicroelectronics STM32
+**
+** Environment : Atollic TrueSTUDIO(R)
+**
+** Distribution: The file is distributed “as is,” without any warranty
+** of any kind.
+**
+** (c)Copyright Atollic AB.
+** You may use this file as-is or modify it according to the needs of your
+** project. Distribution of this file (unmodified or modified) is not
+** permitted. Atollic AB permit registered Atollic TrueSTUDIO(R) users the
+** rights to distribute the assembled, compiled & linked contents of this
+** file as part of an application binary file, provided that it is built
+** using the Atollic TrueSTUDIO(R) toolchain.
+**
+*****************************************************************************
+*/
+
+/* Entry Point */
+ENTRY(Reset_Handler)
+
+/* Highest address of the user mode stack */
+_estack = 0x20018000; /* end of 96K RAM */
+
+/* Generate a link error if heap and stack don't fit into RAM */
+_Min_Heap_Size = 0; /* required amount of heap */
+_Min_Stack_Size = 0x800; /* required amount of stack */
+
+/* Specify the memory areas */
+MEMORY
+{
+ FLASH (rx) : ORIGIN = 0x08003000, LENGTH = 1M - 0x3000
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 96K
+ MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
+}
+
+/* Define output sections */
+SECTIONS
+{
+ /* The startup code goes first into FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+ /* The program code and other data goes into FLASH */
+ .text :
+ {
+ . = ALIGN(4);
+ *(.text) /* .text sections (code) */
+ *(.text*) /* .text* sections (code) */
+ *(.rodata) /* .rodata sections (constants, strings, etc.) */
+ *(.rodata*) /* .rodata* sections (constants, strings, etc.) */
+ *(.glue_7) /* glue arm to thumb code */
+ *(.glue_7t) /* glue thumb to arm code */
+
+ KEEP (*(.init))
+ KEEP (*(.fini))
+
+ . = ALIGN(4);
+ _etext = .; /* define a global symbols at end of code */
+ } >FLASH
+
+
+ .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
+ .ARM : {
+ __exidx_start = .;
+ *(.ARM.exidx*)
+ __exidx_end = .;
+ } >FLASH
+
+ .ARM.attributes : { *(.ARM.attributes) } > FLASH
+
+ .preinit_array :
+ {
+ PROVIDE_HIDDEN (__preinit_array_start = .);
+ KEEP (*(.preinit_array*))
+ PROVIDE_HIDDEN (__preinit_array_end = .);
+ } >FLASH
+ .init_array :
+ {
+ PROVIDE_HIDDEN (__init_array_start = .);
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array*))
+ PROVIDE_HIDDEN (__init_array_end = .);
+ } >FLASH
+ .fini_array :
+ {
+ PROVIDE_HIDDEN (__fini_array_start = .);
+ KEEP (*(.fini_array*))
+ KEEP (*(SORT(.fini_array.*)))
+ PROVIDE_HIDDEN (__fini_array_end = .);
+ } >FLASH
+
+ /* used by the startup to initialize data */
+ _sidata = .;
+
+ /* Initialized data sections goes into RAM, load LMA copy after code */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ _sdata = .; /* create a global symbol at data start */
+ *(.data) /* .data sections */
+ *(.data*) /* .data* sections */
+
+ . = ALIGN(4);
+ _edata = .; /* define a global symbol at data end */
+ } >RAM
+
+ /* Uninitialized data section */
+ . = ALIGN(4);
+ .bss :
+ {
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .; /* define a global symbol at bss start */
+ __bss_start__ = _sbss;
+ *(.bss)
+ *(.bss*)
+ *(COMMON)
+
+ . = ALIGN(4);
+ _ebss = .; /* define a global symbol at bss end */
+ __bss_end__ = _ebss;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* User_heap_stack section, used to check that there is enough RAM left */
+ ._user_heap_stack :
+ {
+ . = ALIGN(4);
+ . = . + _Min_Heap_Size;
+ . = . + _Min_Stack_Size;
+ . = ALIGN(4);
+ } >RAM
+
+ /* MEMORY_bank1 section, code must be located here explicitly */
+ /* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
+ .memory_b1_text :
+ {
+ *(.mb1text) /* .mb1text sections (code) */
+ *(.mb1text*) /* .mb1text* sections (code) */
+ *(.mb1rodata) /* read-only data (constants) */
+ *(.mb1rodata*)
+ } >MEMORY_B1
+
+ /* Remove information from the standard libraries */
+ /DISCARD/ :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32373C-EVAL/STM32373C-EVAL.elf.launch b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32373C-EVAL/STM32373C-EVAL.elf.launch
new file mode 100644
index 0000000..734d809
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32373C-EVAL/STM32373C-EVAL.elf.launch
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="com.atollic.hardwaredebug.launch.launchConfigurationType">
+<stringAttribute key="com.atollic.hardwaredebug.launch.analyzeCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#9;&#9;&#13;&#10;&#13;&#10;# Enable Debug connection in low power modes (DBGMCU-&gt;CR)&#13;&#10;set *0xE0042004 = (*0xE0042004) | 0x7&#13;&#10;&#13;&#10;# Start the executable&#13;&#10;continue"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.enable_swv" value="false"/>
+<intAttribute key="com.atollic.hardwaredebug.launch.formatVersion" value="2"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.initCommands" value=""/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.ipAddress" value="localhost"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.jtagDevice" value="ST-LINK"/>
+<intAttribute key="com.atollic.hardwaredebug.launch.portNumber" value="61234"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.remoteCommand" value="target extended-remote"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.runCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#9;&#9;&#13;&#10;&#13;&#10;# Enable Debug connection in low power modes (DBGMCU-&gt;CR)&#13;&#10;set *0xE0042004 = (*0xE0042004) | 0x7&#13;&#10;&#13;&#10;# Set a breakpoint at main().&#13;&#10;tbreak main&#13;&#10;&#13;&#10;# Run to the breakpoint.&#13;&#10;continue"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.serverParam" value="-p 61234 -l 1 -d"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.startServer" value="true"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.swd_mode" value="true"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_port" value="61235"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_trace_div" value="72"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_trace_hclk" value="72000000"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.swv_wait_for_sync" value="true"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.useRemoteTarget" value="true"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.verifyCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#9;&#9;&#13;&#10;&#13;&#10;# Enable Debug connection in low power modes (DBGMCU-&gt;CR)&#13;&#10;set *0xE0042004 = (*0xE0042004) | 0x7&#13;&#10;&#13;&#10;# The executable starts automatically"/>
+<booleanAttribute key="com.atollic.hardwaredebug.stlink.enable_logging" value="false"/>
+<stringAttribute key="com.atollic.hardwaredebug.stlink.log_file" value="E:\SVN\STM32_USB-FS-Device_Lib\Projects\Custom_HID\TrueSTUDIO\STM32373C-EVAL\Debug\st-link_gdbserver_log.txt"/>
+<booleanAttribute key="com.atollic.hardwaredebug.stlink.verify_flash" value="false"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.DEBUG_NAME" value="${TOOLCHAIN_PATH}/arm-atollic-eabi-gdb"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.commandFactory" value="Standard (Windows)"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.protocol" value="mi"/>
+<booleanAttribute key="org.eclipse.cdt.debug.mi.core.verboseMode" value="false"/>
+<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="${TOOLCHAIN_PATH}/arm-atollic-eabi-gdb"/>
+<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/STM32373C-EVAL.elf"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="STM32373C-EVAL"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value=""/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/STM32373C-EVAL"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;memoryBlockExpressionList context=&quot;reserved-for-future-use&quot;/&gt;&#13;&#10;"/>
+</launchConfiguration>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/STM32L152D-EVAL.elf.launch b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/STM32L152D-EVAL.elf.launch
new file mode 100644
index 0000000..06bea70
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/STM32L152D-EVAL.elf.launch
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="com.atollic.hardwaredebug.launch.launchConfigurationType">
+<stringAttribute key="com.atollic.hardwaredebug.launch.analyzeCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Start the executable.&#13;&#10;continue"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.enable_swv" value="false"/>
+<intAttribute key="com.atollic.hardwaredebug.launch.formatVersion" value="2"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.initCommands" value=""/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.ipAddress" value="localhost"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.jtagDevice" value="ST-LINK"/>
+<intAttribute key="com.atollic.hardwaredebug.launch.portNumber" value="61234"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.remoteCommand" value="target extended-remote"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.runCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#13;&#10;&#13;&#10;# Set a breakpoint at main().&#13;&#10;tbreak main&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Run to the breakpoint.&#13;&#10;continue"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.serverParam" value="-p 61234 -l 1 -d"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.startServer" value="true"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.swd_mode" value="true"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_port" value="61235"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_trace_div" value="8"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.swv_trace_hclk" value="8000000"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.swv_wait_for_sync" value="true"/>
+<booleanAttribute key="com.atollic.hardwaredebug.launch.useRemoteTarget" value="true"/>
+<stringAttribute key="com.atollic.hardwaredebug.launch.verifyCommands" value="# Set flash parallelism mode to 32, 16, or 8 bit when using STM32 F2/F4 microcontrollers&#13;&#10;# Uncomment next line, 2=32 bit, 1=16 bit and 0=8 bit parallelism mode&#13;&#10;#monitor flash set_parallelism_mode 2&#13;&#10;&#13;&#10;# Load the program executable&#13;&#10;load&#13;&#10;&#13;&#10;# Set a breakpoint at main().&#13;&#10;tbreak main&#13;&#10;&#13;&#10;# Reset to known state&#13;&#10;monitor reset&#13;&#10;&#13;&#10;# Run to the breakpoint.&#13;&#10;continue"/>
+<booleanAttribute key="com.atollic.hardwaredebug.stlink.enable_logging" value="false"/>
+<stringAttribute key="com.atollic.hardwaredebug.stlink.log_file" value="C:\VSS\BARRACUDA\INTRODUCTION PACKAGE\FIRMWARE\STM32_USB-FS-Device_Lib\Project\Device_Firmware_Upgrade\binary_template\TrueSTUDIO\STM32L152D-EVAL\Debug\st-link_gdbserver_log.txt"/>
+<booleanAttribute key="com.atollic.hardwaredebug.stlink.verify_flash" value="false"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.DEBUG_NAME" value="${TOOLCHAIN_PATH}/arm-atollic-eabi-gdb"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.commandFactory" value="Standard (Windows)"/>
+<stringAttribute key="org.eclipse.cdt.debug.mi.core.protocol" value="mi"/>
+<booleanAttribute key="org.eclipse.cdt.debug.mi.core.verboseMode" value="false"/>
+<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="${TOOLCHAIN_PATH}/arm-atollic-eabi-gdb"/>
+<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
+<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/>
+<stringAttribute key="org.eclipse.cdt.launch.FORMAT" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&lt;contentList/&gt;"/>
+<stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;globalVariableList/&gt;&#13;&#10;"/>
+<stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;memoryBlockExpressionList/&gt;&#13;&#10;"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/STM32L152D-EVAL.elf"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="STM32L152D-EVAL"/>
+<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value=""/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/STM32L152D-EVAL"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/stm32_flash.ld b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/stm32_flash.ld
new file mode 100644
index 0000000..baf2d84
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/TrueSTUDIO/STM32L152D-EVAL/stm32_flash.ld
@@ -0,0 +1,171 @@
+/*
+*****************************************************************************
+**
+** File : stm32_flash.ld
+**
+** Abstract : Linker script for stm32l1xx_hd Device with
+** 384KByte FLASH, 48KByte RAM
+**
+** Set heap size, stack size and stack location according
+** to application requirements.
+**
+** Set memory bank area and size if external memory is used.
+**
+** Target : STMicroelectronics STM32
+**
+** Environment : Atollic TrueSTUDIO(R)
+**
+** Distribution: The file is distributed “as is,” without any warranty
+** of any kind.
+**
+** (c)Copyright Atollic AB.
+** You may use this file as-is or modify it according to the needs of your
+** project. Distribution of this file (unmodified or modified) is not
+** permitted. Atollic AB permit registered Atollic TrueSTUDIO(R) users the
+** rights to distribute the assembled, compiled & linked contents of this
+** file as part of an application binary file, provided that it is built
+** using the Atollic TrueSTUDIO(R) toolchain.
+**
+*****************************************************************************
+*/
+
+/* Entry Point */
+ENTRY(Reset_Handler)
+
+/* Highest address of the user mode stack */
+_estack = 0x2000BFF8;
+
+/* Generate a link error if heap and stack don't fit into RAM */
+_Min_Heap_Size = 0; /* required amount of heap */
+_Min_Stack_Size = 0x800; /* required amount of stack */
+
+/* Specify the memory areas */
+MEMORY
+{
+ FLASH (rx) : ORIGIN = 0x08003000, LENGTH = 384K- 0x3000
+ RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 48K
+ MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
+}
+
+/* Define output sections */
+SECTIONS
+{
+ /* The startup code goes first into FLASH */
+ .isr_vector :
+ {
+ . = ALIGN(4);
+ KEEP(*(.isr_vector)) /* Startup code */
+ . = ALIGN(4);
+ } >FLASH
+
+ /* The program code and other data goes into FLASH */
+ .text :
+ {
+ . = ALIGN(4);
+ *(.text) /* .text sections (code) */
+ *(.text*) /* .text* sections (code) */
+ *(.rodata) /* .rodata sections (constants, strings, etc.) */
+ *(.rodata*) /* .rodata* sections (constants, strings, etc.) */
+ *(.glue_7) /* glue arm to thumb code */
+ *(.glue_7t) /* glue thumb to arm code */
+ *(.eh_frame)
+
+ KEEP (*(.init))
+ KEEP (*(.fini))
+
+ . = ALIGN(4);
+ _etext = .; /* define a global symbols at end of code */
+ } >FLASH
+
+
+ .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
+ .ARM : {
+ __exidx_start = .;
+ *(.ARM.exidx*)
+ __exidx_end = .;
+ } >FLASH
+
+ .preinit_array :
+ {
+ PROVIDE_HIDDEN (__preinit_array_start = .);
+ KEEP (*(.preinit_array*))
+ PROVIDE_HIDDEN (__preinit_array_end = .);
+ } >FLASH
+ .init_array :
+ {
+ PROVIDE_HIDDEN (__init_array_start = .);
+ KEEP (*(SORT(.init_array.*)))
+ KEEP (*(.init_array*))
+ PROVIDE_HIDDEN (__init_array_end = .);
+ } >FLASH
+ .fini_array :
+ {
+ PROVIDE_HIDDEN (__fini_array_start = .);
+ KEEP (*(.fini_array*))
+ KEEP (*(SORT(.fini_array.*)))
+ PROVIDE_HIDDEN (__fini_array_end = .);
+ } >FLASH
+
+ /* used by the startup to initialize data */
+ _sidata = .;
+
+ /* Initialized data sections goes into RAM, load LMA copy after code */
+ .data : AT ( _sidata )
+ {
+ . = ALIGN(4);
+ _sdata = .; /* create a global symbol at data start */
+ *(.data) /* .data sections */
+ *(.data*) /* .data* sections */
+
+ . = ALIGN(4);
+ _edata = .; /* define a global symbol at data end */
+ } >RAM
+
+ /* Uninitialized data section */
+ . = ALIGN(4);
+ .bss :
+ {
+ /* This is used by the startup in order to initialize the .bss secion */
+ _sbss = .; /* define a global symbol at bss start */
+ __bss_start__ = _sbss;
+ *(.bss)
+ *(.bss*)
+ *(COMMON)
+
+ . = ALIGN(4);
+ _ebss = .; /* define a global symbol at bss end */
+ __bss_end__ = _ebss;
+ } >RAM
+
+ PROVIDE ( end = _ebss );
+ PROVIDE ( _end = _ebss );
+
+ /* User_heap_stack section, used to check that there is enough RAM left */
+ ._user_heap_stack :
+ {
+ . = ALIGN(4);
+ . = . + _Min_Heap_Size;
+ . = . + _Min_Stack_Size;
+ . = ALIGN(4);
+ } >RAM
+
+ /* MEMORY_bank1 section, code must be located here explicitly */
+ /* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
+ .memory_b1_text :
+ {
+ *(.mb1text) /* .mb1text sections (code) */
+ *(.mb1text*) /* .mb1text* sections (code) */
+ *(.mb1rodata) /* read-only data (constants) */
+ *(.mb1rodata*)
+ } >MEMORY_B1
+
+ /* Remove information from the standard libraries */
+ /DISCARD/ :
+ {
+ libc.a ( * )
+ libm.a ( * )
+ libgcc.a ( * )
+ }
+
+ .ARM.attributes 0 : { *(.ARM.attributes) }
+}
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/inc/stm32f37x_conf.h b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/inc/stm32f37x_conf.h
new file mode 100644
index 0000000..3d39101
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/inc/stm32f37x_conf.h
@@ -0,0 +1,83 @@
+/**
+ ******************************************************************************
+ * @file stm32f37x_conf.h
+ * @author MCD Application Team
+ * @version V4.0.0
+ * @date 21-January-2013
+ * @brief Library configuration file.
+ ******************************************************************************
+ * @attention
+ *
+ * <h2><center>&copy; COPYRIGHT 2013 STMicroelectronics</center></h2>
+ *
+ * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
+ * You may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.st.com/software_license_agreement_liberty_v2
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************
+ */
+
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __STM32F37X_CONF_H
+#define __STM32F37X_CONF_H
+
+/* Includes ------------------------------------------------------------------*/
+/* Comment the line below to disable peripheral header file inclusion */
+#include "stm32f37x_adc.h"
+#include "stm32f37x_can.h"
+#include "stm32f37x_cec.h"
+#include "stm32f37x_crc.h"
+#include "stm32f37x_comp.h"
+#include "stm32f37x_dac.h"
+#include "stm32f37x_dbgmcu.h"
+#include "stm32f37x_dma.h"
+#include "stm32f37x_exti.h"
+#include "stm32f37x_flash.h"
+#include "stm32f37x_gpio.h"
+#include "stm32f37x_syscfg.h"
+#include "stm32f37x_i2c.h"
+#include "stm32f37x_iwdg.h"
+#include "stm32f37x_pwr.h"
+#include "stm32f37x_rcc.h"
+#include "stm32f37x_rtc.h"
+#include "stm32f37x_sdadc.h"
+#include "stm32f37x_spi.h"
+#include "stm32f37x_tim.h"
+#include "stm32f37x_usart.h"
+#include "stm32f37x_wwdg.h"
+#include "stm32f37x_misc.h" /* High level functions for NVIC and SysTick (add-on to CMSIS functions) */
+
+/* Exported types ------------------------------------------------------------*/
+/* Exported constants --------------------------------------------------------*/
+/* Uncomment the line below to expanse the "assert_param" macro in the
+ Standard Peripheral Library drivers code */
+/* #define USE_FULL_ASSERT 1 */
+
+/* Exported macro ------------------------------------------------------------*/
+#ifdef USE_FULL_ASSERT
+
+/**
+ * @brief The assert_param macro is used for function's parameters check.
+ * @param expr: If expr is false, it calls assert_failed function which reports
+ * the name of the source file and the source line number of the call
+ * that failed. If expr is true, it returns no value.
+ * @retval None
+ */
+ #define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))
+/* Exported functions ------------------------------------------------------- */
+ void assert_failed(uint8_t* file, uint32_t line);
+#else
+ #define assert_param(expr) ((void)0)
+#endif /* USE_FULL_ASSERT */
+
+#endif /* __STM32F37X_CONF_H */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/stm32_it.c b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/stm32_it.c
new file mode 100644
index 0000000..b8b7e92
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/stm32_it.c
@@ -0,0 +1,180 @@
+/**
+ ******************************************************************************
+ * @file stm32_it.c
+ * @author MCD Application Team
+ * @version V4.0.0
+ * @date 21-January-2013
+ * @brief Main Interrupt Service Routines.
+ * This file provides template for all exceptions handler and peripherals
+ * interrupt service routine.
+ ******************************************************************************
+ * @attention
+ *
+ * <h2><center>&copy; COPYRIGHT 2013 STMicroelectronics</center></h2>
+ *
+ * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
+ * You may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.st.com/software_license_agreement_liberty_v2
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************
+ */
+
+
+/* Includes ------------------------------------------------------------------*/
+#include "stm32_it.h"
+#include "main.h"
+
+/* Private typedef -----------------------------------------------------------*/
+/* Private define ------------------------------------------------------------*/
+/* Private macro -------------------------------------------------------------*/
+/* Private variables ---------------------------------------------------------*/
+/* Private function prototypes -----------------------------------------------*/
+/* Private functions ---------------------------------------------------------*/
+
+/******************************************************************************/
+/* Cortex-M Processor Exceptions Handlers */
+/******************************************************************************/
+
+/*******************************************************************************
+* Function Name : NMI_Handler
+* Description : This function handles NMI exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void NMI_Handler(void)
+{
+}
+
+/*******************************************************************************
+* Function Name : HardFault_Handler
+* Description : This function handles Hard Fault exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void HardFault_Handler(void)
+{
+ /* Go to infinite loop when Hard Fault exception occurs */
+ while (1)
+ {
+ }
+}
+
+/*******************************************************************************
+* Function Name : MemManage_Handler
+* Description : This function handles Memory Manage exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void MemManage_Handler(void)
+{
+ /* Go to infinite loop when Memory Manage exception occurs */
+ while (1)
+ {
+ }
+}
+
+/*******************************************************************************
+* Function Name : BusFault_Handler
+* Description : This function handles Bus Fault exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void BusFault_Handler(void)
+{
+ /* Go to infinite loop when Bus Fault exception occurs */
+ while (1)
+ {
+ }
+}
+
+/*******************************************************************************
+* Function Name : UsageFault_Handler
+* Description : This function handles Usage Fault exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void UsageFault_Handler(void)
+{
+ /* Go to infinite loop when Usage Fault exception occurs */
+ while (1)
+ {
+ }
+}
+
+/*******************************************************************************
+* Function Name : SVC_Handler
+* Description : This function handles SVCall exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void SVC_Handler(void)
+{
+}
+
+/*******************************************************************************
+* Function Name : DebugMon_Handler
+* Description : This function handles Debug Monitor exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void DebugMon_Handler(void)
+{
+}
+
+/*******************************************************************************
+* Function Name : PendSV_Handler
+* Description : This function handles PendSVC exception.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void PendSV_Handler(void)
+{
+}
+
+/*******************************************************************************
+* Function Name : SysTick_Handler
+* Description : This function handles SysTick Handler.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+void SysTick_Handler(void)
+{
+ TimingDelay_Decrement();
+}
+
+/******************************************************************************/
+/* STM32 Peripherals Interrupt Handlers */
+/* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */
+/* available peripheral interrupt handler's name please refer to the startup */
+/* file (startup_stm32xxx.s). */
+/******************************************************************************/
+
+/*******************************************************************************
+* Function Name : PPP_IRQHandler
+* Description : This function handles PPP interrupt request.
+* Input : None
+* Output : None
+* Return : None
+*******************************************************************************/
+/*void PPP_IRQHandler(void)
+{
+}*/
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
diff --git a/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/system_stm32f30x.c b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/system_stm32f30x.c
new file mode 100644
index 0000000..31faf5c
--- /dev/null
+++ b/thirdparty/STM32_USB-FS-Device_Lib_V4.0.0/Projects/Device_Firmware_Upgrade/binary_template/src/system_stm32f30x.c
@@ -0,0 +1,382 @@
+/**
+ ******************************************************************************
+ * @file system_stm32f30x.c
+ * @author MCD Application Team
+ * @version V4.0.0
+ * @date 21-January-2013
+ * @brief CMSIS Cortex-M4 Device Peripheral Access Layer System Source File.
+ * This file contains the system clock configuration for STM32F30x devices,
+ * and is generated by the clock configuration tool
+ * stm32f30x_Clock_Configuration_V1.0.0.xls
+ *
+ * 1. This file provides two functions and one global variable to be called from
+ * user application:
+ * - SystemInit(): Setups the system clock (System clock source, PLL Multiplier
+ * and Divider factors, AHB/APBx prescalers and Flash settings),
+ * depending on the configuration made in the clock xls tool.
+ * This function is called at startup just after reset and
+ * before branch to main program. This call is made inside
+ * the "startup_stm32f30x.s" file.
+ *
+ * - SystemCoreClock variable: Contains the core clock (HCLK), it can be used
+ * by the user application to setup the SysTick
+ * timer or configure other parameters.
+ *
+ * - SystemCoreClockUpdate(): Updates the variable SystemCoreClock and must
+ * be called whenever the core clock is changed
+ * during program execution.
+ *
+ * 2. After each device reset the HSI (8 MHz) is used as system clock source.
+ * Then SystemInit() function is called, in "startup_stm32f30x.s" file, to
+ * configure the system clock before to branch to main program.
+ *
+ * 3. If the system clock source selected by user fails to startup, the SystemInit()
+ * function will do nothing and HSI still used as system clock source. User can
+ * add some code to deal with this issue inside the SetSysClock() function.
+ *
+ * 4. The default value of HSE crystal is set to 8MHz, refer to "HSE_VALUE" define
+ * in "stm32f30x.h" file. When HSE is used as system clock source, directly or
+ * through PLL, and you are using different crystal you have to adapt the HSE
+ * value to your own configuration.
+ *
+ * 5. This file configures the system clock as follows:
+ *=============================================================================
+ * Supported STM32F30x device
+ *-----------------------------------------------------------------------------
+ * System Clock source | PLL (HSE)
+ *-----------------------------------------------------------------------------
+ * SYSCLK(Hz) | 72000000
+ *-----------------------------------------------------------------------------
+ * HCLK(Hz) | 72000000
+ *-----------------------------------------------------------------------------
+ * AHB Prescaler | 1
+ *-----------------------------------------------------------------------------
+ * APB2 Prescaler | 1
+ *-----------------------------------------------------------------------------
+ * APB1 Prescaler | 2
+ *-----------------------------------------------------------------------------
+ * HSE Frequency(Hz) | 8000000
+ *----------------------------------------------------------------------------
+ * PLLMUL | 9
+ *-----------------------------------------------------------------------------
+ * PREDIV | 1
+ *-----------------------------------------------------------------------------
+ * USB Clock | ENABLE
+ *-----------------------------------------------------------------------------
+ * Flash Latency(WS) | 2
+ *-----------------------------------------------------------------------------
+ * Prefetch Buffer | ON
+ *-----------------------------------------------------------------------------
+ *=============================================================================
+ ******************************************************************************
+ * @attention
+ *
+ * <h2><center>&copy; COPYRIGHT 2013 STMicroelectronics</center></h2>
+ *
+ * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
+ * You may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.st.com/software_license_agreement_liberty_v2
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ******************************************************************************
+ */
+/** @addtogroup CMSIS
+ * @{
+ */
+
+/** @addtogroup stm32f30x_system
+ * @{
+ */
+
+/** @addtogroup STM32F30x_System_Private_Includes
+ * @{
+ */
+
+#include "stm32f30x.h"
+
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_TypesDefinitions
+ * @{
+ */
+
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_Defines
+ * @{
+ */
+/*!< Uncomment the following line if you need to relocate your vector Table in
+ Internal SRAM. */
+/* #define VECT_TAB_SRAM */
+#define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field.
+ This value must be a multiple of 0x200. */
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_Macros
+ * @{
+ */
+
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_Variables
+ * @{
+ */
+
+ uint32_t SystemCoreClock = 72000000;
+
+ __I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9};
+
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_FunctionPrototypes
+ * @{
+ */
+
+static void SetSysClock(void);
+
+/**
+ * @}
+ */
+
+/** @addtogroup STM32F30x_System_Private_Functions
+ * @{
+ */
+
+/**
+ * @brief Setup the microcontroller system
+ * Initialize the Embedded Flash Interface, the PLL and update the
+ * SystemFrequency variable.
+ * @param None
+ * @retval None
+ */
+void SystemInit(void)
+{
+ /* FPU settings ------------------------------------------------------------*/
+ #if (__FPU_PRESENT == 1) && (__FPU_USED == 1)
+ SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */
+ #endif
+
+ /* Reset the RCC clock configuration to the default reset state ------------*/
+ /* Set HSION bit */
+ RCC->CR |= (uint32_t)0x00000001;
+
+ /* Reset CFGR register */
+ RCC->CFGR &= 0xF87FC00C;
+
+ /* Reset HSEON, CSSON and PLLON bits */
+ RCC->CR &= (uint32_t)0xFEF6FFFF;
+
+ /* Reset HSEBYP bit */
+ RCC->CR &= (uint32_t)0xFFFBFFFF;
+
+ /* Reset PLLSRC, PLLXTPRE, PLLMUL and USBPRE bits */
+ RCC->CFGR &= (uint32_t)0xFF80FFFF;
+
+ /* Reset PREDIV1[3:0] bits */
+ RCC->CFGR2 &= (uint32_t)0xFFFFFFF0;
+
+ /* Reset USARTSW[1:0], I2CSW and TIMs bits */
+ RCC->CFGR3 &= (uint32_t)0xFF00FCCC;
+
+ /* Disable all interrupts */
+ RCC->CIR = 0x00000000;
+
+ /* Configure the System clock source, PLL Multiplier and Divider factors,
+ AHB/APBx prescalers and Flash settings ----------------------------------*/
+ SetSysClock();
+
+#ifdef VECT_TAB_SRAM
+ SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */
+#else
+ SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */
+#endif
+}
+
+/**
+ * @brief Update SystemCoreClock variable according to Clock Register Values.
+ * The SystemCoreClock variable contains the core clock (HCLK), it can
+ * be used by the user application to setup the SysTick timer or configure
+ * other parameters.
+ *
+ * @note Each time the core clock (HCLK) changes, this function must be called
+ * to update SystemCoreClock variable value. Otherwise, any configuration
+ * based on this variable will be incorrect.
+ *
+ * @note - The system frequency computed by this function is not the real
+ * frequency in the chip. It is calculated based on the predefined
+ * constant and the selected clock source:
+ *
+ * - If SYSCLK source is HSI, SystemCoreClock will contain the HSI_VALUE(*)
+ *
+ * - If SYSCLK source is HSE, SystemCoreClock will contain the HSE_VALUE(**)
+ *
+ * - If SYSCLK source is PLL, SystemCoreClock will contain the HSE_VALUE(**)
+ * or HSI_VALUE(*) multiplied/divided by the PLL factors.
+ *
+ * (*) HSI_VALUE is a constant defined in stm32f30x.h file (default value
+ * 8 MHz) but the real value may vary depending on the variations
+ * in voltage and temperature.
+ *
+ * (**) HSE_VALUE is a constant defined in stm32f30x.h file (default value
+ * 8 MHz), user has to ensure that HSE_VALUE is same as the real
+ * frequency of the crystal used. Otherwise, this function may
+ * have wrong result.
+ *
+ * - The result of this function could be not correct when using fractional
+ * value for HSE crystal.
+ *
+ * @param None
+ * @retval None
+ */
+void SystemCoreClockUpdate (void)
+{
+ uint32_t tmp = 0, pllmull = 0, pllsource = 0, prediv1factor = 0;
+
+ /* Get SYSCLK source -------------------------------------------------------*/
+ tmp = RCC->CFGR & RCC_CFGR_SWS;
+
+ switch (tmp)
+ {
+ case 0x00: /* HSI used as system clock */
+ SystemCoreClock = HSI_VALUE;
+ break;
+ case 0x04: /* HSE used as system clock */
+ SystemCoreClock = HSE_VALUE;
+ break;
+ case 0x08: /* PLL used as system clock */
+ /* Get PLL clock source and multiplication factor ----------------------*/
+ pllmull = RCC->CFGR & RCC_CFGR_PLLMULL;
+ pllsource = RCC->CFGR & RCC_CFGR_PLLSRC;
+ pllmull = ( pllmull >> 18) + 2;
+
+ if (pllsource == 0x00)
+ {
+ /* HSI oscillator clock divided by 2 selected as PLL clock entry */
+ SystemCoreClock = (HSI_VALUE >> 1) * pllmull;
+ }
+ else
+ {
+ prediv1factor = (RCC->CFGR2 & RCC_CFGR2_PREDIV1) + 1;
+ /* HSE oscillator clock selected as PREDIV1 clock entry */
+ SystemCoreClock = (HSE_VALUE / prediv1factor) * pllmull;
+ }
+ break;
+ default: /* HSI used as system clock */
+ SystemCoreClock = HSI_VALUE;
+ break;
+ }
+ /* Compute HCLK clock frequency ----------------*/
+ /* Get HCLK prescaler */
+ tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4)];
+ /* HCLK clock frequency */
+ SystemCoreClock >>= tmp;
+}
+
+/**
+ * @brief Configures the System clock source, PLL Multiplier and Divider factors,
+ * AHB/APBx prescalers and Flash settings
+ * @note This function should be called only once the RCC clock configuration
+ * is reset to the default reset state (done in SystemInit() function).
+ * @param None
+ * @retval None
+ */
+static void SetSysClock(void)
+{
+ __IO uint32_t StartUpCounter = 0, HSEStatus = 0;
+
+/******************************************************************************/
+/* PLL (clocked by HSE) used as System clock source */
+/******************************************************************************/
+
+ /* SYSCLK, HCLK, PCLK2 and PCLK1 configuration -----------*/
+ /* Enable HSE */
+ RCC->CR |= ((uint32_t)RCC_CR_HSEON);
+
+ /* Wait till HSE is ready and if Time out is reached exit */
+ do
+ {
+ HSEStatus = RCC->CR & RCC_CR_HSERDY;
+ StartUpCounter++;
+ } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT));
+
+ if ((RCC->CR & RCC_CR_HSERDY) != RESET)
+ {
+ HSEStatus = (uint32_t)0x01;
+ }
+ else
+ {
+ HSEStatus = (uint32_t)0x00;
+ }
+
+ if (HSEStatus == (uint32_t)0x01)
+ {
+ /* Enable Prefetch Buffer and set Flash Latency */
+ FLASH->ACR = FLASH_ACR_PRFTBE | (uint32_t)FLASH_ACR_LATENCY_1;
+
+ /* HCLK = SYSCLK / 1 */
+ RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV1;
+
+ /* PCLK2 = HCLK / 1 */
+ RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1;
+
+ /* PCLK1 = HCLK / 2 */
+ RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV2;
+
+ /* PLL configuration */
+ RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLMULL));
+ RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_PREDIV1 | RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLMULL9);
+
+ /* Enable PLL */
+ RCC->CR |= RCC_CR_PLLON;
+
+ /* Wait till PLL is ready */
+ while((RCC->CR & RCC_CR_PLLRDY) == 0)
+ {
+ }
+
+ /* Select PLL as system clock source */
+ RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));
+ RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL;
+
+ /* Wait till PLL is used as system clock source */
+ while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)RCC_CFGR_SWS_PLL)
+ {
+ }
+ }
+ else
+ { /* If HSE fails to start-up, the application will have wrong clock
+ configuration. User can add here some code to deal with this error */
+ }
+}
+
+/**
+ * @}
+ */
+
+/**
+ * @}
+ */
+
+/**
+ * @}
+ */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
+