V0.9.1 beta

support voltage monitor
support formatted log message
made log system thread safe
output more infomation of  MCU and firmware
master
ThinkPad-T460P 2020-12-17 18:22:19 +08:00
parent 68e8de8642
commit 0cbd186dc1
33 changed files with 729 additions and 318 deletions

View File

@ -7,56 +7,59 @@
<extensions>
<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.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629" name="Debug" parent="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug">
<folderInfo id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629." name="/" resourcePath="">
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.217041015" name="MCU ARM GCC" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug">
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.type.265410504" name="Internal Toolchain Type" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.type" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.version.1736166454" name="Internal Toolchain Version" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.version" value="7-2018-q2-update" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.604074274" name="Mcu" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" value="STM32F107VCTx" 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" 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" 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" 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" 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.nanoprintffloat.1573745116" name="Use float with printf from newlib-nano (-u _printf_float)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.nanoprintffloat" 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" value="true" 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" 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.converthex.1986680919" name="Convert to Intel Hex file (-O ihex)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" value="true" valueType="boolean"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary.1096157515" name="Convert to binary file (-O binary)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary" value="false" valueType="boolean"/>
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.217041015" name="MCU ARM GCC" nonInternalBuilderId="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug">
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.type.265410504" name="Internal Toolchain Type" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.type" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.version.1736166454" name="Internal Toolchain Version" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.version" useByScannerDiscovery="false" value="7-2018-q2-update" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.604074274" name="Mcu" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" useByScannerDiscovery="true" value="STM32F107VCTx" 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_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.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="true" 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.converthex.1986680919" 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.convertbinary.1096157515" name="Convert to binary file (-O binary)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.convertbinary" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.1735301810" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
<builder buildPath="${workspace_loc:/NaviKit_stm32}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.510228817" 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}/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">
<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" 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"/>
<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 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.optimization.level.1182522958" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false"/>
<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.og" 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">
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="STM32F107xC"/>
<listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="DEPLOY_MODE=&quot;DEBUG&quot;"/>
<listOptionValue builtIn="false" value="APP_VERSION=&quot;V0.9.1&quot;"/>
</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">
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/Target"/>
<listOptionValue builtIn="false" value="../Middlewares/Coulomb"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Core/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/>
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3"/>
<listOptionValue builtIn="false" value="../Core/Inc"/>
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Device/ST/STM32F1xx/Include"/>
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Include"/>
<listOptionValue builtIn="false" value="../Core/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/App"/>
<listOptionValue builtIn="false" value="../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy"/>
<listOptionValue builtIn="false" value="../Drivers/STM32F1xx_HAL_Driver/Inc"/>
<listOptionValue builtIn="false" value="../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy"/>
<listOptionValue builtIn="false" value="../Middlewares/Coulomb"/>
<listOptionValue builtIn="false" value="../Middlewares/Log"/>
<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/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/portable/GCC/ARM_CM3"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/App"/>
<listOptionValue builtIn="false" value="../USB_DEVICE/Target"/>
</option>
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.1357480259" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/>
</tool>
@ -65,7 +68,7 @@
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.1376424800" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level" useByScannerDiscovery="false"/>
</tool>
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.571481677" name="MCU GCC Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker">
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script.577478684" name="Linker Script (-T)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script" value="${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld}" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script.577478684" name="Linker Script (-T)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script" useByScannerDiscovery="false" value="${workspace_loc:/${ProjName}/STM32F107VCTX_FLASH.ld}" valueType="string"/>
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input.1876461324" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
@ -84,11 +87,19 @@
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.1182938463" name="MCU Output Converter Motorola S-rec with symbols" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec"/>
</toolChain>
</folderInfo>
<fileInfo id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629.1109380639" name="log.h" rcbsApplicability="disable" resourcePath="Middlewares/Log/log.h" toolsToInvoke="">
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.429610301" name="Resource Custom Build Step">
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.835196452" name="Resource Custom Build Step Input Type">
<additionalInput kind="additionalinputdependency" paths=""/>
</inputType>
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.145240003" name="Resource Custom Build Step Output Type"/>
</tool>
</fileInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="CMSIS"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
<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="Middlewares"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="USB_DEVICE"/>
</sourceEntries>
</configuration>
@ -108,16 +119,18 @@
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692" name="Release" parent="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release">
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692" name="Release" parent="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release">
<folderInfo id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1260902692." name="/" resourcePath="">
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release.471674088" name="MCU ARM GCC" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release">
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.type.1681983468" name="Internal Toolchain Type" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.type" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.version.33449610" name="Internal Toolchain Version" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.version" value="7-2018-q2-update" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.856265018" name="Mcu" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" value="STM32F107VCTx" 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" 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" 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" 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" 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.option.internal.toolchain.type.1681983468" name="Internal Toolchain Type" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.type" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.base.gnu-tools-for-stm32" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.option.internal.toolchain.version.33449610" name="Internal Toolchain Version" superClass="com.st.stm32cube.ide.mcu.option.internal.toolchain.version" useByScannerDiscovery="false" value="9-2020-q2-update" valueType="string"/>
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.856265018" name="Mcu" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" useByScannerDiscovery="true" value="STM32F107VCTx" 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_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.convertbinary.1121264663" 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" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" 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"/>
<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">
@ -130,6 +143,8 @@
<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="DEPLOY_MODE=&quot;RELEASE&quot;"/>
<listOptionValue builtIn="false" value="APP_VERSION=&quot;V0.9.1&quot;"/>
</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">
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/include"/>
@ -146,6 +161,8 @@
<listOptionValue builtIn="false" value="../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy"/>
<listOptionValue builtIn="false" value="../Drivers/STM32F1xx_HAL_Driver/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_USB_Device_Library/Class/HID/Inc"/>
<listOptionValue builtIn="false" value="../Middlewares/Log"/>
<listOptionValue builtIn="false" value="../Middlewares/Coulomb"/>
</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"/>
</tool>

1
.gitignore vendored
View File

@ -52,4 +52,5 @@ Mkfile.old
dkms.conf
/Debug/
/Release/
/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c

View File

@ -6,7 +6,7 @@
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-834964856988592126" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="618447504645106327" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
@ -18,7 +18,7 @@
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-834964856988592126" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="575369762763518865" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>

View File

@ -2,6 +2,8 @@ com.st.stm32cube.ide.mcu.ide.oss.source.checker.libnano.problem.params={launchMo
eclipse.preferences.version=1
org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false}
org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"}
org.eclipse.cdt.codan.checkers.localvarreturn=-Warning
org.eclipse.cdt.codan.checkers.localvarreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Returning the address of a local variable\\")"}
org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"}
org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"}
org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false}
@ -9,8 +11,10 @@ org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchMode
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"}
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"}
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"}
org.eclipse.cdt.codan.internal.checkers.BlacklistProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.BlacklistProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function or method is blacklisted\\")",blacklist\=>()}
org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"}
org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")",checkMacro\=>true}
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false}
org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"}
@ -19,12 +23,16 @@ org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"}
org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"}
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"}
org.eclipse.cdt.codan.internal.checkers.FloatCompareProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.FloatCompareProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Direct float comparison\\")"}
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"}
org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"}
org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"}
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"}
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"}
org.eclipse.cdt.codan.internal.checkers.MagicNumberProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.MagicNumberProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Avoid magic numbers\\")",checkArray\=>true,checkOperatorParen\=>true,exceptions\=>(1,0,-1,2,1.0,0.0,-1.0)}
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"}
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"}
org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning
@ -35,6 +43,8 @@ org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"}
org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"}
org.eclipse.cdt.codan.internal.checkers.MultipleDeclarationsProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.MultipleDeclarationsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Multiple variable declaration\\")"}
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"}
org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"}
@ -42,9 +52,15 @@ org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"}
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"}
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"}
org.eclipse.cdt.codan.internal.checkers.ShallowCopyProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.ShallowCopyProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Miss copy constructor or assignment operator\\")",onlynew\=>false}
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.StaticVariableInHeaderProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.StaticVariableInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Static variable in header file\\")"}
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false}
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false}
org.eclipse.cdt.codan.internal.checkers.SymbolShadowingProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.SymbolShadowingProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol shadowing\\")",paramFuncParameters\=>true}
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"}
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true}
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true}
@ -54,3 +70,131 @@ org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"}
org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error
org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"}
org.wangzw.plugin.cppstyle.cpplint.build.c++11=Error
org.wangzw.plugin.cppstyle.cpplint.build.c++11.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.categorized=Error
org.wangzw.plugin.cppstyle.cpplint.build.categorized.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.deprecated=Error
org.wangzw.plugin.cppstyle.cpplint.build.deprecated.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.endif_comment=Error
org.wangzw.plugin.cppstyle.cpplint.build.endif_comment.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.explicit_make_pair=Error
org.wangzw.plugin.cppstyle.cpplint.build.explicit_make_pair.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.forward_decl=Error
org.wangzw.plugin.cppstyle.cpplint.build.forward_decl.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.header_guard=Error
org.wangzw.plugin.cppstyle.cpplint.build.header_guard.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.include=Error
org.wangzw.plugin.cppstyle.cpplint.build.include.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.include_alpha=Error
org.wangzw.plugin.cppstyle.cpplint.build.include_alpha.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.include_order=Error
org.wangzw.plugin.cppstyle.cpplint.build.include_order.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.include_what_you_use=Error
org.wangzw.plugin.cppstyle.cpplint.build.include_what_you_use.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.namespaces=Error
org.wangzw.plugin.cppstyle.cpplint.build.namespaces.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.printf_format=Error
org.wangzw.plugin.cppstyle.cpplint.build.printf_format.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.build.storage_class=Error
org.wangzw.plugin.cppstyle.cpplint.build.storage_class.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.legal.copyright=Error
org.wangzw.plugin.cppstyle.cpplint.legal.copyright.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.alt_tokens=Error
org.wangzw.plugin.cppstyle.cpplint.readability.alt_tokens.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.braces=Error
org.wangzw.plugin.cppstyle.cpplint.readability.braces.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.casting=Error
org.wangzw.plugin.cppstyle.cpplint.readability.casting.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.check=Error
org.wangzw.plugin.cppstyle.cpplint.readability.check.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.constructors=Error
org.wangzw.plugin.cppstyle.cpplint.readability.constructors.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.fn_size=Error
org.wangzw.plugin.cppstyle.cpplint.readability.fn_size.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.function=Error
org.wangzw.plugin.cppstyle.cpplint.readability.function.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.inheritance=Error
org.wangzw.plugin.cppstyle.cpplint.readability.inheritance.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.multiline_comment=Error
org.wangzw.plugin.cppstyle.cpplint.readability.multiline_comment.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.multiline_string=Error
org.wangzw.plugin.cppstyle.cpplint.readability.multiline_string.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.namespace=Error
org.wangzw.plugin.cppstyle.cpplint.readability.namespace.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.nolint=Error
org.wangzw.plugin.cppstyle.cpplint.readability.nolint.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.nul=Error
org.wangzw.plugin.cppstyle.cpplint.readability.nul.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.strings=Error
org.wangzw.plugin.cppstyle.cpplint.readability.strings.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.todo=Error
org.wangzw.plugin.cppstyle.cpplint.readability.todo.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.readability.utf8=Error
org.wangzw.plugin.cppstyle.cpplint.readability.utf8.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.arrays=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.arrays.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.casting=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.casting.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.explicit=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.explicit.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.indentation_namespace=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.indentation_namespace.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.init=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.init.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.int=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.int.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.invalid_increment=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.invalid_increment.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.member_string_references=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.member_string_references.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.memset=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.memset.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.operator=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.operator.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.printf=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.printf.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.printf_format=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.printf_format.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.references=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.references.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.string=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.string.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.threadsafe_fn=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.threadsafe_fn.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.runtime.vlog=Error
org.wangzw.plugin.cppstyle.cpplint.runtime.vlog.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.blank_line=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.blank_line.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.braces=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.braces.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.comma=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.comma.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.comments=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.comments.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.empty_conditional_body=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.empty_conditional_body.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.empty_loop_body=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.empty_loop_body.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.end_of_line=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.end_of_line.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.ending_newline=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.ending_newline.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.forcolon=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.forcolon.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.indent=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.indent.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.line_length=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.line_length.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.newline=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.newline.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.operators=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.operators.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.parens=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.parens.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.semicolon=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.semicolon.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.tab=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.tab.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}
org.wangzw.plugin.cppstyle.cpplint.whitespace.todo=Error
org.wangzw.plugin.cppstyle.cpplint.whitespace.todo.params={fileScope\=>inclusion\=>("*.cc","*.h","*.cpp","*.cu","*.cuh","*.hpp"),exclusion\=>(),launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>true,RUN_AS_YOU_TYPE\=>false,RUN_ON_DEMAND\=>true},suppression_comment\=>null}

View File

@ -1,3 +1,9 @@
doxygen/doxygen_new_line_after_brief=true
doxygen/doxygen_use_brief_tag=false
doxygen/doxygen_use_javadoc_tags=true
doxygen/doxygen_use_pre_tag=false
doxygen/doxygen_use_structural_commands=false
eclipse.preferences.version=1
environment/project/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629/append=true
environment/project/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.502298629/appendContributed=true
org.eclipse.cdt.core.code_formatter=org.eclipse.cdt.core.defaultCodeFormatter

View File

@ -0,0 +1,4 @@
2F62501ED4689FB349E356AB974DBE57=66ECD72EB9ECEB12193E2107C4BA39FF
8DF89ED150041C4CBC7CB9A9CAA90856=66ECD72EB9ECEB12193E2107C4BA39FF
DC22A860405A8BF2F2C095E5B6529F12=F6E7387302D54A097C31AB36FAAFE226
eclipse.preferences.version=1

View File

@ -50,21 +50,27 @@
#if defined(__ICCARM__) || defined(__CC_ARM) || defined(__GNUC__)
#include <stdint.h>
extern uint32_t SystemCoreClock;
/* USER CODE BEGIN 0 */
extern void configureTimerForRunTimeStats(void);
extern unsigned long getRunTimeCounterValue(void);
/* USER CODE END 0 */
#endif
#define configUSE_PREEMPTION 1
#define configSUPPORT_STATIC_ALLOCATION 1
#define configSUPPORT_DYNAMIC_ALLOCATION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configUSE_IDLE_HOOK 1
#define configUSE_TICK_HOOK 1
#define configCPU_CLOCK_HZ ( SystemCoreClock )
#define configTICK_RATE_HZ ((TickType_t)1000)
#define configMAX_PRIORITIES ( 56 )
#define configMINIMAL_STACK_SIZE ((uint16_t)128)
#define configTOTAL_HEAP_SIZE ((size_t)8192)
#define configMAX_TASK_NAME_LEN ( 32 )
#define configGENERATE_RUN_TIME_STATS 1
#define configUSE_16_BIT_TICKS 0
#define configUSE_MUTEXES 1
#define configQUEUE_REGISTRY_SIZE 8
#define configCHECK_FOR_STACK_OVERFLOW 1
#define configUSE_RECURSIVE_MUTEXES 1
#define configUSE_COUNTING_SEMAPHORES 1
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0
@ -143,6 +149,12 @@ standard names. */
#define xPortSysTickHandler SysTick_Handler
/* USER CODE BEGIN 2 */
/* Definitions needed when configGENERATE_RUN_TIME_STATS is on */
#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS configureTimerForRunTimeStats
#define portGET_RUN_TIME_COUNTER_VALUE getRunTimeCounterValue
/* USER CODE END 2 */
/* USER CODE BEGIN Defines */
/* Section where parameter definitions can be added (for instance, to override default ones in FreeRTOS.h) */
/* USER CODE END Defines */

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : ADC.h
* Description : This file provides code for the configuration
* of the ADC instances.
* @file adc.h
* @brief This file contains all the function prototypes for
* the adc.c file
******************************************************************************
* @attention
*
@ -17,10 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __adc_H
#define __adc_H
#ifndef __ADC_H__
#define __ADC_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -45,14 +46,7 @@ void MX_ADC1_Init(void);
#ifdef __cplusplus
}
#endif
#endif /*__ adc_H */
/**
* @}
*/
/**
* @}
*/
#endif /* __ADC_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : dma.h
* Description : This file contains all the function prototypes for
* the dma.c file
* @file dma.h
* @brief This file contains all the function prototypes for
* the dma.c file
******************************************************************************
* @attention
*
@ -17,11 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __dma_H
#define __dma_H
#ifndef __DMA_H__
#define __DMA_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -47,10 +47,6 @@ void MX_DMA_Init(void);
}
#endif
#endif /* __dma_H */
/**
* @}
*/
#endif /* __DMA_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : gpio.h
* Description : This file contains all the functions prototypes for
* the gpio
* @file gpio.h
* @brief This file contains all the function prototypes for
* the gpio.c file
******************************************************************************
* @attention
*
@ -16,12 +16,12 @@
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __gpio_H
#define __gpio_H
#ifndef __GPIO_H__
#define __GPIO_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -45,14 +45,6 @@ void MX_GPIO_Init(void);
#ifdef __cplusplus
}
#endif
#endif /*__ pinoutConfig_H */
/**
* @}
*/
/**
* @}
*/
#endif /*__ GPIO_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : I2C.h
* Description : This file provides code for the configuration
* of the I2C instances.
* @file i2c.h
* @brief This file contains all the function prototypes for
* the i2c.c file
******************************************************************************
* @attention
*
@ -17,10 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __i2c_H
#define __i2c_H
#ifndef __I2C_H__
#define __I2C_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -45,14 +46,7 @@ void MX_I2C1_Init(void);
#ifdef __cplusplus
}
#endif
#endif /*__ i2c_H */
/**
* @}
*/
/**
* @}
*/
#endif /* __I2C_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : IWDG.h
* Description : This file provides code for the configuration
* of the IWDG instances.
* @file iwdg.h
* @brief This file contains all the function prototypes for
* the iwdg.c file
******************************************************************************
* @attention
*
@ -17,10 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __iwdg_H
#define __iwdg_H
#ifndef __IWDG_H__
#define __IWDG_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -45,14 +46,7 @@ void MX_IWDG_Init(void);
#ifdef __cplusplus
}
#endif
#endif /*__ iwdg_H */
/**
* @}
*/
/**
* @}
*/
#endif /* __IWDG_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -12,6 +12,8 @@
#include "stm32f1xx_hal.h"
#include "adc.h"
#include "gpio.h"
#include "log.h"
#define ADC_CH_COUNT 5+2 //number of adc channels (include temp sensor and vrefint adc_in17)

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : RTC.h
* Description : This file provides code for the configuration
* of the RTC instances.
* @file rtc.h
* @brief This file contains all the function prototypes for
* the rtc.c file
******************************************************************************
* @attention
*
@ -17,10 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __rtc_H
#define __rtc_H
#ifndef __RTC_H__
#define __RTC_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -45,14 +46,7 @@ void MX_RTC_Init(void);
#ifdef __cplusplus
}
#endif
#endif /*__ rtc_H */
/**
* @}
*/
/**
* @}
*/
#endif /* __RTC_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : USART.h
* Description : This file provides code for the configuration
* of the USART instances.
* @file usart.h
* @brief This file contains all the function prototypes for
* the usart.c file
******************************************************************************
* @attention
*
@ -17,10 +17,11 @@
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __usart_H
#define __usart_H
#ifndef __USART_H__
#define __USART_H__
#ifdef __cplusplus
extern "C" {
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
@ -28,6 +29,8 @@
/* USER CODE BEGIN Includes */
#include <stdio.h>
#include <stdarg.h>
/* USER CODE END Includes */
extern UART_HandleTypeDef huart4;
@ -42,19 +45,13 @@ void MX_USART1_UART_Init(void);
/* USER CODE BEGIN Prototypes */
void UartPrint(char * format,...);
/* USER CODE END Prototypes */
#ifdef __cplusplus
}
#endif
#endif /*__ usart_H */
/**
* @}
*/
/**
* @}
*/
#endif /* __USART_H__ */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : ADC.c
* Description : This file provides code for the configuration
* of the ADC instances.
* @file adc.c
* @brief This file provides code for the configuration
* of the ADC instances.
******************************************************************************
* @attention
*

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : dma.c
* Description : This file provides code for the configuration
* of all the requested memory to memory DMA transfers.
* @file dma.c
* @brief This file provides code for the configuration
* of all the requested memory to memory DMA transfers.
******************************************************************************
* @attention
*
@ -47,12 +47,4 @@ void MX_DMA_Init(void)
/* USER CODE END 2 */
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -1,3 +1,10 @@
/*
* @Description:
* @Date: 2020-04-02 21:44:31
* @LastEditors: CK.Zh
* @LastEditTime: 2020-12-17 17:27:06
* @FilePath: \NaviKit_stm32\Core\Src\freertos.c
*/
/* USER CODE BEGIN Header */
/**
******************************************************************************
@ -29,11 +36,12 @@
#include "iwdg.h"
#include "gpio.h"
#include "usart.h"
#include "stdio.h"
//#include "stdio.h"
#include "navikit.h"
#include "coulomb.h"
#include "stdbool.h"
#include "adc.h"
#include "log.h"
/* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/
@ -104,17 +112,10 @@ const osThreadAttr_t PowerMonitTask_attributes = {
.priority = (osPriority_t) osPriorityLow,
.stack_size = 128 * 4
};
/* Definitions for uartQueueTask */
osThreadId_t uartQueueTaskHandle;
const osThreadAttr_t uartQueueTask_attributes = {
.name = "uartQueueTask",
.priority = (osPriority_t) osPriorityLow,
.stack_size = 128 * 4
};
/* Definitions for uartQueue */
osMessageQueueId_t uartQueueHandle;
const osMessageQueueAttr_t uartQueue_attributes = {
.name = "uartQueue"
/* Definitions for myMutex01 */
osMutexId_t myMutex01Handle;
const osMutexAttr_t myMutex01_attributes = {
.name = "myMutex01"
};
/* Private function prototypes -----------------------------------------------*/
@ -128,11 +129,65 @@ void StartEventDetect(void *argument);
void StartCoulombRead(void *argument);
void StartStateSwitchTask(void *argument);
void StartPowerMonitTask(void *argument);
void StartUartQueueTask(void *argument);
extern void MX_USB_DEVICE_Init(void);
void MX_FREERTOS_Init(void); /* (MISRA C 2004 rule 8.1) */
/* Hook prototypes */
void configureTimerForRunTimeStats(void);
unsigned long getRunTimeCounterValue(void);
void vApplicationIdleHook(void);
void vApplicationTickHook(void);
void vApplicationStackOverflowHook(xTaskHandle xTask, signed char *pcTaskName);
/* USER CODE BEGIN 1 */
/* Functions needed when configGENERATE_RUN_TIME_STATS is on */
__weak void configureTimerForRunTimeStats(void)
{
}
__weak unsigned long getRunTimeCounterValue(void)
{
return 0;
}
/* USER CODE END 1 */
/* USER CODE BEGIN 2 */
void vApplicationIdleHook( void )
{
/* vApplicationIdleHook() will only be called if configUSE_IDLE_HOOK is set
to 1 in FreeRTOSConfig.h. It will be called on each iteration of the idle
task. It is essential that code added to this hook function never attempts
to block in any way (for example, call xQueueReceive() with a block time
specified, or call vTaskDelay()). If the application makes use of the
vTaskDelete() API function (as this demo application does) then it is also
important that vApplicationIdleHook() is permitted to return to its calling
function, because it is the responsibility of the idle task to clean up
memory allocated by the kernel to any task that has since been deleted. */
}
/* USER CODE END 2 */
/* USER CODE BEGIN 3 */
void vApplicationTickHook( void )
{
/* This function will be called by each tick interrupt if
configUSE_TICK_HOOK is set to 1 in FreeRTOSConfig.h. User code can be
added here, but the tick hook is called from an interrupt context, so
code must not attempt to block, and only the interrupt safe FreeRTOS API
functions can be used (those that end in FromISR()). */
}
/* USER CODE END 3 */
/* USER CODE BEGIN 4 */
void vApplicationStackOverflowHook(xTaskHandle xTask, signed char *pcTaskName)
{
/* Run time stack overflow checking is performed if
configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2. This hook function is
called if a stack overflow is detected. */
}
/* USER CODE END 4 */
/**
* @brief FreeRTOS initialization
* @param None
@ -142,6 +197,9 @@ void MX_FREERTOS_Init(void) {
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Create the mutex(es) */
/* creation of myMutex01 */
myMutex01Handle = osMutexNew(&myMutex01_attributes);
/* USER CODE BEGIN RTOS_MUTEX */
/* add mutexes, ... */
@ -155,10 +213,6 @@ void MX_FREERTOS_Init(void) {
/* start timers, add new ones, ... */
/* USER CODE END RTOS_TIMERS */
/* Create the queue(s) */
/* creation of uartQueue */
uartQueueHandle = osMessageQueueNew (128, sizeof(uint8_t), &uartQueue_attributes);
/* USER CODE BEGIN RTOS_QUEUES */
/* add queues, ... */
/* USER CODE END RTOS_QUEUES */
@ -177,7 +231,7 @@ void MX_FREERTOS_Init(void) {
EventDetectHandle = osThreadNew(StartEventDetect, NULL, &EventDetect_attributes);
/* creation of CoulombRead */
// CoulombReadHandle = osThreadNew(StartCoulombRead, NULL, &CoulombRead_attributes);
CoulombReadHandle = osThreadNew(StartCoulombRead, NULL, &CoulombRead_attributes);
/* creation of StateSwitchTask */
StateSwitchTaskHandle = osThreadNew(StartStateSwitchTask, NULL, &StateSwitchTask_attributes);
@ -185,14 +239,15 @@ void MX_FREERTOS_Init(void) {
/* creation of PowerMonitTask */
PowerMonitTaskHandle = osThreadNew(StartPowerMonitTask, NULL, &PowerMonitTask_attributes);
/* creation of uartQueueTask */
uartQueueTaskHandle = osThreadNew(StartUartQueueTask, NULL, &uartQueueTask_attributes);
/* USER CODE BEGIN RTOS_THREADS */
/* add threads, ... */
/* USER CODE END RTOS_THREADS */
/* USER CODE BEGIN RTOS_EVENTS */
/* add events, ... */
/* USER CODE END RTOS_EVENTS */
}
/* USER CODE BEGIN Header_StartDefaultTask */
@ -207,29 +262,35 @@ void StartDefaultTask(void *argument)
/* init code for USB_DEVICE */
MX_USB_DEVICE_Init();
/* USER CODE BEGIN StartDefaultTask */
osVersion_t osVersion;
char id_buf[20];
unsigned char id_size=20;
HAL_GPIO_WritePin(USB2_FS_ENUM_CTL_GPIO_Port,USB2_FS_ENUM_CTL_Pin, GPIO_PIN_SET);
Beep(50);
HAL_GPIO_WritePin(USB2_FS_ENUM_CTL_GPIO_Port,USB2_FS_ENUM_CTL_Pin, GPIO_PIN_SET);
Beep(50);
osDelay(100);
osDelay(100);
printf("\nCore initial successfully\n");
printf("---------------------------------------------\n");
printf("Copyright (c) Powered by www.autolabor.com.cn\n");
printf("BIOS SW Version: V0.9.1, build: %s, %s\n",__DATE__ ,__TIME__ );
printf("HAL Version: %lu \n", HAL_GetHalVersion());
printf("Revision ID: %lu \n", HAL_GetREVID());
printf("Device ID: %lu \n", HAL_GetDEVID());
printf("Chip UID: %lu%lu%lu \n", HAL_GetUIDw0(),HAL_GetUIDw1(),HAL_GetUIDw2);
printf("----------------------------------------------\n");
Log(info,"----------------------------------------------");
Log(info,"Copyright (c) Powered by www.autolabor.com.cn");
Log(info,"EC Firmware : %s[%s], build: %s, %s, by STD:%u",APP_VERSION,DEPLOY_MODE,__DATE__ ,__TIME__,__STDC_VERSION__ );
Log(info,"HAL Version: %u ", HAL_GetHalVersion());
Log(info,"Revision ID: %u ", HAL_GetREVID());
Log(info,"Device ID: %u ", HAL_GetDEVID());
Log(info,"Chip UID: %u%u%u ", HAL_GetUIDw0(),HAL_GetUIDw1(),HAL_GetUIDw2);
if(osKernelGetInfo(&osVersion,id_buf,id_size)){
Log(info,"OS Kernel Version: %u ", osVersion.kernel );
Log(info,"OS Kernel ID: %s ",id_buf );
}
Log(info,"Core initial successfully");
Log(info,"----------------------------------------------");
/* Infinite loop */
for(;;)
{
osDelay(100);
// printf("Time:[%f s]; OUT_24:[%f V]; OUT_5:[%f V]; OUT_12:[%f V]; BKP_BAT:[%f V]; MAIN_PWR:[%f V]\n",(float)(osKernelGetTickCount()/1000.0),NaviKit.pmb.rails.out_24v,NaviKit.pmb.rails.out_5v,NaviKit.pmb.rails.out_12v,NaviKit.pmb.rails.bkp_bat,NaviKit.pmb.rails.main_pwr);
}
/* USER CODE END StartDefaultTask */
}
@ -322,8 +383,10 @@ void StartLedBlinkTask(void *argument)
HAL_GPIO_WritePin(SYS_RUN_LED_CTL_GPIO_Port,SYS_RUN_LED_CTL_Pin,GPIO_PIN_SET);//turn off run led
osDelay(300);
}
}break;
case isp:
break;
}
}
}
/* USER CODE END StartLedBlinkTask */
}
@ -342,7 +405,6 @@ void StartIWDGRefreshTask(void *argument)
for(;;)
{
HAL_IWDG_Refresh(&hiwdg);
// printf("2\n");
osDelay(1000);
}
/* USER CODE END StartIWDGRefreshTask */
@ -361,7 +423,7 @@ void StartEventDetect(void *argument)
osDelay(100);
if(HAL_GPIO_ReadPin(SYS_CUSTOM_BTN_GPIO_Port,SYS_CUSTOM_BTN_Pin) == GPIO_PIN_RESET)
{
printf("Custom button has been pushed. \n");
Log(debug,"Custom button has been pushed.");
NaviKit.sys.next_sta = isp;
}
/* Infinite loop */
@ -522,83 +584,50 @@ void StartPowerMonitTask(void *argument)
/* Infinite loop */
for(;;)
{
osDelay(1000);
// printf("out_24v: %f \n",NaviKit.pmb.out_24v_div16);
// printf("out_5v: %f \n",NaviKit.pmb.out_5v_div8);
// printf("out_12v: %f \n",NaviKit.pmb.out_12v_div8);
// printf("bkp_bat: %f \n",NaviKit.pmb.bkp_bat_div8);
// printf("main_pwr: %f \n",NaviKit.pmb.main_pwr_div16);
if(NaviKit.pmb.rails.main_pwr < 19)
{
Beep(50);
if(NaviKit.pmb.rails.out_24v > 26.4 || NaviKit.pmb.rails.out_24v < 21.6){
Log(error,"24V power rail exception:%f",NaviKit.pmb.rails.out_24v);
// printf("24V power rail exception:%f",NaviKit.pmb.rails.out_24v);
}
if(NaviKit.pmb.rails.out_5v > 5.5 || NaviKit.pmb.rails.out_5v < 4.5){
Log(error,"5V power rail exception:%f",NaviKit.pmb.rails.out_5v);
// printf("5V power rail exception:%f",NaviKit.pmb.rails.out_5v);
}
if(NaviKit.pmb.rails.out_12v > 13.2 || NaviKit.pmb.rails.out_12v < 10.8){
Log(error ,"12V power rail exception:%f",NaviKit.pmb.rails.out_12v);
// printf("12V power rail exception:%f",NaviKit.pmb.rails.out_12v);
}
if(NaviKit.pmb.rails.bkp_bat < 10){
Log(warning,"Backup power is not online");
// printf("Backup power is not online");
}
if(NaviKit.pmb.rails.main_pwr < 19){
Beep(100);
Log(warning,"Main power has been lost, please shutdown computer as soon as possible");
// printf("Main power has been lost, please shutdown computer as soon as possible");
}
osDelay(5000);
}
/* USER CODE END StartPowerMonitTask */
}
/* USER CODE BEGIN Header_StartUartQueueTask */
/**
* @brief Function implementing the uartQueueTask thread.
* @param argument: Not used
* @retval None
*/
/* USER CODE END Header_StartUartQueueTask */
void StartUartQueueTask(void *argument)
{
/* USER CODE BEGIN StartUartQueueTask */
uint8_t count,temp[256];
// osMessageQueuePut(uartQueueHandle,"t",0,100);
// osMessageQueuePut(uartQueueHandle,"e",0,100);
// osMessageQueuePut(uartQueueHandle,"s",0,100);
// osMessageQueuePut(uartQueueHandle,"t",0,100);
/* Infinite loop */
for(;;)
{
osDelay(2);
count = osMessageQueueGetCount(uartQueueHandle);
if(count){
for(uint32_t i=0;i<count;i++){
osMessageQueueGet(uartQueueHandle,&temp[i],0,10);
}
taskENTER_CRITICAL();
while(HAL_UART_GetState(&huart1) == HAL_UART_STATE_BUSY_TX){}
HAL_UART_Transmit(&huart1,(uint8_t *)&temp,count,0xffff);
taskEXIT_CRITICAL();
}
}
/* USER CODE END StartUartQueueTask */
}
/* Private application code --------------------------------------------------*/
/* USER CODE BEGIN Application */
//printf redefine
#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
//#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#define PUTCHAR_PROTOTYPE int putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
// while(HAL_UART_GetState(&huart1) == HAL_UART_STATE_BUSY_TX){}
// HAL_UART_Transmit(&huart1,(uint8_t *)&ch,1,0xffff);
//queue space check before enqueue
if(osMessageQueueGetSpace(uartQueueHandle)){
osMessageQueuePut(uartQueueHandle,(uint8_t*)&ch,0,10);
}
else{
uint8_t front[1];//trash
osMessageQueueGet(uartQueueHandle,front,0,10);
osMessageQueuePut(uartQueueHandle,(uint8_t *)&ch,0,100);
}
return ch;
while(HAL_UART_GetState(&huart1) == HAL_UART_STATE_BUSY_TX){}
HAL_UART_Transmit(&huart1,(uint8_t *)&ch,1,0xffff);
return ch;
}
/* USER CODE END Application */

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : gpio.c
* Description : This file provides code for the configuration
* of all used GPIO pins.
* @file gpio.c
* @brief This file provides code for the configuration
* of all used GPIO pins.
******************************************************************************
* @attention
*
@ -19,6 +19,7 @@
/* Includes ------------------------------------------------------------------*/
#include "gpio.h"
/* USER CODE BEGIN 0 */
extern NaviKit_t NaviKit;

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : I2C.c
* Description : This file provides code for the configuration
* of the I2C instances.
* @file i2c.c
* @brief This file provides code for the configuration
* of the I2C instances.
******************************************************************************
* @attention
*

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : IWDG.c
* Description : This file provides code for the configuration
* of the IWDG instances.
* @file iwdg.c
* @brief This file provides code for the configuration
* of the IWDG instances.
******************************************************************************
* @attention
*

View File

@ -256,7 +256,7 @@ void ISP_Judge()
/* USER CODE END 4 */
/**
/**
* @brief Period elapsed callback in non blocking mode
* @note This function is called when TIM1 interrupt took place, inside
* HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment

View File

@ -1,3 +1,10 @@
/*
* @Description:
* @Date: 2020-04-17 13:16:16
* @LastEditors: CK.Zh
* @LastEditTime: 2020-12-17 17:29:07
* @FilePath: \NaviKit_stm32\Core\Src\navikit.c
*/
/*
* navikit.c
*
@ -58,7 +65,7 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{//if jetson nano shutdown output low,the power_en should be set low less than 10us
HAL_GPIO_WritePin(SOM_POWER_EN_GPIO_Port ,SOM_POWER_EN_Pin, GPIO_PIN_RESET);
NaviKit.sys.next_sta = shutdown;
printf("som request to shutdown");
Log(info,"som request to shutdown");
}
NaviKit.som.shutdown_req = true;
}
@ -72,12 +79,12 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
if(HAL_GPIO_ReadPin(SYS_POWER_BTN_GPIO_Port, SYS_POWER_BTN_Pin)==GPIO_PIN_SET)
{//Rising edge trigger
NaviKit.sys.power_btn = true;
printf("power_btn pushed \n");
Log(debug,"power_btn pushed");
}
if(HAL_GPIO_ReadPin(SYS_POWER_BTN_GPIO_Port, SYS_POWER_BTN_Pin)==GPIO_PIN_RESET)
{//falling edge trigger
NaviKit.sys.power_btn = false;
printf("power_btn released \n");
Log(debug,"power_btn released");
}
}
else if(GPIO_Pin == SYS_CUSTOM_BTN_Pin)
@ -85,12 +92,12 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
if(HAL_GPIO_ReadPin(SYS_CUSTOM_BTN_GPIO_Port, SYS_CUSTOM_BTN_Pin)==GPIO_PIN_SET)
{//Rising edge trigger
NaviKit.sys.custom_btn = false;
printf("custom_btn released \n");
Log(debug,"custom_btn released");
}
if(HAL_GPIO_ReadPin(SYS_CUSTOM_BTN_GPIO_Port, SYS_CUSTOM_BTN_Pin)==GPIO_PIN_RESET)
{//falling edge trigger
NaviKit.sys.custom_btn = true;
printf("custom_btn pushed \n");
Log(debug,"custom_btn pushed");
}
}
@ -120,19 +127,19 @@ void enter_isp_state()
Beep(500);
Beep(500);
Beep(500);
printf("Enter to BIOS update state.\n");
printf("System will reboot ,then run ISP automatic.\n");
Log(info,"Enter to EC update state.");
Log(info,"System will reboot ,then run ISP automatic.");
HAL_NVIC_SystemReset();
}
else{
printf("Backup Register Writen error, can not enter BIOS update state \n");
Log(error,"Backup register writen error, can not enter EC update state.");
}
}
//timeout:the time of wait
void enter_shutdown_state()
{
printf("Enter to shutdown state\n");
Log(info,"Enter to shutdown state");
Beep(50);
HAL_GPIO_WritePin(SOM_POWER_EN_GPIO_Port ,SOM_POWER_EN_Pin, GPIO_PIN_RESET); HAL_Delay(100);
@ -167,7 +174,7 @@ void enter_shutdown_state()
void enter_sleep_state()
{
printf("Enter to sleep state \n");
Log(info,"Enter to sleep state");
Beep(50);
// HAL_GPIO_WritePin(SOC_U3_HUB_PWR_CTL_GPIO_Port,SOC_U3_HUB_PWR_CTL_Pin, GPIO_PIN_RESET); HAL_Delay(100);
@ -199,7 +206,7 @@ void enter_sleep_state()
void enter_runing_state()
{
printf("Enter to runing state \n");
Log(info,"Enter to runing state");
Beep(200);
HAL_GPIO_WritePin(SOM_FORCE_RECOVERY_GPIO_Port ,SOM_FORCE_RECOVERY_Pin, GPIO_PIN_SET); HAL_Delay(100);
@ -236,7 +243,7 @@ void enter_runing_state()
void enter_dfu_state()
{
printf("Enter to dfu state \n");
Log(info,"Enter to dfu state");
Beep(500);
Beep(500);
Beep(500);

View File

@ -1,8 +1,8 @@
/**
******************************************************************************
* File Name : RTC.c
* Description : This file provides code for the configuration
* of the RTC instances.
* @file rtc.c
* @brief This file provides code for the configuration
* of the RTC instances.
******************************************************************************
* @attention
*

View File

@ -71,14 +71,6 @@ void HAL_MspInit(void)
__HAL_RCC_PWR_CLK_ENABLE();
/* System interrupt init*/
/* MemoryManagement_IRQn interrupt configuration */
HAL_NVIC_SetPriority(MemoryManagement_IRQn, 5, 0);
/* BusFault_IRQn interrupt configuration */
HAL_NVIC_SetPriority(BusFault_IRQn, 5, 0);
/* UsageFault_IRQn interrupt configuration */
HAL_NVIC_SetPriority(UsageFault_IRQn, 5, 0);
/* DebugMonitor_IRQn interrupt configuration */
HAL_NVIC_SetPriority(DebugMonitor_IRQn, 5, 0);
/* PendSV_IRQn interrupt configuration */
HAL_NVIC_SetPriority(PendSV_IRQn, 15, 0);

View File

@ -58,9 +58,8 @@ HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
/* Compute TIM1 clock */
uwTimclock = HAL_RCC_GetPCLK2Freq();
/* Compute the prescaler value to have TIM1 counter clock equal to 1MHz */
uwPrescalerValue = (uint32_t) ((uwTimclock / 1000000) - 1);
uwPrescalerValue = (uint32_t) ((uwTimclock / 1000000U) - 1U);
/* Initialize TIM1 */
htim1.Instance = TIM1;
@ -71,7 +70,7 @@ HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
+ ClockDivision = 0
+ Counter direction = Up
*/
htim1.Init.Period = (1000000 / 1000) - 1;
htim1.Init.Period = (1000000U / 1000U) - 1U;
htim1.Init.Prescaler = uwPrescalerValue;
htim1.Init.ClockDivision = 0;
htim1.Init.CounterMode = TIM_COUNTERMODE_UP;

View File

@ -1,8 +1,15 @@
/*
* @Description:
* @Date: 2020-04-04 11:28:36
* @LastEditors: CK.Zh
* @LastEditTime: 2020-12-17 17:28:53
* @FilePath: \NaviKit_stm32\Core\Src\usart.c
*/
/**
******************************************************************************
* File Name : USART.c
* Description : This file provides code for the configuration
* of the USART instances.
* @file usart.c
* @brief This file provides code for the configuration
* of the USART instances.
******************************************************************************
* @attention
*
@ -21,6 +28,7 @@
#include "usart.h"
/* USER CODE BEGIN 0 */
#include "log.h"
/* USER CODE END 0 */
UART_HandleTypeDef huart4;
@ -172,6 +180,7 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle)
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

32
Middlewares/Log/log.c Normal file
View File

@ -0,0 +1,32 @@
/*
* log.c
*
* Created on: Dec 16, 2020
* Author: bookshiyi
*/
#include "log.h"
void Log(LogLevel_t loglevel,char *format,...)
{
switch(loglevel){
case debug:{
printf("[Debug ] ") ;
}break;
case info:{
printf("[Info ] ") ;
}break;
case warning:{
printf("[Warning] ") ;
}break;
case error:{
printf("[Error ] ") ;
}break;
}
printf("%u | ",osKernelGetTickCount());
va_list args;
va_start( args, format );
print(0, format, args );
printf("\n") ;
}

21
Middlewares/Log/log.h Normal file
View File

@ -0,0 +1,21 @@
/*
* log.h
*
* Created on: Dec 16, 2020
* Author: bookshiyi
*/
#ifndef LOG_LOG_H_
#define LOG_LOG_H_
#include <stdarg.h>
typedef enum {
debug = 0,
info = 1,
warning = 2,
error = 3
}LogLevel_t;
void Log(LogLevel_t loglevel,char *format, ...);
#endif /* LOG_LOG_H_ */

173
Middlewares/Log/printf.c Normal file
View File

@ -0,0 +1,173 @@
#include <stdarg.h>
static void printchar(char **str, int c)
{
extern int putchar(int c);
if (str) {
**str = c;
++(*str);
}
else (void)putchar(c);
}
#define PAD_RIGHT 1
#define PAD_ZERO 2
static int prints(char **out, const char *string, int width, int pad)
{
register int pc = 0, padchar = ' ';
if (width > 0) {
register int len = 0;
register const char *ptr;
for (ptr = string; *ptr; ++ptr) ++len;
if (len >= width) width = 0;
else width -= len;
if (pad & PAD_ZERO) padchar = '0';
}
if (!(pad & PAD_RIGHT)) {
for ( ; width > 0; --width) {
printchar (out, padchar);
++pc;
}
}
for ( ; *string ; ++string) {
printchar (out, *string);
++pc;
}
for ( ; width > 0; --width) {
printchar (out, padchar);
++pc;
}
return pc;
}
/* the following should be enough for 32 bit int */
#define PRINT_BUF_LEN 12
static int printi(char **out, int i, int b, int sg, int width, int pad, int letbase)
{
char print_buf[PRINT_BUF_LEN];
register char *s;
register int t, neg = 0, pc = 0;
register unsigned int u = i;
if (i == 0) {
print_buf[0] = '0';
print_buf[1] = '\0';
return prints (out, print_buf, width, pad);
}
if (sg && b == 10 && i < 0) {
neg = 1;
u = -i;
}
s = print_buf + PRINT_BUF_LEN-1;
*s = '\0';
while (u) {
t = u % b;
if( t >= 10 )
t += letbase - '0' - 10;
*--s = t + '0';
u /= b;
}
if (neg) {
if( width && (pad & PAD_ZERO) ) {
printchar (out, '-');
++pc;
--width;
}
else {
*--s = '-';
}
}
return pc + prints (out, s, width, pad);
}
int print(char **out, const char *format, va_list args )
{
register int width, pad;
register int pc = 0;
char scr[2];
for (; *format != 0; ++format) {
if (*format == '%') {
++format;
width = pad = 0;
if (*format == '\0') break;
if (*format == '%') goto out;
if (*format == '-') {
++format;
pad = PAD_RIGHT;
}
while (*format == '0') {
++format;
pad |= PAD_ZERO;
}
for ( ; *format >= '0' && *format <= '9'; ++format) {
width *= 10;
width += *format - '0';
}
if( *format == 's' ) {
register char *s = (char *)va_arg( args, int );
pc += prints (out, s?s:"(null)", width, pad);
continue;
}
if( *format == 'd' ) {
pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a');
continue;
}
if( *format == 'x' ) {
pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a');
continue;
}
if( *format == 'X' ) {
pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A');
continue;
}
if( *format == 'u' ) {
pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a');
continue;
}
if( *format == 'c' ) {
/* char are converted to int then pushed on the stack */
scr[0] = (char)va_arg( args, int );
scr[1] = '\0';
pc += prints (out, scr, width, pad);
continue;
}
}
else {
out:
printchar (out, *format);
++pc;
}
}
if (out) **out = '\0';
va_end( args );
return pc;
}
int printf(const char *format, ...)
{
va_list args;
va_start( args, format );
return print( 0, format, args );
}
int sprintf(char *out, const char *format, ...)
{
va_list args;
va_start( args, format );
return print( &out, format, args );
}

View File

@ -82,6 +82,9 @@
</listAttribute>
<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="org.eclipse.cdt.debug.core.sourceLocator"/>
<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;sourceLookupDirector&gt;&#13;&#10;&lt;sourceContainers duplicates=&quot;false&quot;&gt;&#13;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10;&lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;mapping backend_enabled=&amp;quot;true&amp;quot; name=&amp;quot;Found Mappings&amp;quot;&amp;gt;&amp;#13;&amp;#10;&amp;lt;mapEntry memento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;mapEntry backendPath=&amp;amp;quot;E:/source/NaviKit_stm32/Debug/../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3/&amp;amp;quot; localPath=&amp;amp;quot;E:\source\STM32CubeIDE\NaviKit_stm32\Middlewares\Third_Party\FreeRTOS\Source\portable\GCC\ARM_CM3\&amp;amp;quot;/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&amp;lt;mapEntry memento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;mapEntry backendPath=&amp;amp;quot;E:/source/NaviKit_stm32/Debug/../Core/Startup/&amp;amp;quot; localPath=&amp;amp;quot;E:\source\STM32CubeIDE\NaviKit_stm32\Core\Startup\&amp;amp;quot;/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&amp;lt;/mapping&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.cdt.debug.core.containerType.mapping&quot;/&gt;&#13;&#10;&lt;/sourceContainers&gt;&#13;&#10;&lt;/sourceLookupDirector&gt;&#13;&#10;"/>
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
</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;&lt;gdbmemoryBlockExpression address=&quot;536936416&quot; label=&quot;0x2000ffe0&quot;/&gt;&#13;&#10;&lt;gdbmemoryBlockExpression address=&quot;536876872&quot; label=&quot;0x20001748&quot;/&gt;&#13;&#10;&lt;gdbmemoryBlockExpression address=&quot;136314880&quot; label=&quot;0x08200000&quot;/&gt;&#13;&#10;&lt;/memoryBlockExpressionList&gt;&#13;&#10;"/>
<stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/>
</launchConfiguration>

View File

@ -32,7 +32,6 @@ ADC1.SamplingTime-6\#ChannelRegularConversion=ADC_SAMPLETIME_239CYCLES_5
ADC1.WatchdogChannel=ADC_CHANNEL_TEMPSENSOR
ADC1.WatchdogMode=ADC_ANALOGWATCHDOG_SINGLE_REG
ADC1.master=1
ARM.CMSIS.5.6.0.CMSISJjCORE_Checked=false
ARM.CMSIS.5.6.0.CMSISJjDSP=Library
ARM.CMSIS.5.6.0.CMSISJjNNOoLib=true
ARM.CMSIS.5.6.0.CMSISOoDriverJjCANJjCustom=true
@ -54,7 +53,7 @@ ARM.CMSIS.5.6.0.DeviceJjIRQOoControllerJjGIC=true
ARM.CMSIS.5.6.0.DeviceJjOSOoTickJjPrivateOoTimer=true
ARM.CMSIS.5.6.0.DeviceJjStartup=COoStartup
ARM.CMSIS.5.6.0.IPParameters=CMSISJjNNOoLib,DeviceJjIRQOoControllerJjGIC,DeviceJjOSOoTickJjPrivateOoTimer,CMSISOoDriverJjUSARTJjCustom,CMSISOoDriverJjSPIJjCustom,CMSISOoDriverJjSAIJjCustom,CMSISOoDriverJjI2CJjCustom,CMSISOoDriverJjCANJjCustom,CMSISOoDriverJjFlashJjCustom,CMSISOoDriverJjMCIJjCustom,CMSISOoDriverJjNANDJjCustom,CMSISOoDriverJjEthernetJjCustom,CMSISOoDriverJjEthernetOoMACJjCustom,CMSISOoDriverJjEthernetOoPHYJjCustom,CMSISOoDriverJjUSBOoDeviceJjCustom,CMSISOoDriverJjUSBOoHostJjCustom,CMSISOoDriverJjWiFiJjCustom,CMSISJjDSP,DeviceJjStartup
ARM.CMSIS.5.6.0_SwParameter=CMSISOoDriverJjUSARTJjCustom\:true;DeviceJjOSOoTickJjPrivateOoTimer\:true;CMSISOoDriverJjUSBOoDeviceJjCustom\:true;CMSISOoDriverJjCANJjCustom\:true;CMSISJjCORE\:false;CMSISOoDriverJjFlashJjCustom\:true;CMSISOoDriverJjNANDJjCustom\:true;CMSISOoDriverJjEthernetJjCustom\:true;CMSISOoDriverJjEthernetOoMACJjCustom\:true;CMSISOoDriverJjUSBOoHostJjCustom\:true;CMSISOoDriverJjSAIJjCustom\:true;CMSISOoDriverJjWiFiJjCustom\:true;CMSISJjDSP\:Library;CMSISOoDriverJjSPIJjCustom\:true;CMSISOoDriverJjMCIJjCustom\:true;CMSISOoDriverJjEthernetOoPHYJjCustom\:true;DeviceJjIRQOoControllerJjGIC\:true;CMSISJjNNOoLib\:true;CMSISOoDriverJjI2CJjCustom\:true;
ARM.CMSIS.5.6.0_SwParameter=CMSISOoDriverJjUSARTJjCustom\:true;DeviceJjOSOoTickJjPrivateOoTimer\:true;CMSISOoDriverJjUSBOoDeviceJjCustom\:true;CMSISOoDriverJjCANJjCustom\:true;CMSISOoDriverJjFlashJjCustom\:true;CMSISOoDriverJjNANDJjCustom\:true;CMSISOoDriverJjEthernetJjCustom\:true;CMSISOoDriverJjEthernetOoMACJjCustom\:true;CMSISOoDriverJjUSBOoHostJjCustom\:true;CMSISOoDriverJjSAIJjCustom\:true;CMSISOoDriverJjWiFiJjCustom\:true;CMSISJjDSP\:Library;CMSISOoDriverJjSPIJjCustom\:true;CMSISOoDriverJjMCIJjCustom\:true;CMSISOoDriverJjEthernetOoPHYJjCustom\:true;DeviceJjIRQOoControllerJjGIC\:true;CMSISJjNNOoLib\:true;DeviceJjStartup\:COoStartup;CMSISOoDriverJjI2CJjCustom\:true;
Dma.ADC1.0.Direction=DMA_PERIPH_TO_MEMORY
Dma.ADC1.0.Instance=DMA1_Channel1
Dma.ADC1.0.MemDataAlignment=DMA_MDATAALIGN_WORD
@ -70,20 +69,20 @@ FREERTOS.FootprintOK=true
FREERTOS.HEAP_NUMBER=4
FREERTOS.INCLUDE_xTaskGetCurrentTaskHandle=1
FREERTOS.INCLUDE_xTaskGetHandle=1
FREERTOS.IPParameters=Tasks01,configMAX_TASK_NAME_LEN,configUSE_TICKLESS_IDLE,INCLUDE_xTaskGetCurrentTaskHandle,INCLUDE_xTaskGetHandle,configUSE_APPLICATION_TASK_TAG,FootprintOK,configUSE_IDLE_HOOK,configUSE_TICK_HOOK,configUSE_MALLOC_FAILED_HOOK,configGENERATE_RUN_TIME_STATS,configUSE_STATS_FORMATTING_FUNCTIONS,configUSE_TRACE_FACILITY,HEAP_NUMBER,configTOTAL_HEAP_SIZE,configCHECK_FOR_STACK_OVERFLOW,Queues01,configUSE_TASK_NOTIFICATIONS
FREERTOS.Queues01=uartQueue,128,uint8_t,0,Dynamic,NULL,NULL
FREERTOS.Tasks01=defaultTask,24,128,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL;LedBlinkTask,8,128,StartLedBlinkTask,Default,NULL,Dynamic,NULL,NULL;IWDGRefreshTask,40,128,StartIWDGRefreshTask,Default,NULL,Dynamic,NULL,NULL;EventDetect,8,128,StartEventDetect,Default,NULL,Dynamic,NULL,NULL;CoulombRead,8,128,StartCoulombRead,Default,NULL,Dynamic,NULL,NULL;StateSwitchTask,8,128,StartStateSwitchTask,Default,NULL,Dynamic,NULL,NULL;PowerMonitTask,8,128,StartPowerMonitTask,Default,NULL,Dynamic,NULL,NULL;uartQueueTask,8,128,StartUartQueueTask,Default,NULL,Dynamic,NULL,NULL
FREERTOS.configCHECK_FOR_STACK_OVERFLOW=0
FREERTOS.configGENERATE_RUN_TIME_STATS=0
FREERTOS.IPParameters=Tasks01,configMAX_TASK_NAME_LEN,configUSE_TICKLESS_IDLE,INCLUDE_xTaskGetCurrentTaskHandle,INCLUDE_xTaskGetHandle,configUSE_APPLICATION_TASK_TAG,FootprintOK,configUSE_IDLE_HOOK,configUSE_TICK_HOOK,configUSE_MALLOC_FAILED_HOOK,configGENERATE_RUN_TIME_STATS,configUSE_STATS_FORMATTING_FUNCTIONS,configUSE_TRACE_FACILITY,HEAP_NUMBER,configTOTAL_HEAP_SIZE,configCHECK_FOR_STACK_OVERFLOW,configUSE_TASK_NOTIFICATIONS,Mutexes01
FREERTOS.Mutexes01=myMutex01,Dynamic,NULL
FREERTOS.Tasks01=defaultTask,24,128,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL;LedBlinkTask,8,128,StartLedBlinkTask,Default,NULL,Dynamic,NULL,NULL;IWDGRefreshTask,40,128,StartIWDGRefreshTask,Default,NULL,Dynamic,NULL,NULL;EventDetect,8,128,StartEventDetect,Default,NULL,Dynamic,NULL,NULL;CoulombRead,8,128,StartCoulombRead,Default,NULL,Dynamic,NULL,NULL;StateSwitchTask,8,128,StartStateSwitchTask,Default,NULL,Dynamic,NULL,NULL;PowerMonitTask,8,128,StartPowerMonitTask,Default,NULL,Dynamic,NULL,NULL
FREERTOS.configCHECK_FOR_STACK_OVERFLOW=1
FREERTOS.configGENERATE_RUN_TIME_STATS=1
FREERTOS.configMAX_TASK_NAME_LEN=32
FREERTOS.configTOTAL_HEAP_SIZE=8192
FREERTOS.configUSE_APPLICATION_TASK_TAG=0
FREERTOS.configUSE_IDLE_HOOK=0
FREERTOS.configUSE_IDLE_HOOK=1
FREERTOS.configUSE_MALLOC_FAILED_HOOK=0
FREERTOS.configUSE_STATS_FORMATTING_FUNCTIONS=0
FREERTOS.configUSE_TASK_NOTIFICATIONS=1
FREERTOS.configUSE_TICKLESS_IDLE=0
FREERTOS.configUSE_TICK_HOOK=0
FREERTOS.configUSE_TICK_HOOK=1
FREERTOS.configUSE_TRACE_FACILITY=0
File.Version=6
GPIO.groupedBy=Group By Peripherals
@ -185,39 +184,39 @@ Mcu.ThirdParty0=ARM.CMSIS.5.6.0
Mcu.ThirdPartyNb=1
Mcu.UserConstants=
Mcu.UserName=STM32F107VCTx
MxCube.Version=6.0.1
MxDb.Version=DB.6.0.0
MxCube.Version=6.1.0
MxDb.Version=DB.6.0.10
NVIC.ADC1_2_IRQn=true\:5\:0\:false\:true\:true\:8\:true\:true\:true
NVIC.BusFault_IRQn=true\:5\:0\:false\:false\:true\:true\: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.DebugMonitor_IRQn=true\:5\:0\:true\:false\:true\:true\:false\:false
NVIC.DebugMonitor_IRQn=true\:0\:0\:true\:false\:true\:false\:false\:false
NVIC.EXTI0_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true
NVIC.EXTI3_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true
NVIC.EXTI9_5_IRQn=true\:5\:0\:true\:false\:true\:true\:true\:true
NVIC.EXTI9_5_IRQn=true\:5\:0\:true\:false\:true\:false\:true\:true
NVIC.FLASH_IRQn=true\:5\:0\:false\:true\:true\:2\:true\:true\:true
NVIC.ForceEnableDMAVector=true
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.I2C1_ER_IRQn=true\:5\:0\:true\:true\:true\:7\:true\:true\:true
NVIC.I2C1_ER_IRQn=true\:5\:0\:true\:true\:true\:7\:false\:true\:true
NVIC.I2C1_EV_IRQn=true\:5\:0\:false\:true\:true\:6\:true\:true\:true
NVIC.MemoryManagement_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:false
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true
NVIC.OTG_FS_IRQn=true\:5\:0\:false\:true\:true\:4\:true\:false\:true
NVIC.PVD_IRQn=true\:5\:0\:true\:true\:true\:1\:true\:true\:true
NVIC.PVD_IRQn=true\:5\:0\:true\:true\:true\:1\:false\:true\:true
NVIC.PendSV_IRQn=true\:15\:0\:false\:false\:false\:true\:false\:false
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
NVIC.RCC_IRQn=true\:5\:0\:false\:true\:true\:3\:true\:true\:false
NVIC.RTC_IRQn=true\:5\:0\:true\:false\:true\:true\:true\:true
NVIC.RTC_IRQn=true\:5\:0\:true\:false\:true\:false\:true\:true
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:false\:false\:false\:false
NVIC.SavedPendsvIrqHandlerGenerated=true
NVIC.SavedSvcallIrqHandlerGenerated=true
NVIC.SavedSystickIrqHandlerGenerated=true
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:false\:true\:false\:false
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:false\:true\:false\:true
NVIC.TIM1_UP_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true
NVIC.TimeBase=TIM1_UP_IRQn
NVIC.TimeBaseIP=TIM1
NVIC.UART4_IRQn=true\:5\:0\:false\:true\:true\:5\:true\:true\:true
NVIC.USART1_IRQn=true\:5\:0\:false\:true\:true\:10\:true\:true\:true
NVIC.UsageFault_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:false
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
OSC_IN.Mode=HSE-External-Oscillator
OSC_IN.Signal=RCC_OSC_IN
OSC_OUT.Mode=HSE-External-Oscillator
@ -380,17 +379,17 @@ PCC.Line=STM32F105/107
PCC.MCU=STM32F107V(B-C)Tx
PCC.PartNumber=STM32F107VCTx
PCC.Seq0=2
PCC.Seq0.Step0.Average_Current=2.9 mA
PCC.Seq0.Step0.CPU_Frequency=4 MHz
PCC.Seq0.Step0.Average_Current=14.8 mA
PCC.Seq0.Step0.CPU_Frequency=36 MHz
PCC.Seq0.Step0.Category=In DS Table
PCC.Seq0.Step0.DMIPS=5.0
PCC.Seq0.Step0.DMIPS=45.0
PCC.Seq0.Step0.Duration=0.1 ms
PCC.Seq0.Step0.Frequency=8 MHz
PCC.Seq0.Step0.Memory=FLASH
PCC.Seq0.Step0.Mode=RUN
PCC.Seq0.Step0.Oscillator=HSE
PCC.Seq0.Step0.Oscillator=HSI PLL
PCC.Seq0.Step0.Peripherals=
PCC.Seq0.Step0.TaMax=104.56
PCC.Seq0.Step0.TaMax=102.75
PCC.Seq0.Step0.User's_Consumption=0 mA
PCC.Seq0.Step0.Vcore=No Scale
PCC.Seq0.Step0.Vdd=3.3

View File

@ -1,3 +1,10 @@
/*
* @Description:
* @Date: 2020-02-20 11:58:24
* @LastEditors: CK.Zh
* @LastEditTime: 2020-12-17 17:39:37
* @FilePath: \NaviKit_stm32\USB_DEVICE\Target\usbd_conf.h
*/
/* USER CODE BEGIN Header */
/**
******************************************************************************