master
ThinkPad-T460P 2021-03-11 19:09:05 +08:00
parent e018861597
commit eb930609aa
31 changed files with 307 additions and 118 deletions

View File

@ -4,7 +4,13 @@
<cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629"> <cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629" moduleId="org.eclipse.cdt.core.settings" name="Debug"> <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings> <externalSettings>
<externalSetting/> <externalSetting>
<entry flags="RESOLVED" kind="includePath" name="Middlewares/Lab-Project-FreeRTOS-POSIX/include/private"/>
<entry flags="RESOLVED" kind="includePath" name="Middlewares/Lab-Project-FreeRTOS-POSIX/include/FreeRTOS_POSIX"/>
<entry flags="RESOLVED" kind="includePath" name="Middlewares/Lab-Project-FreeRTOS-POSIX/include/FreeRTOS_POSIX/sys"/>
<entry flags="RESOLVED" kind="includePath" name="Middlewares/Lab-Project-FreeRTOS-POSIX/FreeRTOS-Plus-POSIX/include"/>
<entry flags="RESOLVED" kind="includePath" name="Middlewares/Lab-Project-FreeRTOS-POSIX/FreeRTOS-Plus-POSIX/include/portable"/>
</externalSetting>
</externalSettings> </externalSettings>
<extensions> <extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/> <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
@ -25,7 +31,7 @@
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.433736509" name="CpuId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid" useByScannerDiscovery="false" value="0" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.433736509" name="CpuId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid" useByScannerDiscovery="false" value="0" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid.276377927" name="CpuCoreId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid" useByScannerDiscovery="false" value="0" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid.276377927" name="CpuCoreId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid" useByScannerDiscovery="false" value="0" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1980681105" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="genericBoard" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1980681105" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="genericBoard" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1465740073" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.3 || Debug || true || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32 || STM32F107VCTx || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/Third_Party/FreeRTOS/Source/include | ../USB_DEVICE/Target | ../Drivers/CMSIS/Device/ST/STM32F1xx/Include | ../Drivers/CMSIS/Include | ../Core/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc | ../USB_DEVICE/App | ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy | ../Drivers/STM32F1xx_HAL_Driver/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3 || || || USE_HAL_DRIVER | STM32F107xC || || Drivers | CMSIS | Core/Startup | Middlewares | Core | USB_DEVICE || || || ${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || " valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1465740073" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.4 || Debug || true || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32 || STM32F107VCTx || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/Third_Party/FreeRTOS/Source/include | ../USB_DEVICE/Target | ../Drivers/CMSIS/Device/ST/STM32F1xx/Include | ../Drivers/CMSIS/Include | ../Core/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc | ../USB_DEVICE/App | ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy | ../Drivers/STM32F1xx_HAL_Driver/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3 || || || USE_HAL_DRIVER | STM32F107xC || || Drivers | CMSIS | Core/Startup | Middlewares | Core | USB_DEVICE || || || ${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat.1573745116" name="Use float with printf from newlib-nano (-u _printf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat" useByScannerDiscovery="false" value="true" valueType="boolean"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat.1573745116" name="Use float with printf from newlib-nano (-u _printf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoscanffloat.142703396" name="Use float with scanf from newlib-nano (-u _scanf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoscanffloat" useByScannerDiscovery="false" value="false" valueType="boolean"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoscanffloat.142703396" name="Use float with scanf from newlib-nano (-u _scanf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoscanffloat" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c.1187387752" name="Runtime library" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c.value.standard_c" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c.1187387752" name="Runtime library" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.runtimelibrary_c.value.standard_c" valueType="enumerated"/>
@ -36,15 +42,17 @@
<builder buildPath="${workspace_loc:/NaviKit_stm32}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.901379162" keepEnvironmentInBuildfile="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="unlimited" stopOnErr="false" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/> <builder buildPath="${workspace_loc:/NaviKit_stm32}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.901379162" keepEnvironmentInBuildfile="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="unlimited" stopOnErr="false" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/>
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.451303658" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler"> <tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.451303658" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler">
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.599548003" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g3" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.599548003" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g3" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.includepaths.121590855" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.includepaths" valueType="includePath"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.definedsymbols.1434790555" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.definedsymbols" valueType="definedSymbols"/>
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.259361276" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/> <inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.259361276" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/>
</tool> </tool>
<tool command="gcc" commandLinePattern="${COMMAND} ${INPUTS} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT}" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.770357739" name="MCU GCC Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler"> <tool command="gcc" commandLinePattern="${COMMAND} ${INPUTS} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT}" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.770357739" name="MCU GCC Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler">
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.883307296" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g3" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.883307296" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g3" valueType="enumerated"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.1182522958" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.o0" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.1182522958" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.o0" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.1676188920" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols"> <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.1676188920" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="STM32F107xC"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="STM32F107xC"/>
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
</option> </option>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.186388616" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath"> <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.186388616" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="../App/Inc"/> <listOptionValue builtIn="false" value="../App/Inc"/>
@ -57,8 +65,8 @@
<listOptionValue builtIn="false" value="../Middlewares/EasyLogger/easylogger/inc"/> <listOptionValue builtIn="false" value="../Middlewares/EasyLogger/easylogger/inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc"/> <listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Core/Inc"/> <listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Core/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/> <listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3"/> <listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/App"/> <listOptionValue builtIn="false" value="../USB_DEVICE/App"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/Target"/> <listOptionValue builtIn="false" value="../USB_DEVICE/Target"/>
@ -92,10 +100,10 @@
<fileInfo id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629.1450340378" name="elog_cfg.h" rcbsApplicability="disable" resourcePath="Middlewares/EasyLogger/easylogger/inc/elog_cfg.h" toolsToInvoke=""/> <fileInfo id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629.1450340378" name="elog_cfg.h" rcbsApplicability="disable" resourcePath="Middlewares/EasyLogger/easylogger/inc/elog_cfg.h" toolsToInvoke=""/>
<sourceEntries> <sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="App"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="App"/>
<entry excluding="Lab-Project-FreeRTOS-POSIX|EasyLogger/easylogger/plugins|EasyLogger/docs" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="CMSIS"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="CMSIS"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/>
<entry excluding="Third_Party/FreeRTOS-Plus/Source/Utilities/logging|EasyLogger/easylogger/plugins|EasyLogger/docs" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="USB_DEVICE"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="USB_DEVICE"/>
</sourceEntries> </sourceEntries>
</configuration> </configuration>
@ -104,7 +112,9 @@
</cconfiguration> </cconfiguration>
<cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692"> <cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692" moduleId="org.eclipse.cdt.core.settings" name="Release"> <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/> <externalSettings>
<externalSetting/>
</externalSettings>
<extensions> <extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/> <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
@ -124,22 +134,24 @@
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.1398882809" name="CpuId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid" useByScannerDiscovery="false" value="0" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.1398882809" name="CpuId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid" useByScannerDiscovery="false" value="0" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid.1532730982" name="CpuCoreId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid" useByScannerDiscovery="false" value="0" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid.1532730982" name="CpuCoreId" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_coreid" useByScannerDiscovery="false" value="0" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1861067852" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="genericBoard" valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1861067852" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="genericBoard" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1239010509" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.3 || Release || false || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32 || STM32F107VCTx || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/Third_Party/FreeRTOS/Source/include | ../USB_DEVICE/Target | ..//CMSIS/Driver/Include | ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3 | ../Drivers/CMSIS/Device/ST/STM32F1xx/Include | ../Drivers/CMSIS/Include | ../Core/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc | ../USB_DEVICE/App | ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy | ../Drivers/STM32F1xx_HAL_Driver/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/HID/Inc || || || USE_HAL_DRIVER | STM32F107xC || || Drivers | CMSIS | Core/Startup | Middlewares | Core | USB_DEVICE || || || ${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || " valueType="string"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1239010509" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.4 || Release || false || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32 || STM32F107VCTx || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/Third_Party/FreeRTOS/Source/include | ../USB_DEVICE/Target | ..//CMSIS/Driver/Include | ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3 | ../Drivers/CMSIS/Device/ST/STM32F1xx/Include | ../Drivers/CMSIS/Include | ../Core/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc | ../USB_DEVICE/App | ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy | ../Drivers/STM32F1xx_HAL_Driver/Inc | ../Middlewares/ST/STM32_USB_Device_Library/Class/HID/Inc || || || USE_HAL_DRIVER | STM32F107xC || || Drivers | CMSIS | Core/Startup | Middlewares | Core | USB_DEVICE || || || ${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary.1121264663" name="Convert to binary file (-O binary)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary" useByScannerDiscovery="false" value="false" valueType="boolean"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary.1121264663" name="Convert to binary file (-O binary)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex.1737555266" name="Convert to Intel Hex file (-O ihex)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" useByScannerDiscovery="false" value="true" valueType="boolean"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex.1737555266" name="Convert to Intel Hex file (-O ihex)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat.1638170040" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat" value="true" valueType="boolean"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat.1638170040" name="Use float with printf from newlib-nano (-u _printf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.238068216" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/> <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.238068216" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
<builder buildPath="${workspace_loc:/NaviKit_stm32}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.95113451" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/> <builder buildPath="${workspace_loc:/NaviKit_stm32}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.95113451" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/>
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.1535045086" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler"> <tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.1535045086" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler">
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.767286012" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g0" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.767286012" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g0" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.includepaths.1444171247" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.includepaths" valueType="includePath"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.definedsymbols.1191563716" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.definedsymbols" valueType="definedSymbols"/>
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.611490005" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/> <inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.611490005" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/>
</tool> </tool>
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.632904416" name="MCU GCC Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler"> <tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.632904416" name="MCU GCC Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler">
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.1856652564" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.1856652564" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.2079025018" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.o0" valueType="enumerated"/> <option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.2079025018" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.o0" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.1412817126" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols"> <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.1412817126" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="STM32F107xC"/> <listOptionValue builtIn="false" value="STM32F107xC"/>
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
</option> </option>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.968919675" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath"> <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.968919675" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="../App/Inc"/> <listOptionValue builtIn="false" value="../App/Inc"/>
@ -152,11 +164,13 @@
<listOptionValue builtIn="false" value="../Middlewares/EasyLogger/easylogger/inc"/> <listOptionValue builtIn="false" value="../Middlewares/EasyLogger/easylogger/inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc"/> <listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Core/Inc"/> <listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Core/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/> <listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3"/> <listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/App"/> <listOptionValue builtIn="false" value="../USB_DEVICE/App"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/Target"/> <listOptionValue builtIn="false" value="../USB_DEVICE/Target"/>
<listOptionValue builtIn="false" value="..//CMSIS/Driver/Include"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/HID/Inc"/>
</option> </option>
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.77383630" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/> <inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.77383630" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/>
</tool> </tool>
@ -185,10 +199,11 @@
</toolChain> </toolChain>
</folderInfo> </folderInfo>
<sourceEntries> <sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="App"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="App"/>
<entry excluding="Lab-Project-FreeRTOS-POSIX|EasyLogger/easylogger/plugins" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="CMSIS"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/>
<entry excluding="EasyLogger/easylogger/plugins" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="USB_DEVICE"/> <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="USB_DEVICE"/>
</sourceEntries> </sourceEntries>
</configuration> </configuration>

3
.gitmodules vendored
View File

@ -1,3 +1,6 @@
[submodule "Middlewares/EasyLogger"] [submodule "Middlewares/EasyLogger"]
path = Middlewares/EasyLogger path = Middlewares/EasyLogger
url = https://github.com/autolaborcenter/EasyLogger.git url = https://github.com/autolaborcenter/EasyLogger.git
[submodule "Middlewares/Lab-Project-FreeRTOS-POSIX"]
path = Middlewares/Lab-Project-FreeRTOS-POSIX
url = https://github.com/autolaborcenter/Lab-Project-FreeRTOS-POSIX.git

View File

@ -9,46 +9,46 @@ CDefines=USE_HAL_DRIVER;STM32F107xC;USE_HAL_DRIVER;USE_HAL_DRIVER;
[PreviousGenFiles] [PreviousGenFiles]
AdvancedFolderStructure=true AdvancedFolderStructure=true
HeaderFileListSize=15 HeaderFileListSize=15
HeaderFiles#0=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/gpio.h HeaderFiles#0=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/gpio.h
HeaderFiles#1=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/FreeRTOSConfig.h HeaderFiles#1=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/FreeRTOSConfig.h
HeaderFiles#2=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/adc.h HeaderFiles#2=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/adc.h
HeaderFiles#3=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/dma.h HeaderFiles#3=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/dma.h
HeaderFiles#4=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/i2c.h HeaderFiles#4=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/i2c.h
HeaderFiles#5=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/iwdg.h HeaderFiles#5=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/iwdg.h
HeaderFiles#6=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/rtc.h HeaderFiles#6=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/rtc.h
HeaderFiles#7=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/usart.h HeaderFiles#7=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/usart.h
HeaderFiles#8=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usb_device.h HeaderFiles#8=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usb_device.h
HeaderFiles#9=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/Target/usbd_conf.h HeaderFiles#9=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/Target/usbd_conf.h
HeaderFiles#10=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usbd_desc.h HeaderFiles#10=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usbd_desc.h
HeaderFiles#11=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usbd_cdc_if.h HeaderFiles#11=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usbd_cdc_if.h
HeaderFiles#12=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/stm32f1xx_it.h HeaderFiles#12=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/stm32f1xx_it.h
HeaderFiles#13=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/stm32f1xx_hal_conf.h HeaderFiles#13=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/stm32f1xx_hal_conf.h
HeaderFiles#14=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc/main.h HeaderFiles#14=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc/main.h
HeaderFolderListSize=3 HeaderFolderListSize=3
HeaderPath#0=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Inc HeaderPath#0=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Inc
HeaderPath#1=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App HeaderPath#1=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App
HeaderPath#2=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/Target HeaderPath#2=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/Target
HeaderFiles=; HeaderFiles=;
SourceFileListSize=16 SourceFileListSize=16
SourceFiles#0=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/gpio.c SourceFiles#0=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/gpio.c
SourceFiles#1=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/freertos.c SourceFiles#1=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/freertos.c
SourceFiles#2=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/adc.c SourceFiles#2=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/adc.c
SourceFiles#3=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/dma.c SourceFiles#3=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/dma.c
SourceFiles#4=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/i2c.c SourceFiles#4=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/i2c.c
SourceFiles#5=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/iwdg.c SourceFiles#5=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/iwdg.c
SourceFiles#6=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/rtc.c SourceFiles#6=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/rtc.c
SourceFiles#7=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/usart.c SourceFiles#7=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/usart.c
SourceFiles#8=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usb_device.c SourceFiles#8=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usb_device.c
SourceFiles#9=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/Target/usbd_conf.c SourceFiles#9=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/Target/usbd_conf.c
SourceFiles#10=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usbd_desc.c SourceFiles#10=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usbd_desc.c
SourceFiles#11=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App/usbd_cdc_if.c SourceFiles#11=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App/usbd_cdc_if.c
SourceFiles#12=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/stm32f1xx_it.c SourceFiles#12=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/stm32f1xx_it.c
SourceFiles#13=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/stm32f1xx_hal_msp.c SourceFiles#13=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/stm32f1xx_hal_msp.c
SourceFiles#14=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/stm32f1xx_hal_timebase_tim.c SourceFiles#14=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/stm32f1xx_hal_timebase_tim.c
SourceFiles#15=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src/main.c SourceFiles#15=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src/main.c
SourceFolderListSize=3 SourceFolderListSize=3
SourcePath#0=E:/source/STM32CubeIDE/NaviKit_stm32/Core/Src SourcePath#0=E:/source/STM32CubeIDE/NaviKit_EC_stm32/Core/Src
SourcePath#1=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/App SourcePath#1=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/App
SourcePath#2=E:/source/STM32CubeIDE/NaviKit_stm32/USB_DEVICE/Target SourcePath#2=E:/source/STM32CubeIDE/NaviKit_EC_stm32/USB_DEVICE/Target
SourceFiles=; SourceFiles=;

View File

@ -1,4 +1,4 @@
2F62501ED4689FB349E356AB974DBE57=7721402F3CE8DC8D3A6A8AE537EFAC0B 2F62501ED4689FB349E356AB974DBE57=8E4D1FDC05ED3D447D65E8B3A57F2283
8DF89ED150041C4CBC7CB9A9CAA90856=7721402F3CE8DC8D3A6A8AE537EFAC0B 8DF89ED150041C4CBC7CB9A9CAA90856=8E4D1FDC05ED3D447D65E8B3A57F2283
DC22A860405A8BF2F2C095E5B6529F12=02D9A7110C849E46466CD5CF8816F30D DC22A860405A8BF2F2C095E5B6529F12=02D9A7110C849E46466CD5CF8816F30D
eclipse.preferences.version=1 eclipse.preferences.version=1

View File

@ -11,8 +11,8 @@
#include "cmsis_os2.h" #include "cmsis_os2.h"
/* Definitions for ButtonDetect */ /* Definitions for ButtonDetect */
osThreadId_t ButtonDetectHandle; osThreadId_t ButtonDetectTaskHandle;
const osThreadAttr_t ButtonDetect_attributes; const osThreadAttr_t ButtonDetectTask_attributes;
//Timer //Timer
osTimerId_t PwrBtnLongPressTimerHandle; osTimerId_t PwrBtnLongPressTimerHandle;
@ -28,7 +28,7 @@ osTimerId_t CustBtnShortPressTimerHandle;
const osTimerAttr_t CustBtnShortPressTimer_attributes; const osTimerAttr_t CustBtnShortPressTimer_attributes;
void StartButtonDetect(void *argument); void StartButtonDetectTask(void *argument);
//callback //callback
void PwrBtnLongPressTimerCallback(void *argument); void PwrBtnLongPressTimerCallback(void *argument);

View File

@ -3,6 +3,10 @@
#include "cmsis_os2.h" #include "cmsis_os2.h"
osMutexId_t ElogUartMutexHandle;
const osMutexAttr_t ElogUartMutex_attributes;
osMutexId_t ElogOutputMutexHandle;
const osMutexAttr_t ElogOutputMutex_attributes; const osMutexAttr_t ElogOutputMutex_attributes;
osThreadId_t ElogInitTaskHandle; osThreadId_t ElogInitTaskHandle;

12
App/Inc/th_iwdg.h Normal file
View File

@ -0,0 +1,12 @@
#ifndef __TH_IWDG_H__
#define __TH_IWDG_H__
#include "cmsis_os2.h"
osThreadId_t IWDGTaskHandle;
const osThreadAttr_t IWDGTask_attributes;
void StartIWDGTask(void *argument);
#endif

View File

@ -12,9 +12,9 @@
#include "navikit.h" #include "navikit.h"
//Thread //Thread
const osThreadAttr_t ButtonDetect_attributes = { const osThreadAttr_t ButtonDetectTask_attributes = {
.name = "ButtonDetect", .name = "ButtonDetectTask",
.priority = (osPriority_t) osPriorityLow, .priority = (osPriority_t) osPriorityBelowNormal,
.stack_size = 128 * 4 .stack_size = 128 * 4
}; };
@ -41,7 +41,7 @@ const osTimerAttr_t CustBtnShortPressTimer_attributes = {
* @retval None * @retval None
*/ */
/* USER CODE END Header_StartButtonDetect */ /* USER CODE END Header_StartButtonDetect */
void StartButtonDetect(void *argument) void StartButtonDetectTask(void *argument)
{ {
/* USER CODE BEGIN StartButtonDetect */ /* USER CODE BEGIN StartButtonDetect */
/* Infinite loop */ /* Infinite loop */

View File

@ -16,7 +16,7 @@
/* Definitions for CoulombRead */ /* Definitions for CoulombRead */
const osThreadAttr_t CoulombRead_attributes = { const osThreadAttr_t CoulombRead_attributes = {
.name = "CoulombRead", .name = "CoulombRead",
.priority = (osPriority_t) osPriorityLow, .priority = (osPriority_t) osPriorityBelowNormal,
.stack_size = 128 * 4 .stack_size = 128 * 4
}; };

View File

@ -1,3 +1,10 @@
/*
* @Description:
* @Date: 2021-03-09 18:19:26
* @LastEditors: CK.Zh
* @LastEditTime: 2021-03-10 15:07:01
* @FilePath: \NaviKit_EC_stm32\App\Src\th_demo.c
*/
#define LOG_TAG "TH-Demo" #define LOG_TAG "TH-Demo"
#include <th_demo.h> #include <th_demo.h>
@ -6,20 +13,20 @@
const osThreadAttr_t DemoTask1_attributes = { const osThreadAttr_t DemoTask1_attributes = {
.name = "DemoTask1", .name = "DemoTask1",
.priority = (osPriority_t) osPriorityNormal, .priority = (osPriority_t) osPriorityLow2,
.stack_size = 128 * 4 .stack_size = 128 * 8
}; };
const osThreadAttr_t DemoTask2_attributes = { const osThreadAttr_t DemoTask2_attributes = {
.name = "DemoTask2", .name = "DemoTask2",
.priority = (osPriority_t) osPriorityBelowNormal, .priority = (osPriority_t) osPriorityLow1,
.stack_size = 128 * 4 .stack_size = 128 * 8
}; };
void StartDemoTask1(void *argument){ void StartDemoTask1(void *argument){
uint8_t i=0; uint8_t i=0;
log_v("Start Demo Task1"); log_v("Start Demo Task1");
for(;;){ for(;;){
log_v("demo task 1 [%d].",i++); log_v("demo task 1 [%d].",i++);
osDelay(1000); osDelay(100);
} }
} }
void StartDemoTask2(void *argument){ void StartDemoTask2(void *argument){
@ -27,6 +34,6 @@ void StartDemoTask2(void *argument){
log_v("Start Demo Task2"); log_v("Start Demo Task2");
for(;;){ for(;;){
log_v("demo task 2 [%d].",i++); log_v("demo task 2 [%d].",i++);
osDelay(1000); osDelay(100);
} }
} }

View File

@ -2,7 +2,7 @@
* @Description: * @Description:
* @Date: 2021-03-09 11:30:52 * @Date: 2021-03-09 11:30:52
* @LastEditors: CK.Zh * @LastEditors: CK.Zh
* @LastEditTime: 2021-03-10 10:59:15 * @LastEditTime: 2021-03-10 14:46:32
* @FilePath: \NaviKit_EC_stm32\App\Src\th_elog.c * @FilePath: \NaviKit_EC_stm32\App\Src\th_elog.c
*/ */
@ -11,20 +11,23 @@
#include <th_elog.h> #include <th_elog.h>
#include "main.h" #include "main.h"
const osMutexAttr_t ElogUartMutex_attributes = {
.name = "ElogUartMutex"
};
const osMutexAttr_t ElogOutputMutex_attributes = { const osMutexAttr_t ElogOutputMutex_attributes = {
.name = "ElogOutputMutex" .name = "ElogOutputMutex"
}; };
const osThreadAttr_t ElogInitTask_attributes = { const osThreadAttr_t ElogInitTask_attributes = {
.name = "ElogInitTask", .name = "ElogInitTask",
.priority = (osPriority_t) osPriorityBelowNormal, .priority = (osPriority_t) osPriorityNormal,
.stack_size = 128 * 4 .stack_size = 128 * 4
}; };
const osThreadAttr_t ElogFlushTask_attributes = { const osThreadAttr_t ElogFlushTask_attributes = {
.name = "ElogFlushTask", .name = "ElogFlushTask",
.priority = (osPriority_t) osPriorityLow, .priority = (osPriority_t) osPriorityLow,
.stack_size = 128 * 4 .stack_size = 128 * 8
}; };
void StartElogInitTask(void *argument){ void StartElogInitTask(void *argument){
@ -36,10 +39,11 @@ void StartElogInitTask(void *argument){
void StartElogFlushTask(void *argument){ void StartElogFlushTask(void *argument){
uint8_t i=0;
log_v("Start Elog Flush Task"); log_v("Start Elog Flush Task");
for(;;){ for(;;){
elog_flush(); elog_flush();
osDelay(5); osDelay(1);
} }
} }
@ -67,6 +71,9 @@ void my_elog_init(){
/* 详细:输出除了方法名之外的所有内容 */ /* 详细:输出除了方法名之外的所有内容 */
elog_set_fmt(ELOG_LVL_VERBOSE, ELOG_FMT_SETTING); elog_set_fmt(ELOG_LVL_VERBOSE, ELOG_FMT_SETTING);
// enable text color (dynamic)
elog_set_text_color_enabled(true);
/* start EasyLogger */ /* start EasyLogger */
elog_start(); elog_start();
} }

28
App/Src/th_iwdg.c Normal file
View File

@ -0,0 +1,28 @@
/*
* @Description:
* @Date: 2021-03-09 18:19:26
* @LastEditors: CK.Zh
* @LastEditTime: 2021-03-10 15:07:01
* @FilePath: \NaviKit_EC_stm32\App\Src\th_demo.c
*/
#define LOG_TAG "TH-IWDG"
#include <th_iwdg.h>
#include "main.h"
#include "iwdg.h"
const osThreadAttr_t IWDGTask_attributes = {
.name = "IWDGTask",
.priority = (osPriority_t) osPriorityHigh,
.stack_size = 128 * 4
};
void StartIWDGTask(void *argument){
log_v("Start IWDG Task");
for(;;){
HAL_IWDG_Refresh(&hiwdg);
osDelay(1000);
}
}

View File

@ -13,8 +13,8 @@
const osThreadAttr_t LedBlinkTask_attributes = { const osThreadAttr_t LedBlinkTask_attributes = {
.name = "LedBlinkTask", .name = "LedBlinkTask",
.priority = (osPriority_t) osPriorityLow, .priority = (osPriority_t) osPriorityBelowNormal,
.stack_size = 128 * 4 .stack_size = 128 * 8
}; };
/* USER CODE BEGIN Header_StartLedBlinkTask */ /* USER CODE BEGIN Header_StartLedBlinkTask */

View File

@ -14,7 +14,7 @@
const osThreadAttr_t PowerMonitTask_attributes = { const osThreadAttr_t PowerMonitTask_attributes = {
.name = "PowerMonitTask", .name = "PowerMonitTask",
.priority = (osPriority_t) osPriorityLow, .priority = (osPriority_t) osPriorityBelowNormal,
.stack_size = 128 * 4 .stack_size = 128 * 4
}; };

View File

@ -61,6 +61,8 @@ void EXTI0_IRQHandler(void);
void EXTI3_IRQHandler(void); void EXTI3_IRQHandler(void);
void EXTI4_IRQHandler(void); void EXTI4_IRQHandler(void);
void DMA1_Channel1_IRQHandler(void); void DMA1_Channel1_IRQHandler(void);
void DMA1_Channel4_IRQHandler(void);
void DMA1_Channel5_IRQHandler(void);
void ADC1_2_IRQHandler(void); void ADC1_2_IRQHandler(void);
void EXTI9_5_IRQHandler(void); void EXTI9_5_IRQHandler(void);
void TIM1_UP_IRQHandler(void); void TIM1_UP_IRQHandler(void);
@ -69,6 +71,8 @@ void I2C1_ER_IRQHandler(void);
void USART1_IRQHandler(void); void USART1_IRQHandler(void);
void RTC_Alarm_IRQHandler(void); void RTC_Alarm_IRQHandler(void);
void UART4_IRQHandler(void); void UART4_IRQHandler(void);
void DMA2_Channel3_IRQHandler(void);
void DMA2_Channel5_IRQHandler(void);
void OTG_FS_IRQHandler(void); void OTG_FS_IRQHandler(void);
/* USER CODE BEGIN EFP */ /* USER CODE BEGIN EFP */

View File

@ -29,8 +29,6 @@ extern "C" {
/* USER CODE BEGIN Includes */ /* USER CODE BEGIN Includes */
#include <stdio.h>
#include <stdarg.h>
/* USER CODE END Includes */ /* USER CODE END Includes */
extern UART_HandleTypeDef huart4; extern UART_HandleTypeDef huart4;
@ -45,7 +43,6 @@ void MX_USART1_UART_Init(void);
/* USER CODE BEGIN Prototypes */ /* USER CODE BEGIN Prototypes */
void UartPrint(char * format,...);
/* USER CODE END Prototypes */ /* USER CODE END Prototypes */
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -33,9 +33,17 @@ DMA_HandleTypeDef hdma_adc1;
/* ADC1 init function */ /* ADC1 init function */
void MX_ADC1_Init(void) void MX_ADC1_Init(void)
{ {
/* USER CODE BEGIN ADC1_Init 0 */
/* USER CODE END ADC1_Init 0 */
ADC_AnalogWDGConfTypeDef AnalogWDGConfig = {0}; ADC_AnalogWDGConfTypeDef AnalogWDGConfig = {0};
ADC_ChannelConfTypeDef sConfig = {0}; ADC_ChannelConfTypeDef sConfig = {0};
/* USER CODE BEGIN ADC1_Init 1 */
/* USER CODE END ADC1_Init 1 */
/** Common config /** Common config
*/ */
hadc1.Instance = ADC1; hadc1.Instance = ADC1;
@ -117,6 +125,9 @@ void MX_ADC1_Init(void)
{ {
Error_Handler(); Error_Handler();
} }
/* USER CODE BEGIN ADC1_Init 2 */
/* USER CODE END ADC1_Init 2 */
} }

View File

@ -38,6 +38,7 @@
#include <th_coulomb.h> #include <th_coulomb.h>
#include <th_power.h> #include <th_power.h>
#include <th_button.h> #include <th_button.h>
#include <th_iwdg.h>
/* USER CODE END Includes */ /* USER CODE END Includes */
@ -70,7 +71,7 @@ const osTimerAttr_t IdleStateHoldTimer_attributes = {
osThreadId_t defaultTaskHandle; osThreadId_t defaultTaskHandle;
const osThreadAttr_t defaultTask_attributes = { const osThreadAttr_t defaultTask_attributes = {
.name = "defaultTask", .name = "defaultTask",
.stack_size = 128 * 4, .stack_size = 128 * 8,
.priority = (osPriority_t) osPriorityNormal, .priority = (osPriority_t) osPriorityNormal,
}; };
@ -81,6 +82,7 @@ void IdleStateHoldTimerCallback(void *argument);
bool isWakeUpFromReset() { return __HAL_PWR_GET_FLAG(PWR_FLAG_WU);} bool isWakeUpFromReset() { return __HAL_PWR_GET_FLAG(PWR_FLAG_WU);}
//__HAL_RCC_GET_FLAG(); //判断复位源
/* USER CODE END FunctionPrototypes */ /* USER CODE END FunctionPrototypes */
@ -167,6 +169,7 @@ void MX_FREERTOS_Init(void) {
/* USER CODE BEGIN Init */ /* USER CODE BEGIN Init */
ElogOutputMutexHandle = osMutexNew(&ElogOutputMutex_attributes); ElogOutputMutexHandle = osMutexNew(&ElogOutputMutex_attributes);
// ElogUartMutexHandle = osMutexNew(&ElogUartMutex_attributes);
my_elog_init(); my_elog_init();
NaviKit_var_init(); NaviKit_var_init();
/* USER CODE END Init */ /* USER CODE END Init */
@ -202,22 +205,23 @@ void MX_FREERTOS_Init(void) {
/* USER CODE BEGIN RTOS_THREADS */ /* USER CODE BEGIN RTOS_THREADS */
/* add threads, ... */ /* add threads, ... */
//IWDG--------------------------------------------
IWDGTaskHandle = osThreadNew(StartIWDGTask, NULL, &IWDGTask_attributes);
//Power-------------------------------------------- //Power--------------------------------------------
// PowerMonitTaskHandle = osThreadNew(StartPowerMonitTask, NULL, &PowerMonitTask_attributes); // PowerMonitTaskHandle = osThreadNew(StartPowerMonitTask, NULL, &PowerMonitTask_attributes);
//Button-------------------------------------------- //Button--------------------------------------------
// ButtonDetectHandle = osThreadNew(StartButtonDetect, NULL, &ButtonDetect_attributes); ButtonDetectTaskHandle = osThreadNew(StartButtonDetectTask, NULL, &ButtonDetectTask_attributes);
//LED-------------------------------------------- //LED--------------------------------------------
// LedBlinkTaskHandle = osThreadNew(StartLedBlinkTask, NULL, &LedBlinkTask_attributes); LedBlinkTaskHandle = osThreadNew(StartLedBlinkTask, NULL, &LedBlinkTask_attributes);
//CDC-------------------------------------------- //CDC--------------------------------------------
// cdcMonitorTaskHandle = osThreadNew(StartCdcMonitorTask, NULL, &cdcMonitorTask_attributes); cdcMonitorTaskHandle = osThreadNew(StartCdcMonitorTask, NULL, &cdcMonitorTask_attributes);
//Coulomb-------------------------------------------- //Coulomb--------------------------------------------
@ -230,10 +234,9 @@ void MX_FREERTOS_Init(void) {
ElogFlushTaskHandle = osThreadNew(StartElogFlushTask, NULL, &ElogFlushTask_attributes); ElogFlushTaskHandle = osThreadNew(StartElogFlushTask, NULL, &ElogFlushTask_attributes);
#endif #endif
//Demo-------------------------------------------- //Demo--------------------------------------------
// DemoTask1Handle = osThreadNew(StartDemoTask1, NULL, &DemoTask1_attributes); DemoTask1Handle = osThreadNew(StartDemoTask1, NULL, &DemoTask1_attributes);
// DemoTask2Handle = osThreadNew(StartDemoTask2, NULL, &DemoTask2_attributes); DemoTask2Handle = osThreadNew(StartDemoTask2, NULL, &DemoTask2_attributes);
/* USER CODE END RTOS_THREADS */ /* USER CODE END RTOS_THREADS */
@ -290,17 +293,17 @@ osVersion_t osVersion;
// TaskBeep(50,1); // TaskBeep(50,1);
} }
log_i("----------------------------------------------"); log_i("----------------------------------------------");
log_i("Copyright (c) Powered by www.autolabor.com.cn"); log_i("Copyright (c) Powered by www.autolabor.com.cn");
#ifdef DEBUG #ifdef DEBUG
log_i("EC Firmware: %s[DEBUG], build: %s, %s",APP_VERSION,__DATE__ ,__TIME__); log_i("EC Firmware: %s[DEBUG], build: %s, %s",APP_VERSION,__DATE__ ,__TIME__);
#else #else
log_i("EC Firmware: %s[RELEASE], build: %s, %s",APP_VERSION,__DATE__ ,__TIME__); log_i("EC Firmware: %s[RELEASE], build: %s, %s",APP_VERSION,__DATE__ ,__TIME__);
#endif #endif
log_i("HAL Version: 0x%X ", HAL_GetHalVersion()); log_i("HAL Version: 0x%X ", HAL_GetHalVersion());
log_i("Revision ID: 0x%X ", HAL_GetREVID()); log_i("Revision ID: 0x%X ", HAL_GetREVID());
log_i("Device ID: 0x%X ", HAL_GetDEVID()); log_i("Device ID: 0x%X ", HAL_GetDEVID());
log_i("Chip UID: 0x%X%X%X ", HAL_GetUIDw0(),HAL_GetUIDw1(),HAL_GetUIDw2()); log_i("Chip UID: 0x%X%X%X ", HAL_GetUIDw0(),HAL_GetUIDw1(),HAL_GetUIDw2());
if(osOK == osKernelGetInfo(&osVersion,id_buf,id_size)){ if(osOK == osKernelGetInfo(&osVersion,id_buf,id_size)){
log_i("OS Kernel Version: %u ", osVersion.kernel); log_i("OS Kernel Version: %u ", osVersion.kernel);
@ -311,12 +314,10 @@ osVersion_t osVersion;
log_i("Log Library Version: V%s",ELOG_SW_VERSION); log_i("Log Library Version: V%s",ELOG_SW_VERSION);
log_i("Core initial successfully"); log_i("Core initial successfully");
log_i("----------------------------------------------");
/* Infinite loop */ /* Infinite loop */
for(;;) for(;;)
{ {
// HAL_IWDG_Refresh(&hiwdg);
osDelay(20); osDelay(20);
if(NaviKit.sys.sta != NaviKit.sys.next_sta){ if(NaviKit.sys.sta != NaviKit.sys.next_sta){
switch(NaviKit.sys.next_sta){ switch(NaviKit.sys.next_sta){
@ -367,7 +368,7 @@ osVersion_t osVersion;
// } // }
if(!osTimerIsRunning(IdleStateHoldTimerHandle)){ if(!osTimerIsRunning(IdleStateHoldTimerHandle)){
osTimerStart(IdleStateHoldTimerHandle,5000); // osTimerStart(IdleStateHoldTimerHandle,5000);
} }
} }

View File

@ -51,6 +51,13 @@ I2C_HandleTypeDef hi2c1;
void MX_I2C1_Init(void) void MX_I2C1_Init(void)
{ {
/* USER CODE BEGIN I2C1_Init 0 */
/* USER CODE END I2C1_Init 0 */
/* USER CODE BEGIN I2C1_Init 1 */
/* USER CODE END I2C1_Init 1 */
hi2c1.Instance = I2C1; hi2c1.Instance = I2C1;
hi2c1.Init.ClockSpeed = 100000; hi2c1.Init.ClockSpeed = 100000;
hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2; hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2;
@ -64,6 +71,9 @@ void MX_I2C1_Init(void)
{ {
Error_Handler(); Error_Handler();
} }
/* USER CODE BEGIN I2C1_Init 2 */
/* USER CODE END I2C1_Init 2 */
} }

View File

@ -30,6 +30,13 @@ IWDG_HandleTypeDef hiwdg;
void MX_IWDG_Init(void) void MX_IWDG_Init(void)
{ {
/* USER CODE BEGIN IWDG_Init 0 */
/* USER CODE END IWDG_Init 0 */
/* USER CODE BEGIN IWDG_Init 1 */
/* USER CODE END IWDG_Init 1 */
hiwdg.Instance = IWDG; hiwdg.Instance = IWDG;
hiwdg.Init.Prescaler = IWDG_PRESCALER_16; hiwdg.Init.Prescaler = IWDG_PRESCALER_16;
hiwdg.Init.Reload = 0xfff; hiwdg.Init.Reload = 0xfff;
@ -37,6 +44,9 @@ void MX_IWDG_Init(void)
{ {
Error_Handler(); Error_Handler();
} }
/* USER CODE BEGIN IWDG_Init 2 */
/* USER CODE END IWDG_Init 2 */
} }

View File

@ -96,17 +96,27 @@ int main(void)
/* Initialize all configured peripherals */ /* Initialize all configured peripherals */
MX_GPIO_Init(); MX_GPIO_Init();
MX_DMA_Init(); MX_DMA_Init();
// MX_I2C1_Init(); MX_I2C1_Init();
// MX_IWDG_Init(); MX_IWDG_Init();
// MX_UART4_Init(); MX_UART4_Init();
MX_ADC1_Init(); MX_ADC1_Init();
MX_USART1_UART_Init(); MX_USART1_UART_Init();
// MX_RTC_Init(); MX_RTC_Init();
/* Initialize interrupts */ /* Initialize interrupts */
MX_NVIC_Init(); MX_NVIC_Init();
/* USER CODE BEGIN 2 */ /* USER CODE BEGIN 2 */
//print log before kernel start
// uint8_t log_head[]="Autolabor EC Booting...\r\n";
// HAL_UART_Transmit_DMA(&huart1, log_head, sizeof(log_head));
if( hiwdg.Instance->SR & IWDG_KEY_ENABLE){
uint8_t log_head[]="iwdg enable\r\n";
HAL_UART_Transmit_DMA(&huart1, log_head, sizeof(log_head));
}else{
uint8_t log_head[]="iwdg disable\r\n";
HAL_UART_Transmit_DMA(&huart1, log_head, sizeof(log_head));
}
/* USER CODE END 2 */ /* USER CODE END 2 */
/* Init scheduler */ /* Init scheduler */
@ -235,6 +245,18 @@ static void MX_NVIC_Init(void)
/* EXTI4_IRQn interrupt configuration */ /* EXTI4_IRQn interrupt configuration */
HAL_NVIC_SetPriority(EXTI4_IRQn, 5, 0); HAL_NVIC_SetPriority(EXTI4_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(EXTI4_IRQn); HAL_NVIC_EnableIRQ(EXTI4_IRQn);
/* DMA1_Channel4_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel4_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel4_IRQn);
/* DMA1_Channel5_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn);
/* DMA2_Channel3_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA2_Channel3_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(DMA2_Channel3_IRQn);
/* DMA2_Channel5_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DMA2_Channel5_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(DMA2_Channel5_IRQn);
} }
/* USER CODE BEGIN 4 */ /* USER CODE BEGIN 4 */

View File

@ -102,6 +102,7 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
void enter_standby_state(){ void enter_standby_state(){
log_i("EC enter to STANDBY Mode to save power, see you!"); log_i("EC enter to STANDBY Mode to save power, see you!");
osDelay(10);
HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);//Enable PA0 wakeup function HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);//Enable PA0 wakeup function
__HAL_RCC_RTC_DISABLE(); __HAL_RCC_RTC_DISABLE();
HAL_PWR_EnterSTANDBYMode(); HAL_PWR_EnterSTANDBYMode();

View File

@ -30,6 +30,13 @@ RTC_HandleTypeDef hrtc;
void MX_RTC_Init(void) void MX_RTC_Init(void)
{ {
/* USER CODE BEGIN RTC_Init 0 */
/* USER CODE END RTC_Init 0 */
/* USER CODE BEGIN RTC_Init 1 */
/* USER CODE END RTC_Init 1 */
/** Initialize RTC Only /** Initialize RTC Only
*/ */
hrtc.Instance = RTC; hrtc.Instance = RTC;
@ -39,6 +46,9 @@ void MX_RTC_Init(void)
{ {
Error_Handler(); Error_Handler();
} }
/* USER CODE BEGIN RTC_Init 2 */
/* USER CODE END RTC_Init 2 */
} }

@ -0,0 +1 @@
Subproject commit 0c6cec978cd8163c8640c7c157cccba457dedabc

View File

@ -70,4 +70,5 @@
</listAttribute> </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;"/> <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;"/>
<stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/> <stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/>
<stringAttribute key="saved_expressions&lt;seperator&gt;Unknown" value="e810000,0xe810000"/>
</launchConfiguration> </launchConfiguration>

View File

@ -36,6 +36,7 @@
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_check_serial_number" value="false"/> <booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_check_serial_number" value="false"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_txt_serial_number" value=""/> <stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_txt_serial_number" value=""/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.watchdog_config" value="none"/> <stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.watchdog_config" value="none"/>
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlinkrestart_configurations" value="{&quot;fItems&quot;:[{&quot;fDisplayName&quot;:&quot;Reset&quot;,&quot;fIsSuppressible&quot;:false,&quot;fResetAttribute&quot;:&quot;Reset&quot;,&quot;fResetStrategies&quot;:[{&quot;fDisplayName&quot;:&quot;Reset&quot;,&quot;fLaunchAttribute&quot;:&quot;monitor reset&quot;,&quot;fGdbCommands&quot;:[&quot;monitor reset&quot;],&quot;fCmdOptions&quot;:[]},{&quot;fDisplayName&quot;:&quot;None&quot;,&quot;fLaunchAttribute&quot;:&quot;no_reset&quot;,&quot;fGdbCommands&quot;:[],&quot;fCmdOptions&quot;:[]}],&quot;fGdbCommandGroup&quot;:{&quot;name&quot;:&quot;Additional commands&quot;,&quot;commands&quot;:[]}}]}"/>
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.swv.swv_wait_for_sync" value="true"/> <booleanAttribute key="com.st.stm32cube.ide.mcu.debug.swv.swv_wait_for_sync" value="true"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doHalt" value="false"/> <booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doHalt" value="false"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doReset" value="false"/> <booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doReset" value="false"/>
@ -67,5 +68,6 @@
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="4"/> <listEntry value="4"/>
</listAttribute> </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;"/>
<stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/> <stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/>
</launchConfiguration> </launchConfiguration>

View File

@ -64,7 +64,47 @@ Dma.ADC1.0.PeriphInc=DMA_PINC_DISABLE
Dma.ADC1.0.Priority=DMA_PRIORITY_LOW Dma.ADC1.0.Priority=DMA_PRIORITY_LOW
Dma.ADC1.0.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority Dma.ADC1.0.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
Dma.Request0=ADC1 Dma.Request0=ADC1
Dma.RequestsNb=1 Dma.Request1=USART1_TX
Dma.Request2=USART1_RX
Dma.Request3=UART4_RX
Dma.Request4=UART4_TX
Dma.RequestsNb=5
Dma.UART4_RX.3.Direction=DMA_PERIPH_TO_MEMORY
Dma.UART4_RX.3.Instance=DMA2_Channel3
Dma.UART4_RX.3.MemDataAlignment=DMA_MDATAALIGN_BYTE
Dma.UART4_RX.3.MemInc=DMA_MINC_ENABLE
Dma.UART4_RX.3.Mode=DMA_NORMAL
Dma.UART4_RX.3.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
Dma.UART4_RX.3.PeriphInc=DMA_PINC_DISABLE
Dma.UART4_RX.3.Priority=DMA_PRIORITY_LOW
Dma.UART4_RX.3.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
Dma.UART4_TX.4.Direction=DMA_MEMORY_TO_PERIPH
Dma.UART4_TX.4.Instance=DMA2_Channel5
Dma.UART4_TX.4.MemDataAlignment=DMA_MDATAALIGN_BYTE
Dma.UART4_TX.4.MemInc=DMA_MINC_ENABLE
Dma.UART4_TX.4.Mode=DMA_NORMAL
Dma.UART4_TX.4.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
Dma.UART4_TX.4.PeriphInc=DMA_PINC_DISABLE
Dma.UART4_TX.4.Priority=DMA_PRIORITY_LOW
Dma.UART4_TX.4.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
Dma.USART1_RX.2.Direction=DMA_PERIPH_TO_MEMORY
Dma.USART1_RX.2.Instance=DMA1_Channel5
Dma.USART1_RX.2.MemDataAlignment=DMA_MDATAALIGN_BYTE
Dma.USART1_RX.2.MemInc=DMA_MINC_ENABLE
Dma.USART1_RX.2.Mode=DMA_NORMAL
Dma.USART1_RX.2.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
Dma.USART1_RX.2.PeriphInc=DMA_PINC_DISABLE
Dma.USART1_RX.2.Priority=DMA_PRIORITY_LOW
Dma.USART1_RX.2.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
Dma.USART1_TX.1.Direction=DMA_MEMORY_TO_PERIPH
Dma.USART1_TX.1.Instance=DMA1_Channel4
Dma.USART1_TX.1.MemDataAlignment=DMA_MDATAALIGN_BYTE
Dma.USART1_TX.1.MemInc=DMA_MINC_ENABLE
Dma.USART1_TX.1.Mode=DMA_NORMAL
Dma.USART1_TX.1.PeriphDataAlignment=DMA_PDATAALIGN_BYTE
Dma.USART1_TX.1.PeriphInc=DMA_PINC_DISABLE
Dma.USART1_TX.1.Priority=DMA_PRIORITY_LOW
Dma.USART1_TX.1.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority
FREERTOS.FootprintOK=true FREERTOS.FootprintOK=true
FREERTOS.HEAP_NUMBER=4 FREERTOS.HEAP_NUMBER=4
FREERTOS.INCLUDE_pcTaskGetTaskName=1 FREERTOS.INCLUDE_pcTaskGetTaskName=1
@ -193,6 +233,10 @@ MxDb.Version=DB.6.0.20
NVIC.ADC1_2_IRQn=true\:5\:0\:false\:true\:true\:8\:true\:true\:true NVIC.ADC1_2_IRQn=true\:5\:0\:false\:true\:true\:8\:true\:true\:true
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.DMA1_Channel1_IRQn=true\:5\:0\:false\:true\:true\:9\:true\:false\:true NVIC.DMA1_Channel1_IRQn=true\:5\:0\:false\:true\:true\:9\:true\:false\:true
NVIC.DMA1_Channel4_IRQn=true\:5\:0\:false\:true\:true\:17\:true\:false\:true
NVIC.DMA1_Channel5_IRQn=true\:5\:0\:false\:true\:true\:18\:true\:false\:true
NVIC.DMA2_Channel3_IRQn=true\:5\:0\:false\:true\:true\:19\:true\:false\:true
NVIC.DMA2_Channel5_IRQn=true\:5\:0\:false\:true\:true\:20\:true\:false\:true
NVIC.DebugMonitor_IRQn=true\:0\:0\:true\:false\:true\:false\:false\:false NVIC.DebugMonitor_IRQn=true\:0\:0\:true\:false\:true\:false\:false\:false
NVIC.EXTI0_IRQn=true\:5\:0\:false\:true\:true\:11\:true\:true\:true NVIC.EXTI0_IRQn=true\:5\:0\:false\:true\:true\:11\:true\:true\:true
NVIC.EXTI3_IRQn=true\:5\:0\:false\:true\:true\:12\:true\:true\:true NVIC.EXTI3_IRQn=true\:5\:0\:false\:true\:true\:12\:true\:true\:true
@ -652,4 +696,4 @@ VP_SYS_VS_tim1.Signal=SYS_VS_tim1
VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Mode=CDC_FS VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Mode=CDC_FS
VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Signal=USB_DEVICE_VS_USB_DEVICE_CDC_FS VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Signal=USB_DEVICE_VS_USB_DEVICE_CDC_FS
board=custom board=custom
isbadioc=true isbadioc=false

View File

@ -3,7 +3,7 @@
* @Author: CK.Zh * @Author: CK.Zh
* @Date: 2020-02-20 11:39:38 * @Date: 2020-02-20 11:39:38
* @LastEditors: CK.Zh * @LastEditors: CK.Zh
* @LastEditTime: 2021-03-10 11:40:42 * @LastEditTime: 2021-03-10 13:48:33
--> -->
# NaviKit_stm32 # NaviKit_stm32
PM1导航套件中电源控制板源码STM32F107VCT6开发环境STM32CubeIDE PM1导航套件中电源控制板源码STM32F107VCT6开发环境STM32CubeIDE
@ -32,12 +32,17 @@
函数`void HAL_PCD_IRQHandler(PCD_HandleTypeDef *hpcd)` 函数`void HAL_PCD_IRQHandler(PCD_HandleTypeDef *hpcd)`
代码段`HAL_PCD_SuspendCallback(hpcd); ` 务必屏蔽,否则导致枚举失败,提示获取设备描述符失败。 代码段`HAL_PCD_SuspendCallback(hpcd); ` 务必屏蔽,否则导致枚举失败,提示获取设备描述符失败。
> EC日志输出口波特率为56000bps
# 维护指南 # 维护指南
* 为提高可移植性、可维护性、可阅读性,开发(应用层)时尽量使用`CMSIS_OS2`的抽象接口特殊情况时再考虑使用RTOS的原生接口 * 为提高可移植性、可维护性、可阅读性,开发(应用层)时尽量使用`CMSIS_OS2`的抽象接口特殊情况时再考虑使用RTOS的原生接口
* 线程任务实例及属性、句柄的声明及定义,独立存放在`App`文件夹 * `freertos.c`中的任务实体只保留默认任务, 其他线程任务实例、属性、句柄的声明及定义,独立存放在`App`文件夹
* 线程、定时器、事件标志、互斥锁、信号量、消息队列等功能的初始化统一在`freertos.c`文件中进行初始化(内核启动前的预装载) * 线程、定时器、事件标志、互斥锁、信号量、消息队列等功能的初始化统一在`freertos.c`文件中进行初始化(内核启动前的预装载)
* `freertos.c`中的任务实体只保留默认任务即可
# 日志接口
* 串口输出口波特率为56000bps
* 日志输出支持`CSI`颜色模式
# 勘误 # 勘误
硬件的v1.0以前版本中SYS_RESET脚和MOD_SLEEP到单片机的实际连接与网络标号是相反的问题发生在TXB0108PWR芯片附近故代码中在GPIO处进行了相反的设置。 硬件的v1.0以前版本中SYS_RESET脚和MOD_SLEEP到单片机的实际连接与网络标号是相反的问题发生在TXB0108PWR芯片附近故代码中在GPIO处进行了相反的设置。

View File

@ -55,8 +55,8 @@ ENTRY(Reset_Handler)
/* Highest address of the user mode stack */ /* Highest address of the user mode stack */
_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */ _estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */
_Min_Heap_Size = 0x400 ; /* required amount of heap */ _Min_Heap_Size = 0x1f00 ; /* required amount of heap */
_Min_Stack_Size = 0x800 ; /* required amount of stack */ _Min_Stack_Size = 0x1f00 ; /* required amount of stack */
/* Memories definition */ /* Memories definition */
MEMORY MEMORY

View File

@ -301,6 +301,7 @@ USBD_StatusTypeDef USBD_LL_Init(USBD_HandleTypeDef *pdev)
hpcd_USB_OTG_FS.Instance = USB_OTG_FS; hpcd_USB_OTG_FS.Instance = USB_OTG_FS;
hpcd_USB_OTG_FS.Init.dev_endpoints = 4; hpcd_USB_OTG_FS.Init.dev_endpoints = 4;
hpcd_USB_OTG_FS.Init.speed = PCD_SPEED_FULL; hpcd_USB_OTG_FS.Init.speed = PCD_SPEED_FULL;
hpcd_USB_OTG_FS.Init.phy_itface = PCD_PHY_EMBEDDED;
hpcd_USB_OTG_FS.Init.Sof_enable = DISABLE; hpcd_USB_OTG_FS.Init.Sof_enable = DISABLE;
hpcd_USB_OTG_FS.Init.low_power_enable = DISABLE; hpcd_USB_OTG_FS.Init.low_power_enable = DISABLE;
hpcd_USB_OTG_FS.Init.vbus_sensing_enable = DISABLE; hpcd_USB_OTG_FS.Init.vbus_sensing_enable = DISABLE;

View File

@ -1,10 +1,3 @@
/*
* @Description:
* @Date: 2020-02-20 11:58:24
* @LastEditors: CK.Zh
* @LastEditTime: 2021-03-09 18:32:44
* @FilePath: \NaviKit_EC_stm32\USB_DEVICE\Target\usbd_conf.h
*/
/* USER CODE BEGIN Header */ /* USER CODE BEGIN Header */
/** /**
****************************************************************************** ******************************************************************************
@ -76,7 +69,7 @@
/*---------- -----------*/ /*---------- -----------*/
#define USBD_MAX_STR_DESC_SIZ 512 #define USBD_MAX_STR_DESC_SIZ 512
/*---------- -----------*/ /*---------- -----------*/
#define USBD_DEBUG_LEVEL 0 #define USBD_DEBUG_LEVEL 3
/*---------- -----------*/ /*---------- -----------*/
#define USBD_SELF_POWERED 1 #define USBD_SELF_POWERED 1
/*---------- -----------*/ /*---------- -----------*/