<?xml version="1.0" encoding="UTF-8" standalone="no"?> | |||||
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> | |||||
<storageModule moduleId="org.eclipse.cdt.core.settings"> | |||||
<cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1141907877"> | |||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1141907877" moduleId="org.eclipse.cdt.core.settings" name="Debug"> | |||||
<externalSettings/> | |||||
<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.GLDErrorParser" 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"/> | |||||
</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.1141907877" 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.1141907877." name="/" resourcePath=""> | |||||
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.503320802" 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.1305906890" 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.1766865012" 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.1967260050" name="Mcu" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" useByScannerDiscovery="true" value="STM32L152RETx" valueType="string"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.2012346865" 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.1682947677" 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.2131010153" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="NUCLEO-L152RE" valueType="string"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.629474397" 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 || NUCLEO-L152RE || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Core/Inc | ../Drivers/STM32L1xx_HAL_Driver/Inc | ../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32L1xx/Include | ../Drivers/CMSIS/Include || || || USE_HAL_DRIVER | STM32L152xE || || Drivers | Core/Startup | Core || || || ${workspace_loc:/${ProjName}/STM32L152RETX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || " valueType="string"/> | |||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.522703302" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/> | |||||
<builder buildPath="${workspace_loc:/steppermotor}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.1884069117" 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.1008585106" 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.1611306572" 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"/> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.273141768" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.962936976" 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.1076633805" 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.379207459" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false"/> | |||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.316950337" 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="STM32L152xE"/> | |||||
<listOptionValue builtIn="false" value="DEBUG"/> | |||||
</option> | |||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.1818089897" 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="../Core/Inc"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/STM32L1xx_HAL_Driver/Inc"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Device/ST/STM32L1xx/Include"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Include"/> | |||||
</option> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.934393355" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.1287500072" name="MCU G++ Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler"> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel.1135600238" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel.value.g3" valueType="enumerated"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.439845698" 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.168557279" 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.802777139" name="Linker Script (-T)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script" value="${workspace_loc:/${ProjName}/STM32L152RETX_FLASH.ld}" valueType="string"/> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input.676605634" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input"> | |||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> | |||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/> | |||||
</inputType> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.597090175" name="MCU G++ Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.178493331" name="MCU GCC Archiver" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.213176581" name="MCU Size" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.363024853" name="MCU Output Converter list file" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.862528736" name="MCU Output Converter Hex" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.246203418" name="MCU Output Converter Binary" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.1196911209" name="MCU Output Converter Verilog" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.1755437290" name="MCU Output Converter Motorola S-rec" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.156822194" name="MCU Output Converter Motorola S-rec with symbols" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec"/> | |||||
</toolChain> | |||||
</folderInfo> | |||||
<sourceEntries> | |||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/> | |||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/> | |||||
</sourceEntries> | |||||
</configuration> | |||||
</storageModule> | |||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> | |||||
</cconfiguration> | |||||
<cconfiguration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.584147364"> | |||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.584147364" moduleId="org.eclipse.cdt.core.settings" name="Release"> | |||||
<externalSettings/> | |||||
<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.GLDErrorParser" 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"/> | |||||
</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.584147364" 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.584147364." name="/" resourcePath=""> | |||||
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release.2031797540" 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.1363877787" 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.269824640" 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.1186499763" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" value="STM32L152RETx" valueType="string"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.706295293" 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.775118721" 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.1141411267" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" value="NUCLEO-L152RE" valueType="string"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.356774365" 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 || NUCLEO-L152RE || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Core/Inc | ../Drivers/STM32L1xx_HAL_Driver/Inc | ../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32L1xx/Include | ../Drivers/CMSIS/Include || || || USE_HAL_DRIVER | STM32L152xE || || Drivers | Core/Startup | Core || || || ${workspace_loc:/${ProjName}/STM32L152RETX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || " valueType="string"/> | |||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.943602164" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/> | |||||
<builder buildPath="${workspace_loc:/steppermotor}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.180955309" managedBuildOn="true" name="Gnu Make Builder.Release" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.320976374" 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.178892267" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g0" valueType="enumerated"/> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.1292985179" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.871498979" 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.500201856" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.648795861" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.os" valueType="enumerated"/> | |||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols.370680309" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" valueType="definedSymbols"> | |||||
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/> | |||||
<listOptionValue builtIn="false" value="STM32L152xE"/> | |||||
</option> | |||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.1128784608" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" valueType="includePath"> | |||||
<listOptionValue builtIn="false" value="../Core/Inc"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/STM32L1xx_HAL_Driver/Inc"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Device/ST/STM32L1xx/Include"/> | |||||
<listOptionValue builtIn="false" value="../Drivers/CMSIS/Include"/> | |||||
</option> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.791553058" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.1742133111" name="MCU G++ Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler"> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel.421362922" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel.value.g0" valueType="enumerated"/> | |||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.1230961562" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.value.os" valueType="enumerated"/> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.1017152790" 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.1076825732" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.option.script" value="${workspace_loc:/${ProjName}/STM32L152RETX_FLASH.ld}" valueType="string"/> | |||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input.653353395" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.input"> | |||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> | |||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/> | |||||
</inputType> | |||||
</tool> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.53134382" name="MCU G++ Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.587256473" name="MCU GCC Archiver" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.2054825503" name="MCU Size" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.1479090683" name="MCU Output Converter list file" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.1922018644" name="MCU Output Converter Hex" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.1168804636" name="MCU Output Converter Binary" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.408467149" name="MCU Output Converter Verilog" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.1452078931" name="MCU Output Converter Motorola S-rec" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec"/> | |||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.72482064" name="MCU Output Converter Motorola S-rec with symbols" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec"/> | |||||
</toolChain> | |||||
</folderInfo> | |||||
<sourceEntries> | |||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/> | |||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/> | |||||
</sourceEntries> | |||||
</configuration> | |||||
</storageModule> | |||||
</cconfiguration> | |||||
</storageModule> | |||||
<storageModule moduleId="org.eclipse.cdt.core.pathentry"/> | |||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0"> | |||||
<project id="steppermotor.null.462800969" name="steppermotor"/> | |||||
</storageModule> | |||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> | |||||
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> | |||||
<storageModule moduleId="scannerConfiguration"> | |||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> | |||||
<scannerConfigBuildInfo instanceId="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.584147364;com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.584147364.;com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.871498979;com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.791553058"> | |||||
<autodiscovery enabled="false" problemReportingEnabled="true" selectedProfileId=""/> | |||||
</scannerConfigBuildInfo> | |||||
<scannerConfigBuildInfo instanceId="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1141907877;com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1141907877.;com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.962936976;com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.934393355"> | |||||
<autodiscovery enabled="false" problemReportingEnabled="true" selectedProfileId=""/> | |||||
</scannerConfigBuildInfo> | |||||
</storageModule> | |||||
</cproject> |
[PreviousGenFiles] | |||||
AdvancedFolderStructure=true | |||||
HeaderFileListSize=3 | |||||
HeaderFiles#0=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Inc/stm32l1xx_it.h | |||||
HeaderFiles#1=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Inc/stm32l1xx_hal_conf.h | |||||
HeaderFiles#2=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Inc/main.h | |||||
HeaderFolderListSize=1 | |||||
HeaderPath#0=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Inc | |||||
HeaderFiles=; | |||||
SourceFileListSize=3 | |||||
SourceFiles#0=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Src/stm32l1xx_it.c | |||||
SourceFiles#1=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Src/stm32l1xx_hal_msp.c | |||||
SourceFiles#2=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Src/main.c | |||||
SourceFolderListSize=1 | |||||
SourcePath#0=C:/Users/wuest/Desktop/Studium/Master/Sem2/Projekt/Arbeit/uC/Motorsteuerung/stepper/steppermotor/Core/Src | |||||
SourceFiles=; | |||||
[PreviousLibFiles] | |||||
LibFiles=Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h;Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_uart.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ramfunc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_gpio.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dma.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cortex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_exti.c;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h;Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h;Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h;Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h;Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h;Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h;Drivers/CMSIS/Device/ST/STM32L1xx/Source/Templates/system_stm32l1xx.c;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/core_armv8mbl.h;Drivers/CMSIS/Include/core_armv8mml.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/mpu_armv7.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/tz_context.h; | |||||
[PreviousUsedCubeIDEFiles] | |||||
SourceFiles=Core\Src\main.c;Core\Src\stm32l1xx_it.c;Core\Src\stm32l1xx_hal_msp.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_uart.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ramfunc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_gpio.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dma.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cortex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_exti.c;Core\Src/system_stm32l1xx.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_tim_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_uart.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_rcc_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ramfunc.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_gpio.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dma.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_pwr_ex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cortex.c;Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_exti.c;Core\Src/system_stm32l1xx.c;Drivers/CMSIS/Device/ST/STM32L1xx/Source/Templates/system_stm32l1xx.c;; | |||||
HeaderPath=Drivers\STM32L1xx_HAL_Driver\Inc;Drivers\STM32L1xx_HAL_Driver\Inc\Legacy;Drivers\CMSIS\Device\ST\STM32L1xx\Include;Drivers\CMSIS\Include;Core\Inc; | |||||
CDefines=USE_HAL_DRIVER;STM32L152xE;USE_HAL_DRIVER;USE_HAL_DRIVER; | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<projectDescription> | |||||
<name>steppermotor</name> | |||||
<comment></comment> | |||||
<projects> | |||||
</projects> | |||||
<buildSpec> | |||||
<buildCommand> | |||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> | |||||
<triggers>clean,full,incremental,</triggers> | |||||
<arguments> | |||||
</arguments> | |||||
</buildCommand> | |||||
<buildCommand> | |||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> | |||||
<triggers>full,incremental,</triggers> | |||||
<arguments> | |||||
</arguments> | |||||
</buildCommand> | |||||
</buildSpec> | |||||
<natures> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUProjectNature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUCubeProjectNature</nature> | |||||
<nature>org.eclipse.cdt.core.cnature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUCubeIdeServicesRevAev2ProjectNature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUAdvancedStructureProjectNature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUEndUserDisabledTrustZoneProjectNature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCUSingleCpuProjectNature</nature> | |||||
<nature>com.st.stm32cube.ide.mcu.MCURootProjectNature</nature> | |||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> | |||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> | |||||
</natures> | |||||
</projectDescription> |
<?xml version="1.0" encoding="UTF-8" standalone="no"?> | |||||
<project> | |||||
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1141907877" name="Debug"> | |||||
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | |||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | |||||
<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="626341644866754942" 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 "${INPUTS}"" prefer-non-shared="true"> | |||||
<language-scope id="org.eclipse.cdt.core.gcc"/> | |||||
<language-scope id="org.eclipse.cdt.core.g++"/> | |||||
</provider> | |||||
</extension> | |||||
</configuration> | |||||
<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.584147364" name="Release"> | |||||
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | |||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | |||||
<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="626341644866754942" 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 "${INPUTS}"" prefer-non-shared="true"> | |||||
<language-scope id="org.eclipse.cdt.core.gcc"/> | |||||
<language-scope id="org.eclipse.cdt.core.g++"/> | |||||
</provider> | |||||
</extension> | |||||
</configuration> | |||||
</project> |
635E684B79701B039C64EA45C3F84D30=D2046F946921BE52819209C297E56C23 | |||||
DC22A860405A8BF2F2C095E5B6529F12=158F9C7A9152A6513C3D86F67D6CAEFC | |||||
eclipse.preferences.version=1 |
/******************************************************//** | |||||
* @file l6208.h | |||||
* @author IPC Rennes | |||||
* @version V1.5.0 | |||||
* @date June 1st, 2018 | |||||
* @brief Header for l6208.c module | |||||
* @note (C) COPYRIGHT 2016 STMicroelectronics | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef _L6208_H_INCLUDED | |||||
#define _L6208_H_INCLUDED | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "l6208_target_config.h" | |||||
#include "motor.h" | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup L6208 | |||||
* @{ | |||||
*/ | |||||
/* Exported Constants --------------------------------------------------------*/ | |||||
/** @addtogroup L6208_Exported_Constants | |||||
* @{ | |||||
*/ | |||||
/// Current FW major version | |||||
#define L6208_FW_MAJOR_VERSION (uint8_t)(1) | |||||
/// Current FW minor version | |||||
#define L6208_FW_MINOR_VERSION (uint8_t)(4) | |||||
/// Current FW patch version | |||||
#define L6208_FW_PATCH_VERSION (uint8_t)(0) | |||||
/// Current FW version | |||||
#define L6208_FW_VERSION (uint32_t)((L6208_FW_MAJOR_VERSION<<16)|\ | |||||
(L6208_FW_MINOR_VERSION<<8)|\ | |||||
(L6208_FW_PATCH_VERSION)) | |||||
/// Max position | |||||
#define L6208_MAX_POSITION (0x7FFFFFFF) | |||||
/// Min position | |||||
#define L6208_MIN_POSITION (0x80000000) | |||||
/// Position range | |||||
#define L6208_POSITION_RANGE ((uint32_t)(L6208_MAX_POSITION -\ | |||||
L6208_MIN_POSITION)) | |||||
/// micro step samples per period/4 | |||||
#define L6208_USTEPS_PER_QUARTER_PERIOD (16) | |||||
/// minimum speed | |||||
#define L6208_MIN_SPEED (16) | |||||
/// minimum acceleration and deceleration rate | |||||
#define L6208_MIN_ACC_DEC_RATE (24) | |||||
/// Mask for HiZ bit in motorDecayMode_t enum | |||||
#define L6208_FAST_DECAY_MODE_MASK (0x1) | |||||
/// L6208 error base number | |||||
#define L6208_ERROR_BASE (0x9000) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/* Exported types ------------------------------------------------------------*/ | |||||
/** @defgroup Error_Types Error Types | |||||
* @{ | |||||
*/ | |||||
/// Errors | |||||
typedef enum { | |||||
L6208_ERROR_SET_HOME = L6208_ERROR_BASE, /// Error while setting home position | |||||
L6208_ERROR_SET_MAX_SPEED = L6208_ERROR_BASE + 1, /// Error while setting max speed | |||||
L6208_ERROR_SET_MIN_SPEED = L6208_ERROR_BASE + 2, /// Error while setting min speed | |||||
L6208_ERROR_SET_ACCELERATION = L6208_ERROR_BASE + 3, /// Error while setting acceleration | |||||
L6208_ERROR_SET_DECELERATION = L6208_ERROR_BASE + 4, /// Error while setting decelaration | |||||
L6208_ERROR_MCU_OSC_CONFIG = L6208_ERROR_BASE + 5, /// Error while configuring mcu oscillator | |||||
L6208_ERROR_MCU_CLOCK_CONFIG = L6208_ERROR_BASE + 6, /// Error while configuring mcu clock | |||||
L6208_ERROR_POSITION = L6208_ERROR_BASE + 7, /// Unexpected current position (wrong number of steps) | |||||
L6208_ERROR_SPEED = L6208_ERROR_BASE + 8, /// Unexpected current speed | |||||
L6208_ERROR_INIT = L6208_ERROR_BASE + 9, /// Unexpected number of devices | |||||
L6208_ERROR_SET_DIRECTION = L6208_ERROR_BASE + 10,/// Error while setting direction | |||||
L6208_ERROR_SET_STEP_MODE = L6208_ERROR_BASE + 11,/// Attempt to set an unsupported step mode | |||||
L6208_ERROR_SET_PWM = L6208_ERROR_BASE + 12,/// Error while setting a PWM parameter | |||||
}errorTypes_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Device_Parameters Device Parameters | |||||
* @{ | |||||
*/ | |||||
/// Device Parameters Structure Type | |||||
typedef struct | |||||
{ | |||||
/// dwelling waiting time counter (tick) | |||||
volatile uint32_t dwellCounter; | |||||
/// motor position indicator (tick) | |||||
uint32_t ticks; | |||||
/// LSByte copy of the previous position (tick) | |||||
uint8_t lsbOldTicks; | |||||
/// LSByte copy of the previous position (tick) ( micro stepping ) | |||||
uint8_t lsbOldUSteppingTicks; | |||||
/// LSByte copy of the current position (tick) | |||||
uint8_t lsbTicks; | |||||
/// P1 = acceleration phase steps number (motor position control mode) | |||||
uint32_t positionTarget1; | |||||
/// P2 = constant speed steps number (motor position control mode) | |||||
uint32_t positionTarget2; | |||||
/// P3 = deceleration phase steps number (motor position control mode) | |||||
uint32_t positionTarget3; | |||||
/// P = total move distance in steps (motor position control mode) | |||||
uint32_t positionTarget; | |||||
/// absolute motor position in microsteps (motor position control mode) | |||||
volatile int32_t absolutePos; | |||||
/// mark position in microsteps (motor position control mode) | |||||
volatile int32_t markPos; | |||||
/// motor position in microsteps (motor position control mode) | |||||
volatile uint32_t step; | |||||
/// dwelling time after position got (ms) | |||||
volatile uint16_t moveDwellTime; | |||||
/// number of micro stepping waveform samples to be rescaled according to selected torque value | |||||
volatile uint8_t uStepsample2scale; | |||||
/// number of micro stepping waveform samples to be updated into the waveform scanning table | |||||
volatile uint8_t uStepsample2update; | |||||
/// microstepping waveform sample index | |||||
volatile uint8_t uStepSample; | |||||
/// system status flags | |||||
volatile uint32_t flags; | |||||
/// current stepper state machine index | |||||
volatile motorState_t motionState; | |||||
/// current step mode | |||||
volatile motorStepMode_t stepMode; | |||||
/// micro stepping waveform scanning sample index increment | |||||
uint8_t uStepInc; | |||||
/// frequency of the VREFA and VREFB PWM | |||||
uint32_t vrefPwmFreq; | |||||
/// current selected torque value | |||||
volatile uint8_t curTorqueScaler; | |||||
/// constant speed phase torque value (%) | |||||
volatile uint8_t runTorque; | |||||
/// acceleration phase torque value (%) | |||||
volatile uint8_t accelTorque; | |||||
/// deceleration phase torque value (%) | |||||
volatile uint8_t decelTorque; | |||||
/// holding phase torque value (%) | |||||
volatile uint8_t holdTorque; | |||||
/// acceleration (steps/s^2) | |||||
volatile uint16_t accelerationSps2; | |||||
/// deceleration (steps/s^2) | |||||
volatile uint16_t decelerationSps2; | |||||
/// acceleration (steps/tick^2) | |||||
volatile uint16_t accelerationSpt2; | |||||
/// deceleration (steps/tick^2) | |||||
volatile uint16_t decelerationSpt2; | |||||
/// maximum speed (steps/s) | |||||
volatile uint16_t maxSpeedSps; | |||||
/// minimum speed (steps/s) | |||||
volatile uint16_t minSpeedSps; | |||||
/// current speed (steps/s) | |||||
volatile uint16_t speedSps; | |||||
/// maximum speed (steps/tick) | |||||
volatile uint32_t maxSpeedSpt; | |||||
/// minimum speed (steps/tick) | |||||
volatile uint32_t minSpeedSpt; | |||||
/// current speed (steps/tick) | |||||
volatile uint32_t speedSpt; | |||||
}deviceParams_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/// Motor driver initialization structure definition | |||||
typedef struct | |||||
{ | |||||
/// acceleration (steps/s^2) | |||||
uint16_t accelerationSps2; | |||||
/// acceleration phase torque value (%) | |||||
uint8_t accelTorque; | |||||
/// deceleration (steps/s^2) | |||||
uint16_t decelerationSps2; | |||||
/// deceleration phase torque value (%) | |||||
uint8_t decelTorque; | |||||
/// maximum speed (steps/s) | |||||
uint16_t maxSpeedSps; | |||||
/// constant speed phase torque value (%) | |||||
uint8_t runTorque; | |||||
/// holding phase torque value (%) | |||||
uint8_t holdTorque; | |||||
/// current step mode | |||||
motorStepMode_t stepMode; | |||||
/// current decay mode (SLOW_DECAY or FAST_DECAY) | |||||
motorDecayMode_t decayMode; | |||||
/// dwelling time after position got (ms) | |||||
uint16_t moveDwellTime; | |||||
/// automatic HiZ on stop | |||||
bool autoHiZstop; | |||||
/// frequency of the VREFA and VREFB PWM | |||||
uint32_t vrefPwmFreq; | |||||
} l6208_Init_t; | |||||
/* Exported functions --------------------------------------------------------*/ | |||||
/** @defgroup L6208_Exported_Functions L6208 Exported Functions | |||||
* @{ | |||||
*/ | |||||
motorDrv_t* L6208_GetMotorHandle(void); //Return handle of the motor driver handle | |||||
void L6208_Init(void* pInit); //Start the L6208 library | |||||
uint16_t L6208_ReadId(void); //Read Id to get driver instance | |||||
void L6208_AttachErrorHandler(void (*callback)(uint16_t error)); //Attach a user callback to the error Handler | |||||
void L6208_AttachFlagInterrupt(void (*callback)(void)); //Attach a user callback to the flag Interrupt | |||||
uint8_t L6208_CheckStatusHw(void); //Check if L6208 has a fault by reading EN pin position | |||||
void L6208_Disable(uint8_t deviceId); //Disable the power bridge | |||||
void L6208_ErrorHandler(uint16_t error); //Error handler which calls the user callback | |||||
void L6208_Enable(uint8_t deviceId); //Enable the power bridge | |||||
void L6208_FlagInterruptHandler(void); //Handler of the flag interrupt which calls the user callback (if defined) | |||||
uint16_t L6208_GetAcceleration(uint8_t deviceId); //Return the acceleration in pps^2 | |||||
uint16_t L6208_GetCurrentSpeed(uint8_t deviceId); //Return the current speed in pps | |||||
motorDecayMode_t L6208_GetDecayMode(uint8_t deviceId); //Get the motor decay mode | |||||
uint16_t L6208_GetDeceleration(uint8_t deviceId); //Return the deceleration in pps^2 | |||||
motorDir_t L6208_GetDirection(uint8_t deviceId); //Get the motor current direction | |||||
uint32_t L6208_GetFwVersion(void); //Return the FW version | |||||
int32_t L6208_GetMark(uint8_t deviceId); //Get the mark position (32b signed) | |||||
uint16_t L6208_GetMaxSpeed(uint8_t deviceId); //Return the max speed in pps | |||||
uint16_t L6208_GetMinSpeed(uint8_t deviceId); //Return the min speed in pps | |||||
motorState_t L6208_GetMotionState(uint8_t deviceId); //Return the motion state | |||||
int32_t L6208_GetPosition(uint8_t deviceId); //Get the current position (32b signed) | |||||
motorStepMode_t L6208_GetStepMode(uint8_t deviceId); //Get the motor step mode | |||||
motorStopMode_t L6208_GetStopMode(uint8_t deviceId); //Get the selected mode to stop the motor | |||||
uint8_t L6208_GetTorque(uint8_t deviceId, motorTorqueMode_t torqueMode); //Get the torque value according to the torque mode | |||||
void L6208_GoHome(uint8_t deviceId); //Go to the home position | |||||
void L6208_GoMark(uint8_t deviceId); //Go to the Mark position | |||||
void L6208_GoTo(uint8_t deviceId, int32_t abs_pos); //Go to the specified position | |||||
void L6208_GoToDir(uint8_t deviceId, motorDir_t direction, int32_t abs_pos); //Go to the specified position using the specified direction | |||||
void L6208_HardHiZ(uint8_t deviceId); //Stop the motor by using the device deceleration and disables the power bridges | |||||
void L6208_HardStop(uint8_t deviceId); //Stop the motor and keeps holding torque | |||||
void L6208_Move(uint8_t deviceId, motorDir_t direction, uint32_t stepCount); //Move the motor by the specified number of steps in the specified direction | |||||
void L6208_ReleaseReset(uint8_t deviceId); //Release the reset pin | |||||
void L6208_Reset(uint8_t deviceId); //Set the reset pin | |||||
void L6208_ResetDevice(void); //Reset L6208 device | |||||
void L6208_Run(uint8_t deviceId, motorDir_t direction); //Run the motor in the specified direction | |||||
bool L6208_SetAcceleration(uint8_t deviceId, uint16_t newAcc); //Set the acceleration in pps^2 | |||||
void L6208_SetDecayMode(uint8_t deviceId, motorDecayMode_t decayMode); //Set the motor decay mode | |||||
bool L6208_SetDeceleration(uint8_t deviceId, uint16_t newDec); //Set the deceleration in pps^2 | |||||
void L6208_SetDirection(uint8_t deviceId, motorDir_t direction); //Set the motor direction | |||||
void L6208_SetHome(uint8_t deviceId, int32_t homePos); //Set the home position | |||||
void L6208_SetMark(uint8_t deviceId, int32_t markPos); //Set the mark position | |||||
bool L6208_SetMaxSpeed(uint8_t deviceId, uint16_t volatile newSpeed); //Set the max speed value in pps | |||||
bool L6208_SetMinSpeed(uint8_t deviceId, uint16_t volatile newSpeed); //Set the max speed value in pps | |||||
bool L6208_SetNbDevices(uint8_t nbDevices); //Set the number of devices | |||||
bool L6208_SetStepMode(uint8_t deviceId, motorStepMode_t stepMode); //Set the motor step mode | |||||
void L6208_SetStopMode(uint8_t deviceId, motorStopMode_t stopMode); //Select the mode to stop the motor | |||||
void L6208_SetTorque(uint8_t deviceId, motorTorqueMode_t torqueMode, uint8_t torqueValue); //Set the torque value according to the torque mode | |||||
bool L6208_SoftStop(uint8_t deviceId); //Progressively stop the motor by using the device deceleration and set deceleration torque | |||||
void L6208_TickHandler(uint8_t deviceId); //Handle the device state machine at each tick timer pulse end | |||||
uint32_t L6208_VrefPwmGetFreq(uint8_t deviceId); //Get the frequency of VREFA and VREFB PWM | |||||
void L6208_VrefPwmSetFreq(uint8_t deviceId, uint32_t newFreq); //Set the frequency of the VREFA and VREFB PWM | |||||
void L6208_WaitWhileActive(uint8_t deviceId); //Wait for the device state becomes Inactive | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup MotorControl_Board_Linked_Functions MotorControl Board Linked Functions | |||||
* @{ | |||||
*/ | |||||
///Delay of the requested number of milliseconds | |||||
extern void L6208_Board_Delay(uint32_t delay); | |||||
///Enable Irq | |||||
extern void L6208_Board_EnableIrq(void); | |||||
///Disable Irq | |||||
extern void L6208_Board_DisableIrq(void); | |||||
///Initialise GPIOs used for L6208 | |||||
extern void L6208_Board_GpioInit(void); | |||||
//Initialize the VREFA or VREFB PWM | |||||
extern bool L6208_Board_VrefPwmInit(uint8_t bridgeId, uint32_t pwmFreq); | |||||
///Set duty cycle of VREFA or VREFB PWM | |||||
extern bool L6208_Board_VrefPwmSetDutyCycle(uint8_t bridgeId,\ | |||||
uint16_t value,\ | |||||
bool valueIsPwmDutyCycle); | |||||
///Start the timer for the VREFA or VREFB PWM | |||||
extern bool L6208_Board_VrefPwmStart(uint8_t bridgeId,\ | |||||
uint32_t pwmFreq); | |||||
///Stop the timer for the VREFA or VREFB PWM | |||||
extern bool L6208_Board_VrefPwmStop(uint8_t bridgeId); | |||||
///Get the period of VREFA and VREFB PWM | |||||
extern uint32_t L6208_Board_VrefPwmGetPeriod(void); | |||||
///Check that the new VREFA and VREFB PWM frequency is nor too low nor too high | |||||
bool L6208_Board_VrefPwmFreqCheck(uint32_t newFreq); | |||||
///Initialize the tick | |||||
extern void L6208_Board_TickInit(void); | |||||
///Start the timer for the tick by using the set tick frequency | |||||
extern void L6208_Board_TickStart(void); | |||||
///Stop the timer for the tick | |||||
extern void L6208_Board_TickStop(void); | |||||
///Get the tick frequency in Hz | |||||
extern uint32_t L6208_Board_TickGetFreq(void); | |||||
///Release the reset pin | |||||
extern void L6208_Board_ReleaseReset(void); | |||||
///Set the reset pin | |||||
extern void L6208_Board_Reset(void); | |||||
///Set the control pin | |||||
extern void L6208_Board_CONTROL_PIN_Set(void); | |||||
///Reset the control pin | |||||
extern void L6208_Board_CONTROL_PIN_Reset(void); | |||||
///Set the clock pin | |||||
extern void L6208_Board_CLOCK_PIN_Set(void); | |||||
///Reset the clock pin | |||||
extern void L6208_Board_CLOCK_PIN_Reset(void); | |||||
///Set the half full pin | |||||
extern void L6208_Board_HALF_FULL_PIN_Set(void); | |||||
///Reset the half full pin | |||||
extern void L6208_Board_HALF_FULL_PIN_Reset(void); | |||||
///Set the dir pin | |||||
extern void L6208_Board_DIR_PIN_Set(void); | |||||
///Reset the dir pin | |||||
extern void L6208_Board_DIR_PIN_Reset(void); | |||||
///Returns the EN pin state | |||||
extern uint32_t L6208_Board_FLAG_PIN_GetState(void); | |||||
///Enable the power bridges (leave the output bridges HiZ) | |||||
extern void L6208_Board_Enable(void); | |||||
///Disable the power bridges (leave the output bridges HiZ) | |||||
extern void L6208_Board_Disable(void); | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __L6208_H */ | |||||
/******************* (C) COPYRIGHT 2016 STMicroelectronics *****END OF FILE****/ |
/******************************************************//** | |||||
* @file l6208_target_config.h | |||||
* @author IPC Rennes | |||||
* @version V1.5.0 | |||||
* @date June 1st, 2018 | |||||
* @brief Predefines values for the L6208 parameters | |||||
* @note (C) COPYRIGHT 2016 STMicroelectronics | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __L6208_TARGET_CONFIG_H | |||||
#define __L6208_TARGET_CONFIG_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup L6208 | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup L6208_Exported_Constants | |||||
* @{ | |||||
*/ | |||||
/** @defgroup Predefined_L6208_Parameters_Values Predefined L6208 Parameters Values | |||||
* @{ | |||||
*/ | |||||
/// Acceleration rate in step/s^2 or (1/16)th step/s^2 for microstep modes | |||||
#define L6208_CONF_PARAM_ACC_RATE (1000) | |||||
/// Acceleration current torque in % (from 0 to 100) | |||||
#define L6208_CONF_PARAM_ACC_CURRENT (10) | |||||
/// Deceleration rate in step/s^2 or (1/16)th step/s^2 for microstep modes | |||||
#define L6208_CONF_PARAM_DEC_RATE (1000) | |||||
/// Deceleration current torque in % (from 0 to 100) | |||||
#define L6208_CONF_PARAM_DEC_CURRENT (10) | |||||
/// Running speed in step/s or (1/16)th step/s for microstep modes | |||||
#define L6208_CONF_PARAM_RUNNING_SPEED (1000) | |||||
/// Running current torque in % (from 0 to 100) | |||||
#define L6208_CONF_PARAM_RUNNING_CURRENT (10) | |||||
/// Holding current torque in % (from 0 to 100) | |||||
#define L6208_CONF_PARAM_HOLDING_CURRENT (10) | |||||
/// Step mode via enum motorStepMode_t | |||||
#define L6208_CONF_PARAM_STEP_MODE (STEP_MODE_1_16) | |||||
/// Decay mode via enum motorDecayMode_t | |||||
#define L6208_CONF_PARAM_DECAY_MODE (FAST_DECAY) | |||||
/// Dwelling time in ms | |||||
#define L6208_CONF_PARAM_DWELL_TIME (0) | |||||
/// Automatic HIZ STOP | |||||
#define L6208_CONF_PARAM_AUTO_HIZ_STOP (FALSE) | |||||
/// VREFA and VREFB PWM frequency (Hz) | |||||
#define L6208_CONF_VREF_PWM_FREQUENCY (100000) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __L6208_TARGET_CONFIG_H */ | |||||
/******************* (C) COPYRIGHT 2016 STMicroelectronics *****END OF FILE****/ |
/* USER CODE BEGIN Header */ | |||||
/** | |||||
****************************************************************************** | |||||
* @file : main.h | |||||
* @brief : Header for main.c file. | |||||
* This file contains the common defines of the application. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* USER CODE END Header */ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __MAIN_H | |||||
#define __MAIN_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "stm32l1xx_hal.h" | |||||
#include "x_nucleo_ihmxx.h" | |||||
#include "l6208.h" | |||||
#include "x_nucleo_ihm05a1_stm32l1xx.h" | |||||
/* Private includes ----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Includes */ | |||||
/* USER CODE END Includes */ | |||||
/* Exported types ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN ET */ | |||||
/* USER CODE END ET */ | |||||
/* Exported constants --------------------------------------------------------*/ | |||||
/* USER CODE BEGIN EC */ | |||||
/* USER CODE END EC */ | |||||
/* Exported macro ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN EM */ | |||||
/* USER CODE END EM */ | |||||
/* Exported functions prototypes ---------------------------------------------*/ | |||||
void Error_Handler(void); | |||||
/* USER CODE BEGIN EFP */ | |||||
/* USER CODE END EFP */ | |||||
/* Private defines -----------------------------------------------------------*/ | |||||
#define B1_Pin GPIO_PIN_13 | |||||
#define B1_GPIO_Port GPIOC | |||||
#define USART_TX_Pin GPIO_PIN_2 | |||||
#define USART_TX_GPIO_Port GPIOA | |||||
#define USART_RX_Pin GPIO_PIN_3 | |||||
#define USART_RX_GPIO_Port GPIOA | |||||
#define LD2_Pin GPIO_PIN_5 | |||||
#define LD2_GPIO_Port GPIOA | |||||
#define TMS_Pin GPIO_PIN_13 | |||||
#define TMS_GPIO_Port GPIOA | |||||
#define TCK_Pin GPIO_PIN_14 | |||||
#define TCK_GPIO_Port GPIOA | |||||
#define SWO_Pin GPIO_PIN_3 | |||||
#define SWO_GPIO_Port GPIOB | |||||
/* USER CODE BEGIN Private defines */ | |||||
/* USER CODE END Private defines */ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __MAIN_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file motor.h | |||||
* @author IPC Rennes | |||||
* @version V1.7.0 | |||||
* @date March 16th, 2018 | |||||
* @brief This file contains all the functions prototypes for motor drivers. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __MOTOR_H | |||||
#define __MOTOR_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include <stdint.h> | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup Components | |||||
* @{ | |||||
*/ | |||||
/** @defgroup Motor Motor | |||||
* @{ | |||||
*/ | |||||
/** @defgroup Motor_Exported_Constants Motor Exported Constants | |||||
* @{ | |||||
*/ | |||||
/// boolean for false condition | |||||
#ifndef FALSE | |||||
#define FALSE (0) | |||||
#endif | |||||
/// boolean for true condition | |||||
#ifndef TRUE | |||||
#define TRUE (1) | |||||
#endif | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Motor_Exported_Types Motor Exported Types | |||||
* @{ | |||||
*/ | |||||
/** @defgroup Motor_Boolean_Type Motor Boolean Type | |||||
* @{ | |||||
*/ | |||||
///bool Type | |||||
typedef uint8_t bool; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Device_Direction_Options Device Direction Options | |||||
* @{ | |||||
*/ | |||||
/// Direction options | |||||
typedef enum { | |||||
BACKWARD = 0, | |||||
FORWARD = 1, | |||||
UNKNOW_DIR = ((uint8_t)0xFF) | |||||
} motorDir_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Device_Action_Options Device Action Options | |||||
* @{ | |||||
*/ | |||||
/// Action options | |||||
typedef enum { | |||||
ACTION_RESET = ((uint8_t)0x00), | |||||
ACTION_COPY = ((uint8_t)0x08) | |||||
} motorAction_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Device_States Device States | |||||
* @{ | |||||
*/ | |||||
/// Device states | |||||
typedef enum { | |||||
ACCELERATING = 0, | |||||
DECELERATINGTOSTOP = 1, | |||||
DECELERATING = 2, | |||||
STEADY = 3, | |||||
INDEX_ACCEL = 4, | |||||
INDEX_RUN = 5, | |||||
INDEX_DECEL = 6, | |||||
INDEX_DWELL = 7, | |||||
INACTIVE = 8, | |||||
STANDBY = 9, | |||||
STANDBYTOINACTIVE = 10 | |||||
} motorState_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Device_Step_mode Device Step mode | |||||
* @{ | |||||
*/ | |||||
/// Stepping options | |||||
typedef enum { | |||||
STEP_MODE_FULL = ((uint8_t)0x00), | |||||
STEP_MODE_HALF = ((uint8_t)0x01), | |||||
STEP_MODE_1_4 = ((uint8_t)0x02), | |||||
STEP_MODE_1_8 = ((uint8_t)0x03), | |||||
STEP_MODE_1_16 = ((uint8_t)0x04), | |||||
STEP_MODE_1_32 = ((uint8_t)0x05), | |||||
STEP_MODE_1_64 = ((uint8_t)0x06), | |||||
STEP_MODE_1_128 = ((uint8_t)0x07), | |||||
STEP_MODE_1_256 = ((uint8_t)0x08), | |||||
STEP_MODE_UNKNOW = ((uint8_t)0xFE), | |||||
STEP_MODE_WAVE = ((uint8_t)0xFF) | |||||
} motorStepMode_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Decay_mode Decay mode | |||||
* @{ | |||||
*/ | |||||
/// Decay Mode | |||||
typedef enum { | |||||
SLOW_DECAY = 0, | |||||
FAST_DECAY = 1, | |||||
UNKNOW_DECAY = ((uint8_t)0xFF) | |||||
} motorDecayMode_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Stop_mode Stop mode | |||||
* @{ | |||||
*/ | |||||
/// Stop mode | |||||
typedef enum | |||||
{ | |||||
HOLD_MODE = 0, | |||||
HIZ_MODE = 1, | |||||
STANDBY_MODE = 2, | |||||
UNKNOW_STOP_MODE = ((uint8_t)0xFF) | |||||
} motorStopMode_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Torque_mode Torque mode | |||||
* @{ | |||||
*/ | |||||
/// Torque mode | |||||
typedef enum | |||||
{ | |||||
ACC_TORQUE = 0, | |||||
DEC_TORQUE = 1, | |||||
RUN_TORQUE = 2, | |||||
HOLD_TORQUE = 3, | |||||
CURRENT_TORQUE = 4, | |||||
UNKNOW_TORQUE = ((uint8_t)0xFF) | |||||
} motorTorqueMode_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Dual_Full_Bridge_Configuration Dual Full Bridge Configuration | |||||
* @{ | |||||
*/ | |||||
///Dual full bridge configurations for brush DC motors | |||||
typedef enum { | |||||
PARALLELING_NONE___1_BIDIR_MOTOR_BRIDGE_A__1_BIDIR_MOTOR_BRIDGE_B = 0, | |||||
PARALLELING_NONE___1_BIDIR_MOTOR_BRIDGE_A__2_UNDIR_MOTOR_BRIDGE_B = 1, | |||||
PARALLELING_NONE___2_UNDIR_MOTOR_BRIDGE_A__1_BIDIR_MOTOR_BRIDGE_B = 2, | |||||
PARALLELING_NONE___2_UNDIR_MOTOR_BRIDGE_A__2_UNDIR_MOTOR_BRIDGE_B = 3, | |||||
PARALLELING_IN1A_IN2A__1_UNDIR_MOTOR_BRIDGE_A__1_BIDIR_MOTOR_BRIDGE_B = 4, | |||||
PARALLELING_IN1A_IN2A__1_UNDIR_MOTOR_BRIDGE_A__2_UNDIR_MOTOR_BRIDGE_B = 5, | |||||
PARALLELING_IN1B_IN2B__1_BIDIR_MOTOR_BRIDGE_A__1_UNDIR_MOTOR_BRIDGE_B = 6, | |||||
PARALLELING_IN1B_IN2B__2_UNDIR_MOTOR_BRIDGE_A__1_UNDIR_MOTOR_BRIDGE_B = 7, | |||||
PARALLELING_IN1A_IN2A__IN1B_IN2B__1_UNDIR_MOTOR_BRIDGE_A__1_UNDIR_MOTOR_BRIDGE_B = 8, | |||||
PARALLELING_IN1A_IN2A__IN1B_IN2B__1_BIDIR_MOTOR = 9, | |||||
PARALLELING_IN1A_IN1B__IN2A_IN2B__1_UNDIR_MOTOR_BRIDGE_1A__1_UNDIR_MOTOR_BRIDGE_2A = 10, | |||||
PARALLELING_IN1A_IN1B__IN2A_IN2B__1_BIDIR_MOTOR = 11, | |||||
PARALLELING_ALL_WITH_IN1A___1_UNDIR_MOTOR = 12, | |||||
PARALLELING_END_ENUM = 13 | |||||
} dualFullBridgeConfig_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup Motor_Driver_Structure Motor Driver Structure | |||||
* @{ | |||||
*/ | |||||
/// Motor driver structure definition | |||||
typedef struct | |||||
{ | |||||
/// Function pointer to Init | |||||
void (*Init)(void*); | |||||
/// Function pointer to ReadID | |||||
uint16_t (*ReadID)(void); | |||||
/// Function pointer to AttachErrorHandler | |||||
void(*AttachErrorHandler)(void (*callback)(uint16_t)); | |||||
/// Function pointer to AttachFlagInterrupt | |||||
void (*AttachFlagInterrupt)(void (*callback)(void)); | |||||
/// Function pointer to AttachBusyInterrupt | |||||
void (*AttachBusyInterrupt)(void (*callback)(void)); | |||||
/// Function pointer to FlagInterruptHandler | |||||
void (*FlagInterruptHandler)(void); | |||||
/// Function pointer to GetAcceleration | |||||
uint16_t (*GetAcceleration)(uint8_t); | |||||
/// Function pointer to GetCurrentSpeed | |||||
uint16_t (*GetCurrentSpeed)(uint8_t); | |||||
/// Function pointer to GetDeceleration | |||||
uint16_t (*GetDeceleration)(uint8_t); | |||||
/// Function pointer to GetDeviceState | |||||
motorState_t(*GetDeviceState)(uint8_t); | |||||
/// Function pointer to GetFwVersion | |||||
uint32_t (*GetFwVersion)(void); | |||||
/// Function pointer to GetMark | |||||
int32_t (*GetMark)(uint8_t); | |||||
/// Function pointer to GetMaxSpeed | |||||
uint16_t (*GetMaxSpeed)(uint8_t); | |||||
/// Function pointer to GetMinSpeed | |||||
uint16_t (*GetMinSpeed)(uint8_t); | |||||
/// Function pointer to GetPosition | |||||
int32_t (*GetPosition)(uint8_t); | |||||
/// Function pointer to GoHome | |||||
void (*GoHome)(uint8_t); | |||||
/// Function pointer to GoMark | |||||
void (*GoMark)(uint8_t); | |||||
/// Function pointer to GoTo | |||||
void (*GoTo)(uint8_t, int32_t); | |||||
/// Function pointer to HardStop | |||||
void (*HardStop)(uint8_t); | |||||
/// Function pointer to Move | |||||
void (*Move)(uint8_t, motorDir_t, uint32_t ); | |||||
/// Function pointer to ResetAllDevices | |||||
void (*ResetAllDevices)(void); | |||||
/// Function pointer to Run | |||||
void (*Run)(uint8_t, motorDir_t); | |||||
/// Function pointer to SetAcceleration | |||||
bool(*SetAcceleration)(uint8_t ,uint16_t ); | |||||
/// Function pointer to SetDeceleration | |||||
bool(*SetDeceleration)(uint8_t , uint16_t ); | |||||
/// Function pointer to SetHome | |||||
void (*SetHome)(uint8_t, int32_t); | |||||
/// Function pointer to SetMark | |||||
void (*SetMark)(uint8_t, int32_t); | |||||
/// Function pointer to SetMaxSpeed | |||||
bool (*SetMaxSpeed)(uint8_t, uint16_t ); | |||||
/// Function pointer to SetMinSpeed | |||||
bool (*SetMinSpeed)(uint8_t, uint16_t ); | |||||
/// Function pointer to SoftStop | |||||
bool (*SoftStop)(uint8_t); | |||||
/// Function pointer to StepClockHandler | |||||
void (*StepClockHandler)(uint8_t deviceId); | |||||
/// Function pointer to WaitWhileActive | |||||
void (*WaitWhileActive)(uint8_t); | |||||
/// Function pointer to CmdDisable | |||||
void (*CmdDisable)(uint8_t); | |||||
/// Function pointer to CmdEnable | |||||
void (*CmdEnable)(uint8_t); | |||||
/// Function pointer to CmdGetParam | |||||
uint32_t (*CmdGetParam)(uint8_t, uint32_t); | |||||
/// Function pointer to CmdGetStatus | |||||
uint16_t (*CmdGetStatus)(uint8_t); | |||||
/// Function pointer to CmdNop | |||||
void (*CmdNop)(uint8_t); | |||||
/// Function pointer to CmdSetParam | |||||
void (*CmdSetParam)(uint8_t, uint32_t, uint32_t); | |||||
/// Function pointer to ReadStatusRegister | |||||
uint16_t (*ReadStatusRegister)(uint8_t); | |||||
/// Function pointer to ReleaseReset | |||||
void (*ReleaseReset)(uint8_t); | |||||
/// Function pointer to Reset | |||||
void (*Reset)(uint8_t); | |||||
/// Function pointer to SelectStepMode | |||||
bool (*SelectStepMode)(uint8_t deviceId, motorStepMode_t); | |||||
/// Function pointer to SetDirection | |||||
void (*SetDirection)(uint8_t, motorDir_t); | |||||
/// Function pointer to CmdGoToDir | |||||
void (*CmdGoToDir)(uint8_t, motorDir_t, int32_t); | |||||
/// Function pointer to CheckBusyHw | |||||
uint8_t (*CheckBusyHw)(void); | |||||
/// Function pointer to CheckStatusHw | |||||
uint8_t (*CheckStatusHw)(void); | |||||
/// Function pointer to CmdGoUntil | |||||
void (*CmdGoUntil)(uint8_t, motorAction_t, motorDir_t, uint32_t); | |||||
/// Function pointer to CmdHardHiZ | |||||
void (*CmdHardHiZ)(uint8_t); | |||||
/// Function pointer to CmdReleaseSw | |||||
void (*CmdReleaseSw)(uint8_t, motorAction_t, motorDir_t); | |||||
/// Function pointer to CmdResetDevice | |||||
void (*CmdResetDevice)(uint8_t); | |||||
/// Function pointer to CmdResetPos | |||||
void (*CmdResetPos)(uint8_t); | |||||
/// Function pointer to CmdRun | |||||
void (*CmdRun)(uint8_t, motorDir_t, uint32_t); | |||||
/// Function pointer to CmdSoftHiZ | |||||
void (*CmdSoftHiZ)(uint8_t); | |||||
/// Function pointer to CmdStepClock | |||||
void (*CmdStepClock)(uint8_t, motorDir_t); | |||||
/// Function pointer to FetchAndClearAllStatus | |||||
void (*FetchAndClearAllStatus)(void); | |||||
/// Function pointer to GetFetchedStatus | |||||
uint16_t (*GetFetchedStatus)(uint8_t); | |||||
/// Function pointer to GetNbDevices | |||||
uint8_t (*GetNbDevices)(void); | |||||
/// Function pointer to IsDeviceBusy | |||||
bool (*IsDeviceBusy)(uint8_t); | |||||
/// Function pointer to SendQueuedCommands | |||||
void (*SendQueuedCommands)(void); | |||||
/// Function pointer to QueueCommands | |||||
void (*QueueCommands)(uint8_t, uint8_t, int32_t); | |||||
/// Function pointer to WaitForAllDevicesNotBusy | |||||
void (*WaitForAllDevicesNotBusy)(void); | |||||
/// Function pointer to ErrorHandler | |||||
void (*ErrorHandler)(uint16_t); | |||||
/// Function pointer to BusyInterruptHandler | |||||
void (*BusyInterruptHandler)(void); | |||||
/// Function pointer to CmdSoftStop | |||||
void (*CmdSoftStop)(uint8_t); | |||||
/// Function pointer to StartStepClock | |||||
void (*StartStepClock)(uint16_t); | |||||
/// Function pointer to StopStepClock | |||||
void (*StopStepClock)(void); | |||||
/// Function pointer to SetDualFullBridgeConfig | |||||
void (*SetDualFullBridgeConfig)(uint8_t); | |||||
/// Function pointer to GetBridgeInputPwmFreq | |||||
uint32_t (*GetBridgeInputPwmFreq)(uint8_t); | |||||
/// Function pointer to SetBridgeInputPwmFreq | |||||
void (*SetBridgeInputPwmFreq)(uint8_t, uint32_t); | |||||
/// Function pointer to SetStopMode | |||||
void (*SetStopMode)(uint8_t, motorStopMode_t); | |||||
/// Function pointer to GetStopMode | |||||
motorStopMode_t (*GetStopMode)(uint8_t); | |||||
/// Function pointer to SetDecayMode | |||||
void (*SetDecayMode)(uint8_t, motorDecayMode_t); | |||||
/// Function pointer to GetDecayMode | |||||
motorDecayMode_t (*GetDecayMode)(uint8_t); | |||||
/// Function pointer to GetStepMode | |||||
motorStepMode_t (*GetStepMode)(uint8_t); | |||||
/// Function pointer to GetDirection | |||||
motorDir_t (*GetDirection)(uint8_t); | |||||
/// Function pointer to ExitDeviceFromReset | |||||
void (*ExitDeviceFromReset)(uint8_t); | |||||
/// Function pointer to SetTorque | |||||
void (*SetTorque)(uint8_t, motorTorqueMode_t, uint8_t); | |||||
/// Function pointer to GetTorque | |||||
uint8_t (*GetTorque)(uint8_t, motorTorqueMode_t); | |||||
/// Function pointer to SetVRefFreq | |||||
void (*SetRefFreq)(uint8_t, uint32_t); | |||||
/// Function pointer to GetVRefFreq | |||||
uint32_t (*GetRefFreq)(uint8_t); | |||||
/// Function pointer to SetVRefDc | |||||
void (*SetRefDc)(uint8_t, uint8_t); | |||||
/// Function pointer to GetVRefDc | |||||
uint8_t (*GetRefDc)(uint8_t); | |||||
/// Function pointer to SetNbDevices | |||||
bool (*SetNbDevices)(uint8_t); | |||||
/// Function pointer to SetAnalogValue | |||||
bool (*SetAnalogValue)(uint8_t, uint32_t, float); | |||||
/// Function pointer to GetAnalogValue | |||||
float (*GetAnalogValue)(uint8_t, uint32_t); | |||||
/// Function pointer to SetTorqueBoostEnable | |||||
void (*SetTorqueBoostEnable) (uint8_t, bool); | |||||
/// Function pointer to GetTorqueBoostEnable | |||||
bool (*GetTorqueBoostEnable) (uint8_t); | |||||
/// Function pointer to SetTorqueBoostThreshold | |||||
void (*SetTorqueBoostThreshold) (uint8_t, uint16_t); | |||||
/// Function pointer to GetTorqueBoostThreshold | |||||
uint16_t (*GetTorqueBoostThreshold) (uint8_t); | |||||
/// Function pointer to GetDualFullBridgeConfig | |||||
uint8_t (*GetDualFullBridgeConfig) (void); | |||||
}motorDrv_t; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __MOTOR_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_hal_conf.h | |||||
* @brief HAL configuration file. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2020 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __STM32L1xx_HAL_CONF_H | |||||
#define __STM32L1xx_HAL_CONF_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Exported types ------------------------------------------------------------*/ | |||||
/* Exported constants --------------------------------------------------------*/ | |||||
/* ########################## Module Selection ############################## */ | |||||
/** | |||||
* @brief This is the list of modules to be used in the HAL driver | |||||
*/ | |||||
#define HAL_MODULE_ENABLED | |||||
/*#define HAL_ADC_MODULE_ENABLED */ | |||||
/*#define HAL_CRYP_MODULE_ENABLED */ | |||||
/*#define HAL_COMP_MODULE_ENABLED */ | |||||
/*#define HAL_CRC_MODULE_ENABLED */ | |||||
/*#define HAL_CRYP_MODULE_ENABLED */ | |||||
/*#define HAL_DAC_MODULE_ENABLED */ | |||||
/*#define HAL_I2C_MODULE_ENABLED */ | |||||
/*#define HAL_I2S_MODULE_ENABLED */ | |||||
/*#define HAL_IRDA_MODULE_ENABLED */ | |||||
/*#define HAL_IWDG_MODULE_ENABLED */ | |||||
/*#define HAL_LCD_MODULE_ENABLED */ | |||||
/*#define HAL_NOR_MODULE_ENABLED */ | |||||
/*#define HAL_OPAMP_MODULE_ENABLED */ | |||||
/*#define HAL_PCD_MODULE_ENABLED */ | |||||
/*#define HAL_RTC_MODULE_ENABLED */ | |||||
/*#define HAL_SD_MODULE_ENABLED */ | |||||
/*#define HAL_SMARTCARD_MODULE_ENABLED */ | |||||
/*#define HAL_SPI_MODULE_ENABLED */ | |||||
/*#define HAL_SRAM_MODULE_ENABLED */ | |||||
#define HAL_TIM_MODULE_ENABLED */ | |||||
#define HAL_UART_MODULE_ENABLED | |||||
/*#define HAL_USART_MODULE_ENABLED */ | |||||
/*#define HAL_WWDG_MODULE_ENABLED */ | |||||
#define HAL_GPIO_MODULE_ENABLED | |||||
#define HAL_EXTI_MODULE_ENABLED | |||||
#define HAL_DMA_MODULE_ENABLED | |||||
#define HAL_RCC_MODULE_ENABLED | |||||
#define HAL_FLASH_MODULE_ENABLED | |||||
#define HAL_PWR_MODULE_ENABLED | |||||
#define HAL_CORTEX_MODULE_ENABLED | |||||
/* ########################## Oscillator Values adaptation ####################*/ | |||||
/** | |||||
* @brief Adjust the value of External High Speed oscillator (HSE) used in your application. | |||||
* This value is used by the RCC HAL module to compute the system frequency | |||||
* (when HSE is used as system clock source, directly or through the PLL). | |||||
*/ | |||||
#if !defined (HSE_VALUE) | |||||
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */ | |||||
#endif /* HSE_VALUE */ | |||||
#if !defined (HSE_STARTUP_TIMEOUT) | |||||
#define HSE_STARTUP_TIMEOUT ((uint32_t)100) /*!< Time out for HSE start up, in ms */ | |||||
#endif /* HSE_STARTUP_TIMEOUT */ | |||||
/** | |||||
* @brief Internal Multiple Speed oscillator (MSI) default value. | |||||
* This value is the default MSI range value after Reset. | |||||
*/ | |||||
#if !defined (MSI_VALUE) | |||||
#define MSI_VALUE ((uint32_t)16000000) /*!< Value of the Internal oscillator in Hz*/ | |||||
#endif /* MSI_VALUE */ | |||||
/** | |||||
* @brief Internal High Speed oscillator (HSI) value. | |||||
* This value is used by the RCC HAL module to compute the system frequency | |||||
* (when HSI is used as system clock source, directly or through the PLL). | |||||
*/ | |||||
#if !defined (HSI_VALUE) | |||||
#define HSI_VALUE ((uint32_t)16000000) /*!< Value of the Internal oscillator in Hz*/ | |||||
#endif /* HSI_VALUE */ | |||||
/** | |||||
* @brief Internal Low Speed oscillator (LSI) value. | |||||
*/ | |||||
#if !defined (LSI_VALUE) | |||||
#define LSI_VALUE (37000U) /*!< LSI Typical Value in Hz*/ | |||||
#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz | |||||
The real value may vary depending on the variations | |||||
in voltage and temperature.*/ | |||||
/** | |||||
* @brief External Low Speed oscillator (LSE) value. | |||||
* This value is used by the UART, RTC HAL module to compute the system frequency | |||||
*/ | |||||
#if !defined (LSE_VALUE) | |||||
#define LSE_VALUE ((uint32_t)32768) /*!< Value of the External oscillator in Hz*/ | |||||
#endif /* LSE_VALUE */ | |||||
#if !defined (LSE_STARTUP_TIMEOUT) | |||||
#define LSE_STARTUP_TIMEOUT ((uint32_t)5000) /*!< Time out for LSE start up, in ms */ | |||||
#endif /* HSE_STARTUP_TIMEOUT */ | |||||
/* Tip: To avoid modifying this file each time you need to use different HSE, | |||||
=== you can define the HSE value in your toolchain compiler preprocessor. */ | |||||
/* ########################### System Configuration ######################### */ | |||||
/** | |||||
* @brief This is the HAL system configuration section | |||||
*/ | |||||
#define VDD_VALUE ((uint32_t)3300) /*!< Value of VDD in mv */ | |||||
#define TICK_INT_PRIORITY ((uint32_t)0) /*!< tick interrupt priority */ | |||||
#define USE_RTOS 0 | |||||
#define PREFETCH_ENABLE 0 | |||||
#define INSTRUCTION_CACHE_ENABLE 1 | |||||
#define DATA_CACHE_ENABLE 1 | |||||
/* ########################## Assert Selection ############################## */ | |||||
/** | |||||
* @brief Uncomment the line below to expanse the "assert_param" macro in the | |||||
* HAL drivers code | |||||
*/ | |||||
/* #define USE_FULL_ASSERT 1U */ | |||||
/* ################## Register callback feature configuration ############### */ | |||||
/** | |||||
* @brief Set below the peripheral configuration to "1U" to add the support | |||||
* of HAL callback registration/deregistration feature for the HAL | |||||
* driver(s). This allows user application to provide specific callback | |||||
* functions thanks to HAL_PPP_RegisterCallback() rather than overwriting | |||||
* the default weak callback functions (see each stm32l0xx_hal_ppp.h file | |||||
* for possible callback identifiers defined in HAL_PPP_CallbackIDTypeDef | |||||
* for each PPP peripheral). | |||||
*/ | |||||
#define USE_HAL_ADC_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_COMP_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_DAC_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_I2C_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_I2S_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_OPAMP_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_PCD_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_RTC_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_SDMMC_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_SPI_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_TIM_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_UART_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_USART_REGISTER_CALLBACKS 0U | |||||
#define USE_HAL_WWDG_REGISTER_CALLBACKS 0U | |||||
/* ################## SPI peripheral configuration ########################## */ | |||||
/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver | |||||
* Activated: CRC code is present inside driver | |||||
* Deactivated: CRC code cleaned from driver | |||||
*/ | |||||
#define USE_SPI_CRC 0U | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
/** | |||||
* @brief Include module's header file | |||||
*/ | |||||
#ifdef HAL_RCC_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_rcc.h" | |||||
#endif /* HAL_RCC_MODULE_ENABLED */ | |||||
#ifdef HAL_GPIO_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_gpio.h" | |||||
#endif /* HAL_GPIO_MODULE_ENABLED */ | |||||
#ifdef HAL_DMA_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_dma.h" | |||||
#endif /* HAL_DMA_MODULE_ENABLED */ | |||||
#ifdef HAL_CORTEX_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_cortex.h" | |||||
#endif /* HAL_CORTEX_MODULE_ENABLED */ | |||||
#ifdef HAL_ADC_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_adc.h" | |||||
#endif /* HAL_ADC_MODULE_ENABLED */ | |||||
#ifdef HAL_COMP_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_comp.h" | |||||
#endif /* HAL_COMP_MODULE_ENABLED */ | |||||
#ifdef HAL_CRC_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_crc.h" | |||||
#endif /* HAL_CRC_MODULE_ENABLED */ | |||||
#ifdef HAL_CRYP_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_cryp.h" | |||||
#endif /* HAL_CRYP_MODULE_ENABLED */ | |||||
#ifdef HAL_DAC_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_dac.h" | |||||
#endif /* HAL_DAC_MODULE_ENABLED */ | |||||
#ifdef HAL_FLASH_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_flash.h" | |||||
#endif /* HAL_FLASH_MODULE_ENABLED */ | |||||
#ifdef HAL_SRAM_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_sram.h" | |||||
#endif /* HAL_SRAM_MODULE_ENABLED */ | |||||
#ifdef HAL_NOR_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_nor.h" | |||||
#endif /* HAL_NOR_MODULE_ENABLED */ | |||||
#ifdef HAL_I2C_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_i2c.h" | |||||
#endif /* HAL_I2C_MODULE_ENABLED */ | |||||
#ifdef HAL_I2S_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_i2s.h" | |||||
#endif /* HAL_I2S_MODULE_ENABLED */ | |||||
#ifdef HAL_IWDG_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_iwdg.h" | |||||
#endif /* HAL_IWDG_MODULE_ENABLED */ | |||||
#ifdef HAL_LCD_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_lcd.h" | |||||
#endif /* HAL_LCD_MODULE_ENABLED */ | |||||
#ifdef HAL_OPAMP_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_opamp.h" | |||||
#endif /* HAL_OPAMP_MODULE_ENABLED */ | |||||
#ifdef HAL_PWR_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_pwr.h" | |||||
#endif /* HAL_PWR_MODULE_ENABLED */ | |||||
#ifdef HAL_RTC_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_rtc.h" | |||||
#endif /* HAL_RTC_MODULE_ENABLED */ | |||||
#ifdef HAL_SD_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_sd.h" | |||||
#endif /* HAL_SD_MODULE_ENABLED */ | |||||
#ifdef HAL_SPI_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_spi.h" | |||||
#endif /* HAL_SPI_MODULE_ENABLED */ | |||||
#ifdef HAL_TIM_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_tim.h" | |||||
#endif /* HAL_TIM_MODULE_ENABLED */ | |||||
#ifdef HAL_UART_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_uart.h" | |||||
#endif /* HAL_UART_MODULE_ENABLED */ | |||||
#ifdef HAL_USART_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_usart.h" | |||||
#endif /* HAL_USART_MODULE_ENABLED */ | |||||
#ifdef HAL_IRDA_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_irda.h" | |||||
#endif /* HAL_IRDA_MODULE_ENABLED */ | |||||
#ifdef HAL_SMARTCARD_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_smartcard.h" | |||||
#endif /* HAL_SMARTCARD_MODULE_ENABLED */ | |||||
#ifdef HAL_WWDG_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_wwdg.h" | |||||
#endif /* HAL_WWDG_MODULE_ENABLED */ | |||||
#ifdef HAL_PCD_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_pcd.h" | |||||
#endif /* HAL_PCD_MODULE_ENABLED */ | |||||
#ifdef HAL_EXTI_MODULE_ENABLED | |||||
#include "stm32l1xx_hal_exti.h" | |||||
#endif /* HAL_EXTI_MODULE_ENABLED */ | |||||
/* Exported macro ------------------------------------------------------------*/ | |||||
#ifdef USE_FULL_ASSERT | |||||
/** | |||||
* @brief The assert_param macro is used for function's parameters check. | |||||
* @param expr: If expr is false, it calls assert_failed function | |||||
* which reports the name of the source file and the source | |||||
* line number of the call that failed. | |||||
* If expr is true, it returns no value. | |||||
* @retval None | |||||
*/ | |||||
#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) | |||||
/* Exported functions ------------------------------------------------------- */ | |||||
void assert_failed(uint8_t* file, uint32_t line); | |||||
#else | |||||
#define assert_param(expr) ((void)0U) | |||||
#endif /* USE_FULL_ASSERT */ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __STM32L1xx_HAL_CONF_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/* USER CODE BEGIN Header */ | |||||
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_it.h | |||||
* @brief This file contains the headers of the interrupt handlers. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* USER CODE END Header */ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __STM32L1xx_IT_H | |||||
#define __STM32L1xx_IT_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Private includes ----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Includes */ | |||||
/* USER CODE END Includes */ | |||||
/* Exported types ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN ET */ | |||||
/* USER CODE END ET */ | |||||
/* Exported constants --------------------------------------------------------*/ | |||||
/* USER CODE BEGIN EC */ | |||||
/* USER CODE END EC */ | |||||
/* Exported macro ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN EM */ | |||||
/* USER CODE END EM */ | |||||
/* Exported functions prototypes ---------------------------------------------*/ | |||||
void NMI_Handler(void); | |||||
void HardFault_Handler(void); | |||||
void MemManage_Handler(void); | |||||
void BusFault_Handler(void); | |||||
void UsageFault_Handler(void); | |||||
void SVC_Handler(void); | |||||
void DebugMon_Handler(void); | |||||
void PendSV_Handler(void); | |||||
void SysTick_Handler(void); | |||||
/* USER CODE BEGIN EFP */ | |||||
/* USER CODE END EFP */ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __STM32L1xx_IT_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_nucleo.h | |||||
* @author MCD Application Team | |||||
* @brief This file contains definitions for: | |||||
* - LEDs and push-button available on STM32L1XX-Nucleo Kit | |||||
* from STMicroelectronics | |||||
* - LCD, joystick and microSD available on Adafruit 1.8 TFT LCD | |||||
* shield (reference ID 802) | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2017 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef __STM32L1XX_NUCLEO_H | |||||
#define __STM32L1XX_NUCLEO_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup STM32L1XX_NUCLEO | |||||
* @{ | |||||
*/ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "stm32l1xx_hal.h" | |||||
/** @defgroup STM32L1XX_NUCLEO_Exported_Types Exported Types | |||||
* @{ | |||||
*/ | |||||
typedef enum | |||||
{ | |||||
LED2 = 0, | |||||
LED_GREEN = LED2 | |||||
} Led_TypeDef; | |||||
typedef enum | |||||
{ | |||||
BUTTON_USER = 0, | |||||
/* Alias */ | |||||
BUTTON_KEY = BUTTON_USER | |||||
} Button_TypeDef; | |||||
typedef enum | |||||
{ | |||||
BUTTON_MODE_GPIO = 0, | |||||
BUTTON_MODE_EXTI = 1 | |||||
} ButtonMode_TypeDef; | |||||
typedef enum | |||||
{ | |||||
JOY_NONE = 0, | |||||
JOY_SEL = 1, | |||||
JOY_DOWN = 2, | |||||
JOY_LEFT = 3, | |||||
JOY_RIGHT = 4, | |||||
JOY_UP = 5 | |||||
} JOYState_TypeDef; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_Exported_Constants Exported Constants | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief Define for STM32L1xx_NUCLEO board | |||||
*/ | |||||
#if !defined (USE_STM32L1xx_NUCLEO) | |||||
#define USE_STM32L1xx_NUCLEO | |||||
#endif | |||||
/** @defgroup STM32L1XX_NUCLEO_LED LED Constants | |||||
* @{ | |||||
*/ | |||||
#define LEDn 1 | |||||
#define LED2_PIN GPIO_PIN_5 | |||||
#define LED2_GPIO_PORT GPIOA | |||||
#define LED2_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() | |||||
#define LED2_GPIO_CLK_DISABLE() __HAL_RCC_GPIOA_CLK_DISABLE() | |||||
#define LEDx_GPIO_CLK_ENABLE(__INDEX__) do { if((__INDEX__) == 0) LED2_GPIO_CLK_ENABLE();} while(0) | |||||
#define LEDx_GPIO_CLK_DISABLE(__INDEX__) (((__INDEX__) == 0) ? LED2_GPIO_CLK_DISABLE() : 0) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_BUTTON BUTTON Constants | |||||
* @{ | |||||
*/ | |||||
#define BUTTONn 1 | |||||
/** | |||||
* @brief User push-button | |||||
*/ | |||||
#define USER_BUTTON_PIN GPIO_PIN_13 | |||||
#define USER_BUTTON_GPIO_PORT GPIOC | |||||
#define USER_BUTTON_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() | |||||
#define USER_BUTTON_GPIO_CLK_DISABLE() __HAL_RCC_GPIOC_CLK_DISABLE() | |||||
#define USER_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |||||
/* Aliases */ | |||||
#define KEY_BUTTON_PIN USER_BUTTON_PIN | |||||
#define KEY_BUTTON_GPIO_PORT USER_BUTTON_GPIO_PORT | |||||
#define KEY_BUTTON_GPIO_CLK_ENABLE() USER_BUTTON_GPIO_CLK_ENABLE() | |||||
#define KEY_BUTTON_GPIO_CLK_DISABLE() USER_BUTTON_GPIO_CLK_DISABLE() | |||||
#define KEY_BUTTON_EXTI_IRQn USER_BUTTON_EXTI_IRQn | |||||
#define BUTTONx_GPIO_CLK_ENABLE(__INDEX__) do { if((__INDEX__) == 0) USER_BUTTON_GPIO_CLK_ENABLE();} while(0) | |||||
#define BUTTONx_GPIO_CLK_DISABLE(__INDEX__) (((__INDEX__) == 0) ? USER_BUTTON_GPIO_CLK_DISABLE() : 0) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1XX_NUCLEO_BUS BUS Constants | |||||
* @{ | |||||
*/ | |||||
/*###################### SPI1 ###################################*/ | |||||
#define NUCLEO_SPIx SPI1 | |||||
#define NUCLEO_SPIx_CLK_ENABLE() __HAL_RCC_SPI1_CLK_ENABLE() | |||||
#define NUCLEO_SPIx_SCK_AF GPIO_AF5_SPI1 | |||||
#define NUCLEO_SPIx_SCK_GPIO_PORT GPIOA | |||||
#define NUCLEO_SPIx_SCK_PIN GPIO_PIN_5 | |||||
#define NUCLEO_SPIx_SCK_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() | |||||
#define NUCLEO_SPIx_SCK_GPIO_CLK_DISABLE() __HAL_RCC_GPIOA_CLK_DISABLE() | |||||
#define NUCLEO_SPIx_MISO_MOSI_AF GPIO_AF5_SPI1 | |||||
#define NUCLEO_SPIx_MISO_MOSI_GPIO_PORT GPIOA | |||||
#define NUCLEO_SPIx_MISO_MOSI_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() | |||||
#define NUCLEO_SPIx_MISO_MOSI_GPIO_CLK_DISABLE() __HAL_RCC_GPIOA_CLK_DISABLE() | |||||
#define NUCLEO_SPIx_MISO_PIN GPIO_PIN_6 | |||||
#define NUCLEO_SPIx_MOSI_PIN GPIO_PIN_7 | |||||
/* Maximum Timeout values for flags waiting loops. These timeouts are not based | |||||
on accurate values, they just guarantee that the application will not remain | |||||
stuck if the SPI communication is corrupted. | |||||
You may modify these timeout values depending on CPU frequency and application | |||||
conditions (interrupts routines ...). */ | |||||
#define NUCLEO_SPIx_TIMEOUT_MAX 1000 | |||||
/** | |||||
* @brief SD Control Lines management | |||||
*/ | |||||
#define SD_CS_LOW() HAL_GPIO_WritePin(SD_CS_GPIO_PORT, SD_CS_PIN, GPIO_PIN_RESET) | |||||
#define SD_CS_HIGH() HAL_GPIO_WritePin(SD_CS_GPIO_PORT, SD_CS_PIN, GPIO_PIN_SET) | |||||
/** | |||||
* @brief LCD Control Lines management | |||||
*/ | |||||
#define LCD_CS_LOW() HAL_GPIO_WritePin(LCD_CS_GPIO_PORT, LCD_CS_PIN, GPIO_PIN_RESET) | |||||
#define LCD_CS_HIGH() HAL_GPIO_WritePin(LCD_CS_GPIO_PORT, LCD_CS_PIN, GPIO_PIN_SET) | |||||
#define LCD_DC_LOW() HAL_GPIO_WritePin(LCD_DC_GPIO_PORT, LCD_DC_PIN, GPIO_PIN_RESET) | |||||
#define LCD_DC_HIGH() HAL_GPIO_WritePin(LCD_DC_GPIO_PORT, LCD_DC_PIN, GPIO_PIN_SET) | |||||
/** | |||||
* @brief SD Control Interface pins (shield D4) | |||||
*/ | |||||
#define SD_CS_PIN GPIO_PIN_5 | |||||
#define SD_CS_GPIO_PORT GPIOB | |||||
#define SD_CS_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() | |||||
#define SD_CS_GPIO_CLK_DISABLE() __HAL_RCC_GPIOB_CLK_DISABLE() | |||||
/** | |||||
* @brief LCD Control Interface pins (shield D10) | |||||
*/ | |||||
#define LCD_CS_PIN GPIO_PIN_6 | |||||
#define LCD_CS_GPIO_PORT GPIOB | |||||
#define LCD_CS_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() | |||||
#define LCD_CS_GPIO_CLK_DISABLE() __HAL_RCC_GPIOB_CLK_DISABLE() | |||||
/** | |||||
* @brief LCD Data/Command Interface pins | |||||
*/ | |||||
#define LCD_DC_PIN GPIO_PIN_9 | |||||
#define LCD_DC_GPIO_PORT GPIOA | |||||
#define LCD_DC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() | |||||
#define LCD_DC_GPIO_CLK_DISABLE() __HAL_RCC_GPIOA_CLK_DISABLE() | |||||
/*##################### ADC1 ###################################*/ | |||||
/** | |||||
* @brief ADC Interface pins | |||||
* used to detect motion of Joystick available on Adafruit 1.8 TFT shield | |||||
*/ | |||||
#define NUCLEO_ADCx ADC1 | |||||
#define NUCLEO_ADCx_CLK_ENABLE() __HAL_RCC_ADC1_CLK_ENABLE() | |||||
#define NUCLEO_ADCx_CLK_DISABLE() __HAL_RCC_ADC1_CLK_DISABLE() | |||||
#define NUCLEO_ADCx_GPIO_PORT GPIOB | |||||
#define NUCLEO_ADCx_GPIO_PIN GPIO_PIN_0 | |||||
#define NUCLEO_ADCx_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() | |||||
#define NUCLEO_ADCx_GPIO_CLK_DISABLE() __HAL_RCC_GPIOB_CLK_DISABLE() | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1XX_NUCLEO_Exported_Functions | |||||
* @{ | |||||
*/ | |||||
uint32_t BSP_GetVersion(void); | |||||
/** @addtogroup STM32L1XX_NUCLEO_LED_Functions | |||||
* @{ | |||||
*/ | |||||
void BSP_LED_Init(Led_TypeDef Led); | |||||
void BSP_LED_DeInit(Led_TypeDef Led); | |||||
void BSP_LED_On(Led_TypeDef Led); | |||||
void BSP_LED_Off(Led_TypeDef Led); | |||||
void BSP_LED_Toggle(Led_TypeDef Led); | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1XX_NUCLEO_BUTTON_Functions | |||||
* @{ | |||||
*/ | |||||
void BSP_PB_Init(Button_TypeDef Button, ButtonMode_TypeDef ButtonMode); | |||||
void BSP_PB_DeInit(Button_TypeDef Button); | |||||
uint32_t BSP_PB_GetState(Button_TypeDef Button); | |||||
#if defined(HAL_ADC_MODULE_ENABLED) | |||||
uint8_t BSP_JOY_Init(void); | |||||
JOYState_TypeDef BSP_JOY_GetState(void); | |||||
void BSP_JOY_DeInit(void); | |||||
#endif /* HAL_ADC_MODULE_ENABLED */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* __STM32L1XX_NUCLEO_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file x_nucleo_ihm05a1_stm32l0xx.h | |||||
* @author IPC Rennes | |||||
* @version V1.5.0 | |||||
* @date June 1st, 2018 | |||||
* @brief Header for BSP driver for x-nucleo-ihm05a1 Nucleo extension board | |||||
* (based on L6208) | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2018 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef X_NUCLEO_IHM05A1_STM32L0XX_H | |||||
#define X_NUCLEO_IHM05A1_STM32L0XX_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "stm32l1xx_nucleo.h" | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup X_NUCLEO_IHM05A1_STM32L0XX | |||||
* @{ | |||||
*/ | |||||
/* Exported Constants --------------------------------------------------------*/ | |||||
/** @defgroup IHM05A1_Exported_Constants IHM05A1 Exported Constants | |||||
* @{ | |||||
*/ | |||||
/******************************************************************************/ | |||||
/* USE_STM32L0XX_NUCLEO */ | |||||
/******************************************************************************/ | |||||
/** @defgroup Constants_For_STM32L0XX_NUCLEO Constants For STM32L0XX NUCLEO | |||||
* @{ | |||||
*/ | |||||
/// GPIO Pin used for the VREFA | |||||
#define BSP_MOTOR_CONTROL_BOARD_VREFA_PIN (GPIO_PIN_3) | |||||
/// GPIO port used for the VREFA | |||||
#define BSP_MOTOR_CONTROL_BOARD_VREFA_PORT (GPIOB) | |||||
/// Interrupt line used for L6208 OCD and OVT | |||||
#define FLAG_EXTI_LINE_IRQn (EXTI4_15_IRQn) | |||||
/// Timer used to generate the VREFA PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_TIMER_VREFA_PWM (TIM2) | |||||
/// Timer used to generate the VREFB PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_TIMER_VREFB_PWM (TIM22) | |||||
/// Channel Timer used for the VREFA PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFA_PWM (TIM_CHANNEL_2) | |||||
/// Channel Timer used for the VREFB PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFB_PWM (TIM_CHANNEL_2) | |||||
/// HAL Active Channel Timer used for the VREFA PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_HAL_ACT_CHAN_TIMER_VREFA_PWM (HAL_TIM_ACTIVE_CHANNEL_2) | |||||
/// HAL Active Channel Timer used for the VREFB PWM | |||||
#define BSP_MOTOR_CONTROL_BOARD_HAL_ACT_CHAN_TIMER_VREFB_PWM (HAL_TIM_ACTIVE_CHANNEL_2) | |||||
/// Timer Clock Enable for the VREFA PWM | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_VREFA_PWM_CLCK_ENABLE() __TIM2_CLK_ENABLE() | |||||
/// Timer Clock Disable for the VREFA PWM | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_VREFA_PWM_CLCK_DISABLE() __TIM2_CLK_DISABLE() | |||||
/// Timer Clock Enable for the VREFB PWMs | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_VREFB_PWM_CLCK_ENABLE() __TIM22_CLK_ENABLE() | |||||
/// Timer Clock Disable for the VREFB PWMs | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_VREFB_PWM_CLCK_DISABLE() __TIM22_CLK_DISABLE() | |||||
/// VREFA PWM GPIO alternate function | |||||
#define BSP_MOTOR_CONTROL_BOARD_AFx_TIMx_VREFA_PWM (GPIO_AF2_TIM2) | |||||
/// VREFB PWM GPIO alternate function | |||||
#define BSP_MOTOR_CONTROL_BOARD_AFx_TIMx_VREFB_PWM (GPIO_AF0_TIM22) | |||||
/// Timer used to generate the tick | |||||
#define BSP_MOTOR_CONTROL_BOARD_TIMER_TICK (TIM21) | |||||
/// tick timer global interrupt | |||||
#define BSP_MOTOR_CONTROL_BOARD_TIMER_TICK_IRQn (TIM21_IRQn) | |||||
/// Channel Timer used for the tick | |||||
#define BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_TICK (TIM_CHANNEL_1) | |||||
/// Timer Clock Enable for the tick | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_TICK_CLCK_ENABLE() __TIM21_CLK_ENABLE() | |||||
/// Timer Clock Disable for the tick | |||||
#define __BSP_MOTOR_CONTROL_BOARD_TIMER_TICK_CLCK_DISABLE() __TIM21_CLK_DISABLE() | |||||
/// HAL Active Channel Timer used for the tick | |||||
#define BSP_MOTOR_CONTROL_BOARD_HAL_ACT_CHAN_TIMER_TICK (HAL_TIM_ACTIVE_CHANNEL_1) | |||||
/// Flag interrupt priority | |||||
#define BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PRIORITY (1) | |||||
/// tick timer priority (lower than flag interrupt priority) | |||||
#define BSP_MOTOR_CONTROL_BOARD_TIMER_TICK_PRIORITY (BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PRIORITY + 1) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/******************************************************************************/ | |||||
/* Independent plateform definitions */ | |||||
/******************************************************************************/ | |||||
/** @defgroup Constants_For_All_Nucleo_Platforms Constants For All Nucleo Platforms | |||||
* @{ | |||||
*/ | |||||
/// GPIO Pin used for the VREFB | |||||
#define BSP_MOTOR_CONTROL_BOARD_VREFB_PIN (GPIO_PIN_7) | |||||
/// GPIO Port used for the VREFB | |||||
#define BSP_MOTOR_CONTROL_BOARD_VREFB_PORT (GPIOC) | |||||
/// GPIO Pin used for the L6208 clock pin (step clock input) | |||||
#define BSP_MOTOR_CONTROL_BOARD_CLOCK_PIN (GPIO_PIN_10) | |||||
/// GPIO port used for the L6208 clock pin (step clock input) | |||||
#define BSP_MOTOR_CONTROL_BOARD_CLOCK_PORT (GPIOB) | |||||
/// GPIO Pin used for the L6208 CW/CCW pin (direction) | |||||
#define BSP_MOTOR_CONTROL_BOARD_DIR_PIN (GPIO_PIN_8) | |||||
/// GPIO port used for the L6208 CW/CCW pin (direction) | |||||
#define BSP_MOTOR_CONTROL_BOARD_DIR_PORT (GPIOA) | |||||
/// GPIO Pin used for the L6208 HALF/FULL pin (step mode selector) | |||||
#define BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PIN (GPIO_PIN_5) | |||||
/// GPIO port used for the L6208 HALF/FULL pin (step mode selector) | |||||
#define BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PORT (GPIOB) | |||||
/// GPIO Pin used for the L6208 control pin (decay mode selector) | |||||
#define BSP_MOTOR_CONTROL_BOARD_CONTROL_PIN (GPIO_PIN_4) | |||||
/// GPIO port used for the L6208 control pin (decay mode selector) | |||||
#define BSP_MOTOR_CONTROL_BOARD_CONTROL_PORT (GPIOB) | |||||
/// GPIO Pin used for the L6208 reset pin | |||||
#define BSP_MOTOR_CONTROL_BOARD_RESET_PIN (GPIO_PIN_9) | |||||
/// GPIO port used for the L6208 reset pin | |||||
#define BSP_MOTOR_CONTROL_BOARD_RESET_PORT (GPIOA) | |||||
/// GPIO Pin used for the L6208 EN pin (chip enable) and OCD and OVT alarms | |||||
#define BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN (GPIO_PIN_10) | |||||
/// GPIO port used for the L6208 EN pin (chip enable) OCD and OVT alarms | |||||
#define BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT (GPIOA) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* X_NUCLEO_IHM05A1_STM32L0XX_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file x_nucleo_ihmxx.h | |||||
* @author IPC Rennes | |||||
* @version V1.7.0 | |||||
* @date March 16th, 2018 | |||||
* @brief This file provides common definitions for motor control | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2018 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Define to prevent recursive inclusion -------------------------------------*/ | |||||
#ifndef X_NUCLEO_IHMXX_H | |||||
#define X_NUCLEO_IHMXX_H | |||||
#ifdef __cplusplus | |||||
extern "C" { | |||||
#endif | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "motor.h" | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup MOTOR_CONTROL | |||||
* @{ | |||||
*/ | |||||
/** @defgroup MOTOR_CONTROL_Exported_Types MOTOR CONTROL Exported Types | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup MOTOR_CONTROL_Exported_Constants MOTOR CONTROL Exported Constants | |||||
* @{ | |||||
*/ | |||||
/// Motor control error tag (used when trying to call undefined functions via motorDrvHandle) | |||||
#define MOTOR_CONTROL_ERROR_TAG (0x0800) | |||||
///Motor control board id for L6474 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6474 (6474) | |||||
///Motor control board id for L6470 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6470 (6470) | |||||
///Motor control board id for L6472 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6472 (6472) | |||||
///Motor control board id for L6480 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6480 (6480) | |||||
///Motor control board id for L6482 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6482 (6482) | |||||
///Motor control board id for L6474 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6474 (6474) | |||||
///Motor control board id for Powerstep01 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_POWERSTEP01 (0001) | |||||
///Motor control board id for L6206 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6206 (6206) | |||||
///Motor control board id for L6208 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_L6208 (6208) | |||||
///Motor control board id for STSPIN220 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_STSPIN220 (220) | |||||
///Motor control board id for STSPIN240 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_STSPIN240 (240) | |||||
///Motor control board id for STSPIN250 | |||||
#define BSP_MOTOR_CONTROL_BOARD_ID_STSPIN250 (250) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup MOTOR_CONTROL_Exported_Macros MOTOR CONTROL Exported Macros | |||||
* @{ | |||||
*/ | |||||
#if defined ( __GNUC__ ) | |||||
#ifndef __weak | |||||
#define __weak __attribute__((weak)) | |||||
#endif /* __weak */ | |||||
#endif /* __GNUC__ */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup MOTOR_CONTROL_Weak_Function_Prototypes MOTOR CONTROL Weak Function Prototypes | |||||
* @{ | |||||
*/ | |||||
__weak motorDrv_t* L6474_GetMotorHandle(void); | |||||
__weak motorDrv_t* l647x_GetMotorHandle(void); | |||||
__weak motorDrv_t* l648x_GetMotorHandle(void); | |||||
__weak motorDrv_t* Powerstep01_GetMotorHandle(void); | |||||
__weak motorDrv_t* L6206_GetMotorHandle(void); | |||||
__weak motorDrv_t* L6208_GetMotorHandle(void); | |||||
__weak motorDrv_t* Stspin220_GetMotorHandle(void); | |||||
__weak motorDrv_t* Stspin240_250_GetMotorHandle(void); | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup MOTOR_CONTROL_Exported_Functions MOTOR CONTROL Exported Functions | |||||
* @{ | |||||
*/ | |||||
void BSP_MotorControl_AttachErrorHandler(void (*callback)(uint16_t)); | |||||
void BSP_MotorControl_AttachFlagInterrupt(void (*callback)(void)); | |||||
void BSP_MotorControl_AttachBusyInterrupt(void (*callback)(void)); | |||||
void BSP_MotorControl_ErrorHandler(uint16_t error); | |||||
void BSP_MotorControl_Init(uint16_t id, void* initDeviceParameters); | |||||
void BSP_MotorControl_FlagInterruptHandler(void); | |||||
uint16_t BSP_MotorControl_GetAcceleration(uint8_t deviceId); | |||||
uint16_t BSP_MotorControl_GetBoardId(void); | |||||
uint16_t BSP_MotorControl_GetCurrentSpeed(uint8_t deviceId); | |||||
uint16_t BSP_MotorControl_GetDeceleration(uint8_t deviceId); | |||||
motorState_t BSP_MotorControl_GetDeviceState(uint8_t deviceId); | |||||
uint32_t BSP_MotorControl_GetFwVersion(void); | |||||
int32_t BSP_MotorControl_GetMark(uint8_t deviceId); | |||||
uint16_t BSP_MotorControl_GetMaxSpeed(uint8_t deviceId); | |||||
uint16_t BSP_MotorControl_GetMinSpeed(uint8_t deviceId); | |||||
int32_t BSP_MotorControl_GetPosition(uint8_t deviceId); | |||||
void BSP_MotorControl_GoHome(uint8_t deviceId); | |||||
void BSP_MotorControl_GoMark(uint8_t deviceId); | |||||
void BSP_MotorControl_GoTo(uint8_t deviceId, int32_t targetPosition); | |||||
void BSP_MotorControl_HardStop(uint8_t deviceId); | |||||
void BSP_MotorControl_Move(uint8_t deviceId, motorDir_t direction, uint32_t stepCount); | |||||
void BSP_MotorControl_ResetAllDevices(void); | |||||
void BSP_MotorControl_Run(uint8_t deviceId, motorDir_t direction); | |||||
bool BSP_MotorControl_SetAcceleration(uint8_t deviceId,uint16_t newAcc); | |||||
bool BSP_MotorControl_SetDeceleration(uint8_t deviceId, uint16_t newDec); | |||||
void BSP_MotorControl_SetHome(uint8_t deviceId, int32_t homePosition); | |||||
void BSP_MotorControl_SetMark(uint8_t deviceId, int32_t markPosition); | |||||
bool BSP_MotorControl_SetMaxSpeed(uint8_t deviceId, uint16_t newMaxSpeed); | |||||
bool BSP_MotorControl_SetMinSpeed(uint8_t deviceId, uint16_t newMinSpeed); | |||||
bool BSP_MotorControl_SoftStop(uint8_t deviceId); | |||||
void BSP_MotorControl_StepClockHandler(uint8_t deviceId); | |||||
void BSP_MotorControl_WaitWhileActive(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdDisable(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdEnable(uint8_t deviceId); | |||||
uint32_t BSP_MotorControl_CmdGetParam(uint8_t deviceId, uint32_t param); | |||||
uint16_t BSP_MotorControl_CmdGetStatus(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdNop(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdSetParam(uint8_t deviceId, uint32_t param, uint32_t value); | |||||
uint16_t BSP_MotorControl_ReadStatusRegister(uint8_t deviceId); | |||||
void BSP_MotorControl_ReleaseReset(uint8_t deviceId); | |||||
void BSP_MotorControl_Reset(uint8_t deviceId); | |||||
bool BSP_MotorControl_SelectStepMode(uint8_t deviceId, motorStepMode_t stepMode); | |||||
void BSP_MotorControl_SetDirection(uint8_t deviceId, motorDir_t dir); | |||||
void BSP_MotorControl_CmdGoToDir(uint8_t deviceId, motorDir_t dir, int32_t abs_pos); | |||||
uint8_t BSP_MotorControl_CheckBusyHw(void); | |||||
uint8_t BSP_MotorControl_CheckStatusHw(void); | |||||
void BSP_MotorControl_CmdGoUntil(uint8_t deviceId, motorAction_t action, motorDir_t dir, uint32_t speed); | |||||
void BSP_MotorControl_CmdHardHiZ(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdReleaseSw(uint8_t deviceId, motorAction_t action, motorDir_t dir); | |||||
void BSP_MotorControl_CmdResetDevice(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdResetPos(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdRun(uint8_t deviceId, motorDir_t dir, uint32_t speed); | |||||
void BSP_MotorControl_CmdSoftHiZ(uint8_t deviceId); | |||||
void BSP_MotorControl_CmdStepClock(uint8_t deviceId, motorDir_t dir); | |||||
void BSP_MotorControl_FetchAndClearAllStatus(void); | |||||
uint16_t BSP_MotorControl_GetFetchedStatus(uint8_t deviceId); | |||||
uint8_t BSP_MotorControl_GetNbDevices(void); | |||||
bool BSP_MotorControl_IsDeviceBusy(uint8_t deviceId); | |||||
void BSP_MotorControl_SendQueuedCommands(void); | |||||
void BSP_MotorControl_QueueCommands(uint8_t deviceId, uint8_t command, int32_t value); | |||||
void BSP_MotorControl_WaitForAllDevicesNotBusy(void); | |||||
void BSP_MotorControl_BusyInterruptHandler(void); | |||||
void BSP_MotorControl_CmdSoftStop(uint8_t deviceId); | |||||
void BSP_MotorControl_StartStepClock(uint16_t newFreq); | |||||
void BSP_MotorControl_StopStepClock(void); | |||||
void BSP_MotorControl_SetDualFullBridgeConfig(uint8_t config); | |||||
uint32_t BSP_MotorControl_GetBridgeInputPwmFreq(uint8_t bridgeId); | |||||
void BSP_MotorControl_SetBridgeInputPwmFreq(uint8_t bridgeId, uint32_t newFreq); | |||||
void BSP_MotorControl_SetStopMode(uint8_t deviceId, motorStopMode_t stopMode); | |||||
motorStopMode_t BSP_MotorControl_GetStopMode(uint8_t deviceId); | |||||
void BSP_MotorControl_SetDecayMode(uint8_t deviceId, motorDecayMode_t decayMode); | |||||
motorDecayMode_t BSP_MotorControl_GetDecayMode(uint8_t deviceId); | |||||
motorStepMode_t BSP_MotorControl_GetStepMode(uint8_t deviceId); | |||||
motorDir_t BSP_MotorControl_GetDirection(uint8_t deviceId); | |||||
void BSP_MotorControl_ExitDeviceFromReset(uint8_t deviceId); | |||||
uint8_t BSP_MotorControl_GetTorque(uint8_t deviceId, motorTorqueMode_t torqueMode); | |||||
void BSP_MotorControl_SetTorque(uint8_t deviceId, motorTorqueMode_t torqueMode, uint8_t torqueValue); | |||||
void BSP_MotorControl_SetRefFreq(uint8_t refId, uint32_t newFreq); | |||||
uint32_t BSP_MotorControl_GetRefFreq(uint8_t refId); | |||||
void BSP_MotorControl_SetRefDc(uint8_t refId, uint8_t newDc); | |||||
uint8_t BSP_MotorControl_GetRefDc(uint8_t refId); | |||||
bool BSP_MotorControl_SetNbDevices(uint16_t id, uint8_t nbDevices); | |||||
bool BSP_MotorControl_SetAnalogValue(uint8_t deviceId, uint32_t param, float value); | |||||
float BSP_MotorControl_GetAnalogValue(uint8_t deviceId, uint32_t param); | |||||
void BSP_MotorControl_SetTorqueBoostEnable(uint8_t deviceId, bool enable); | |||||
bool BSP_MotorControl_GetTorqueBoostEnable(uint8_t deviceId); | |||||
void BSP_MotorControl_SetTorqueBoostThreshold(uint8_t deviceId, uint16_t speedThreshold); | |||||
uint16_t BSP_MotorControl_GetTorqueBoostThreshold(uint8_t deviceId); | |||||
uint8_t BSP_MotorControl_GetDualFullBridgeConfig(void); | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
#ifdef __cplusplus | |||||
} | |||||
#endif | |||||
#endif /* X_NUCLEO_IHMXX_H */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/* USER CODE BEGIN Header */ | |||||
/** | |||||
****************************************************************************** | |||||
* @file : main.c | |||||
* @brief : Main program body | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* USER CODE END Header */ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "main.h" | |||||
/* Private includes ----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Includes */ | |||||
/* USER CODE END Includes */ | |||||
/* Private typedef -----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PTD */ | |||||
/* USER CODE END PTD */ | |||||
/* Private define ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PD */ | |||||
/* USER CODE END PD */ | |||||
/* Private macro -------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PM */ | |||||
/* USER CODE END PM */ | |||||
/* Private variables ---------------------------------------------------------*/ | |||||
UART_HandleTypeDef huart2; | |||||
/* USER CODE BEGIN PV */ | |||||
/* USER CODE END PV */ | |||||
/* Private function prototypes -----------------------------------------------*/ | |||||
void SystemClock_Config(void); | |||||
static void MX_GPIO_Init(void); | |||||
static void MX_USART2_UART_Init(void); | |||||
/* USER CODE BEGIN PFP */ | |||||
/* USER CODE END PFP */ | |||||
/* Private user code ---------------------------------------------------------*/ | |||||
/* USER CODE BEGIN 0 */ | |||||
/* USER CODE END 0 */ | |||||
/** | |||||
* @brief The application entry point. | |||||
* @retval int | |||||
*/ | |||||
int main(void) | |||||
{ | |||||
/* USER CODE BEGIN 1 */ | |||||
/* USER CODE END 1 */ | |||||
/* MCU Configuration--------------------------------------------------------*/ | |||||
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */ | |||||
HAL_Init(); | |||||
/* USER CODE BEGIN Init */ | |||||
/* USER CODE END Init */ | |||||
/* Configure the system clock */ | |||||
SystemClock_Config(); | |||||
/* USER CODE BEGIN SysInit */ | |||||
/* USER CODE END SysInit */ | |||||
/* Initialize all configured peripherals */ | |||||
MX_GPIO_Init(); | |||||
MX_USART2_UART_Init(); | |||||
/* USER CODE BEGIN 2 */ | |||||
/* USER CODE END 2 */ | |||||
/* Infinite loop */ | |||||
/* USER CODE BEGIN WHILE */ | |||||
while (1) | |||||
{ | |||||
/* USER CODE END WHILE */ | |||||
/* USER CODE BEGIN 3 */ | |||||
} | |||||
/* USER CODE END 3 */ | |||||
} | |||||
/** | |||||
* @brief System Clock Configuration | |||||
* @retval None | |||||
*/ | |||||
void SystemClock_Config(void) | |||||
{ | |||||
RCC_OscInitTypeDef RCC_OscInitStruct = {0}; | |||||
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; | |||||
/** Configure the main internal regulator output voltage | |||||
*/ | |||||
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); | |||||
/** Initializes the RCC Oscillators according to the specified parameters | |||||
* in the RCC_OscInitTypeDef structure. | |||||
*/ | |||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; | |||||
RCC_OscInitStruct.HSIState = RCC_HSI_ON; | |||||
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; | |||||
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; | |||||
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; | |||||
RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL6; | |||||
RCC_OscInitStruct.PLL.PLLDIV = RCC_PLL_DIV3; | |||||
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) | |||||
{ | |||||
Error_Handler(); | |||||
} | |||||
/** Initializes the CPU, AHB and APB buses clocks | |||||
*/ | |||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK | |||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; | |||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; | |||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; | |||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; | |||||
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; | |||||
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK) | |||||
{ | |||||
Error_Handler(); | |||||
} | |||||
} | |||||
/** | |||||
* @brief USART2 Initialization Function | |||||
* @param None | |||||
* @retval None | |||||
*/ | |||||
static void MX_USART2_UART_Init(void) | |||||
{ | |||||
/* USER CODE BEGIN USART2_Init 0 */ | |||||
/* USER CODE END USART2_Init 0 */ | |||||
/* USER CODE BEGIN USART2_Init 1 */ | |||||
/* USER CODE END USART2_Init 1 */ | |||||
huart2.Instance = USART2; | |||||
huart2.Init.BaudRate = 115200; | |||||
huart2.Init.WordLength = UART_WORDLENGTH_8B; | |||||
huart2.Init.StopBits = UART_STOPBITS_1; | |||||
huart2.Init.Parity = UART_PARITY_NONE; | |||||
huart2.Init.Mode = UART_MODE_TX_RX; | |||||
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE; | |||||
huart2.Init.OverSampling = UART_OVERSAMPLING_16; | |||||
if (HAL_UART_Init(&huart2) != HAL_OK) | |||||
{ | |||||
Error_Handler(); | |||||
} | |||||
/* USER CODE BEGIN USART2_Init 2 */ | |||||
/* USER CODE END USART2_Init 2 */ | |||||
} | |||||
/** | |||||
* @brief GPIO Initialization Function | |||||
* @param None | |||||
* @retval None | |||||
*/ | |||||
static void MX_GPIO_Init(void) | |||||
{ | |||||
GPIO_InitTypeDef GPIO_InitStruct = {0}; | |||||
/* GPIO Ports Clock Enable */ | |||||
__HAL_RCC_GPIOC_CLK_ENABLE(); | |||||
__HAL_RCC_GPIOH_CLK_ENABLE(); | |||||
__HAL_RCC_GPIOA_CLK_ENABLE(); | |||||
__HAL_RCC_GPIOB_CLK_ENABLE(); | |||||
/*Configure GPIO pin Output Level */ | |||||
HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_RESET); | |||||
/*Configure GPIO pin : B1_Pin */ | |||||
GPIO_InitStruct.Pin = B1_Pin; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
HAL_GPIO_Init(B1_GPIO_Port, &GPIO_InitStruct); | |||||
/*Configure GPIO pin : LD2_Pin */ | |||||
GPIO_InitStruct.Pin = LD2_Pin; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; | |||||
HAL_GPIO_Init(LD2_GPIO_Port, &GPIO_InitStruct); | |||||
} | |||||
/* USER CODE BEGIN 4 */ | |||||
/* USER CODE END 4 */ | |||||
/** | |||||
* @brief This function is executed in case of error occurrence. | |||||
* @retval None | |||||
*/ | |||||
void Error_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN Error_Handler_Debug */ | |||||
/* User can add his own implementation to report the HAL error return state */ | |||||
__disable_irq(); | |||||
while (1) | |||||
{ | |||||
} | |||||
/* USER CODE END Error_Handler_Debug */ | |||||
} | |||||
#ifdef USE_FULL_ASSERT | |||||
/** | |||||
* @brief Reports the name of the source file and the source line number | |||||
* where the assert_param error has occurred. | |||||
* @param file: pointer to the source file name | |||||
* @param line: assert_param error line source number | |||||
* @retval None | |||||
*/ | |||||
void assert_failed(uint8_t *file, uint32_t line) | |||||
{ | |||||
/* USER CODE BEGIN 6 */ | |||||
/* User can add his own implementation to report the file name and line number, | |||||
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ | |||||
/* USER CODE END 6 */ | |||||
} | |||||
#endif /* USE_FULL_ASSERT */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/* USER CODE BEGIN Header */ | |||||
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_hal_msp.c | |||||
* @brief This file provides code for the MSP Initialization | |||||
* and de-Initialization codes. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* USER CODE END Header */ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "main.h" | |||||
/* USER CODE BEGIN Includes */ | |||||
/* USER CODE END Includes */ | |||||
/* Private typedef -----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN TD */ | |||||
/* USER CODE END TD */ | |||||
/* Private define ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Define */ | |||||
/* USER CODE END Define */ | |||||
/* Private macro -------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Macro */ | |||||
/* USER CODE END Macro */ | |||||
/* Private variables ---------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PV */ | |||||
/* USER CODE END PV */ | |||||
/* Private function prototypes -----------------------------------------------*/ | |||||
/* USER CODE BEGIN PFP */ | |||||
/* USER CODE END PFP */ | |||||
/* External functions --------------------------------------------------------*/ | |||||
/* USER CODE BEGIN ExternalFunctions */ | |||||
/* USER CODE END ExternalFunctions */ | |||||
/* USER CODE BEGIN 0 */ | |||||
/* USER CODE END 0 */ | |||||
/** | |||||
* Initializes the Global MSP. | |||||
*/ | |||||
void HAL_MspInit(void) | |||||
{ | |||||
/* USER CODE BEGIN MspInit 0 */ | |||||
/* USER CODE END MspInit 0 */ | |||||
__HAL_RCC_COMP_CLK_ENABLE(); | |||||
__HAL_RCC_SYSCFG_CLK_ENABLE(); | |||||
__HAL_RCC_PWR_CLK_ENABLE(); | |||||
HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_0); | |||||
/* System interrupt init*/ | |||||
/* USER CODE BEGIN MspInit 1 */ | |||||
/* USER CODE END MspInit 1 */ | |||||
} | |||||
/** | |||||
* @brief UART MSP Initialization | |||||
* This function configures the hardware resources used in this example | |||||
* @param huart: UART handle pointer | |||||
* @retval None | |||||
*/ | |||||
void HAL_UART_MspInit(UART_HandleTypeDef* huart) | |||||
{ | |||||
GPIO_InitTypeDef GPIO_InitStruct = {0}; | |||||
if(huart->Instance==USART2) | |||||
{ | |||||
/* USER CODE BEGIN USART2_MspInit 0 */ | |||||
/* USER CODE END USART2_MspInit 0 */ | |||||
/* Peripheral clock enable */ | |||||
__HAL_RCC_USART2_CLK_ENABLE(); | |||||
__HAL_RCC_GPIOA_CLK_ENABLE(); | |||||
/**USART2 GPIO Configuration | |||||
PA2 ------> USART2_TX | |||||
PA3 ------> USART2_RX | |||||
*/ | |||||
GPIO_InitStruct.Pin = USART_TX_Pin|USART_RX_Pin; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; | |||||
GPIO_InitStruct.Alternate = GPIO_AF7_USART2; | |||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); | |||||
/* USER CODE BEGIN USART2_MspInit 1 */ | |||||
/* USER CODE END USART2_MspInit 1 */ | |||||
} | |||||
} | |||||
/** | |||||
* @brief UART MSP De-Initialization | |||||
* This function freeze the hardware resources used in this example | |||||
* @param huart: UART handle pointer | |||||
* @retval None | |||||
*/ | |||||
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart) | |||||
{ | |||||
if(huart->Instance==USART2) | |||||
{ | |||||
/* USER CODE BEGIN USART2_MspDeInit 0 */ | |||||
/* USER CODE END USART2_MspDeInit 0 */ | |||||
/* Peripheral clock disable */ | |||||
__HAL_RCC_USART2_CLK_DISABLE(); | |||||
/**USART2 GPIO Configuration | |||||
PA2 ------> USART2_TX | |||||
PA3 ------> USART2_RX | |||||
*/ | |||||
HAL_GPIO_DeInit(GPIOA, USART_TX_Pin|USART_RX_Pin); | |||||
/* USER CODE BEGIN USART2_MspDeInit 1 */ | |||||
/* USER CODE END USART2_MspDeInit 1 */ | |||||
} | |||||
} | |||||
/* USER CODE BEGIN 1 */ | |||||
/* USER CODE END 1 */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/* USER CODE BEGIN Header */ | |||||
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_it.c | |||||
* @brief Interrupt Service Routines. | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* USER CODE END Header */ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "main.h" | |||||
#include "stm32l1xx_it.h" | |||||
/* Private includes ----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN Includes */ | |||||
/* USER CODE END Includes */ | |||||
/* Private typedef -----------------------------------------------------------*/ | |||||
/* USER CODE BEGIN TD */ | |||||
/* USER CODE END TD */ | |||||
/* Private define ------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PD */ | |||||
/* USER CODE END PD */ | |||||
/* Private macro -------------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PM */ | |||||
/* USER CODE END PM */ | |||||
/* Private variables ---------------------------------------------------------*/ | |||||
/* USER CODE BEGIN PV */ | |||||
/* USER CODE END PV */ | |||||
/* Private function prototypes -----------------------------------------------*/ | |||||
/* USER CODE BEGIN PFP */ | |||||
/* USER CODE END PFP */ | |||||
/* Private user code ---------------------------------------------------------*/ | |||||
/* USER CODE BEGIN 0 */ | |||||
/* USER CODE END 0 */ | |||||
/* External variables --------------------------------------------------------*/ | |||||
/* USER CODE BEGIN EV */ | |||||
/* USER CODE END EV */ | |||||
/******************************************************************************/ | |||||
/* Cortex-M3 Processor Interruption and Exception Handlers */ | |||||
/******************************************************************************/ | |||||
/** | |||||
* @brief This function handles Non maskable interrupt. | |||||
*/ | |||||
void NMI_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN NonMaskableInt_IRQn 0 */ | |||||
/* USER CODE END NonMaskableInt_IRQn 0 */ | |||||
/* USER CODE BEGIN NonMaskableInt_IRQn 1 */ | |||||
while (1) | |||||
{ | |||||
} | |||||
/* USER CODE END NonMaskableInt_IRQn 1 */ | |||||
} | |||||
/** | |||||
* @brief This function handles Hard fault interrupt. | |||||
*/ | |||||
void HardFault_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN HardFault_IRQn 0 */ | |||||
/* USER CODE END HardFault_IRQn 0 */ | |||||
while (1) | |||||
{ | |||||
/* USER CODE BEGIN W1_HardFault_IRQn 0 */ | |||||
/* USER CODE END W1_HardFault_IRQn 0 */ | |||||
} | |||||
} | |||||
/** | |||||
* @brief This function handles Memory management fault. | |||||
*/ | |||||
void MemManage_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN MemoryManagement_IRQn 0 */ | |||||
/* USER CODE END MemoryManagement_IRQn 0 */ | |||||
while (1) | |||||
{ | |||||
/* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */ | |||||
/* USER CODE END W1_MemoryManagement_IRQn 0 */ | |||||
} | |||||
} | |||||
/** | |||||
* @brief This function handles Pre-fetch fault, memory access fault. | |||||
*/ | |||||
void BusFault_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN BusFault_IRQn 0 */ | |||||
/* USER CODE END BusFault_IRQn 0 */ | |||||
while (1) | |||||
{ | |||||
/* USER CODE BEGIN W1_BusFault_IRQn 0 */ | |||||
/* USER CODE END W1_BusFault_IRQn 0 */ | |||||
} | |||||
} | |||||
/** | |||||
* @brief This function handles Undefined instruction or illegal state. | |||||
*/ | |||||
void UsageFault_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN UsageFault_IRQn 0 */ | |||||
/* USER CODE END UsageFault_IRQn 0 */ | |||||
while (1) | |||||
{ | |||||
/* USER CODE BEGIN W1_UsageFault_IRQn 0 */ | |||||
/* USER CODE END W1_UsageFault_IRQn 0 */ | |||||
} | |||||
} | |||||
/** | |||||
* @brief This function handles System service call via SWI instruction. | |||||
*/ | |||||
void SVC_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN SVC_IRQn 0 */ | |||||
/* USER CODE END SVC_IRQn 0 */ | |||||
/* USER CODE BEGIN SVC_IRQn 1 */ | |||||
/* USER CODE END SVC_IRQn 1 */ | |||||
} | |||||
/** | |||||
* @brief This function handles Debug monitor. | |||||
*/ | |||||
void DebugMon_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN DebugMonitor_IRQn 0 */ | |||||
/* USER CODE END DebugMonitor_IRQn 0 */ | |||||
/* USER CODE BEGIN DebugMonitor_IRQn 1 */ | |||||
/* USER CODE END DebugMonitor_IRQn 1 */ | |||||
} | |||||
/** | |||||
* @brief This function handles Pendable request for system service. | |||||
*/ | |||||
void PendSV_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN PendSV_IRQn 0 */ | |||||
/* USER CODE END PendSV_IRQn 0 */ | |||||
/* USER CODE BEGIN PendSV_IRQn 1 */ | |||||
/* USER CODE END PendSV_IRQn 1 */ | |||||
} | |||||
/** | |||||
* @brief This function handles System tick timer. | |||||
*/ | |||||
void SysTick_Handler(void) | |||||
{ | |||||
/* USER CODE BEGIN SysTick_IRQn 0 */ | |||||
/* USER CODE END SysTick_IRQn 0 */ | |||||
HAL_IncTick(); | |||||
/* USER CODE BEGIN SysTick_IRQn 1 */ | |||||
/* USER CODE END SysTick_IRQn 1 */ | |||||
} | |||||
/******************************************************************************/ | |||||
/* STM32L1xx Peripheral Interrupt Handlers */ | |||||
/* Add here the Interrupt Handlers for the used peripherals. */ | |||||
/* For the available peripheral interrupt handler names, */ | |||||
/* please refer to the startup file (startup_stm32l1xx.s). */ | |||||
/******************************************************************************/ | |||||
/* USER CODE BEGIN 1 */ | |||||
/* USER CODE END 1 */ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file stm32l1xx_nucleo.c | |||||
* @author MCD Application Team | |||||
* @brief This file provides set of firmware functions to manage: | |||||
* - LEDs and push-button available on STM32L1XX-Nucleo Kit | |||||
* from STMicroelectronics | |||||
* - LCD, joystick and microSD available on Adafruit 1.8" TFT LCD | |||||
* shield (reference ID 802) | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2017 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "stm32l1xx_nucleo.h" | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO STM32L152RE-Nucleo | |||||
* @brief This file provides set of firmware functions to manage Leds and push-button | |||||
* available on STM32L1XX-Nucleo Kit from STMicroelectronics. | |||||
* It provides also LCD, joystick and uSD functions to communicate with | |||||
* Adafruit 1.8" TFT LCD shield (reference ID 802) | |||||
* @{ | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_Private_Defines Private Defines | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief STM32L152RE NUCLEO BSP Driver version | |||||
*/ | |||||
#define __STM32L1XX_NUCLEO_BSP_VERSION_MAIN (0x01) /*!< [31:24] main version */ | |||||
#define __STM32L1XX_NUCLEO_BSP_VERSION_SUB1 (0x01) /*!< [23:16] sub1 version */ | |||||
#define __STM32L1XX_NUCLEO_BSP_VERSION_SUB2 (0x03) /*!< [15:8] sub2 version */ | |||||
#define __STM32L1XX_NUCLEO_BSP_VERSION_RC (0x00) /*!< [7:0] release candidate */ | |||||
#define __STM32L1XX_NUCLEO_BSP_VERSION ((__STM32L1XX_NUCLEO_BSP_VERSION_MAIN << 24)\ | |||||
|(__STM32L1XX_NUCLEO_BSP_VERSION_SUB1 << 16)\ | |||||
|(__STM32L1XX_NUCLEO_BSP_VERSION_SUB2 << 8 )\ | |||||
|(__STM32L1XX_NUCLEO_BSP_VERSION_RC)) | |||||
/** | |||||
* @brief LINK SD Card | |||||
*/ | |||||
#define SD_DUMMY_BYTE 0xFF | |||||
#define SD_NO_RESPONSE_EXPECTED 0x80 | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_Private_Variables Private Variables | |||||
* @{ | |||||
*/ | |||||
GPIO_TypeDef* LED_PORT[LEDn] = {LED2_GPIO_PORT}; | |||||
const uint16_t LED_PIN[LEDn] = {LED2_PIN}; | |||||
GPIO_TypeDef* BUTTON_PORT[BUTTONn] = {USER_BUTTON_GPIO_PORT}; | |||||
const uint16_t BUTTON_PIN[BUTTONn] = {USER_BUTTON_PIN}; | |||||
const uint8_t BUTTON_IRQn[BUTTONn] = {USER_BUTTON_EXTI_IRQn }; | |||||
/** | |||||
* @brief BUS variables | |||||
*/ | |||||
#ifdef HAL_SPI_MODULE_ENABLED | |||||
uint32_t SpixTimeout = NUCLEO_SPIx_TIMEOUT_MAX; /*<! Value of Timeout when SPI communication fails */ | |||||
static SPI_HandleTypeDef hnucleo_Spi; | |||||
#endif /* HAL_SPI_MODULE_ENABLED */ | |||||
#ifdef HAL_ADC_MODULE_ENABLED | |||||
static ADC_HandleTypeDef hnucleo_Adc; | |||||
/* ADC channel configuration structure declaration */ | |||||
static ADC_ChannelConfTypeDef sConfig; | |||||
#endif /* HAL_ADC_MODULE_ENABLED */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_Private_Functions Private Functions | |||||
* @{ | |||||
*/ | |||||
#ifdef HAL_SPI_MODULE_ENABLED | |||||
static void SPIx_Init(void); | |||||
static void SPIx_Write(uint8_t Value); | |||||
static void SPIx_WriteData(uint8_t *DataIn, uint16_t DataLength); | |||||
static void SPIx_WriteReadData(const uint8_t *DataIn, uint8_t *DataOut, uint16_t DataLegnth); | |||||
static void SPIx_Error (void); | |||||
static void SPIx_MspInit(void); | |||||
/* SD IO functions */ | |||||
void SD_IO_Init(void); | |||||
void SD_IO_CSState(uint8_t state); | |||||
void SD_IO_WriteReadData(const uint8_t *DataIn, uint8_t *DataOut, uint16_t DataLength); | |||||
void SD_IO_ReadData(uint8_t *DataOut, uint16_t DataLength); | |||||
void SD_IO_WriteData(const uint8_t *Data, uint16_t DataLength); | |||||
uint8_t SD_IO_WriteByte(uint8_t Data); | |||||
uint8_t SD_IO_ReadByte(void); | |||||
/* LCD IO functions */ | |||||
void LCD_IO_Init(void); | |||||
void LCD_IO_WriteData(uint8_t Data); | |||||
void LCD_IO_WriteMultipleData(uint8_t *pData, uint32_t Size); | |||||
void LCD_IO_WriteReg(uint8_t LCDReg); | |||||
void LCD_Delay(uint32_t delay); | |||||
#endif /* HAL_SPI_MODULE_ENABLED */ | |||||
#ifdef HAL_ADC_MODULE_ENABLED | |||||
static HAL_StatusTypeDef ADCx_Init(void); | |||||
static void ADCx_DeInit(void); | |||||
static void ADCx_MspInit(ADC_HandleTypeDef *hadc); | |||||
static void ADCx_MspDeInit(ADC_HandleTypeDef *hadc); | |||||
#endif /* HAL_ADC_MODULE_ENABLED */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_Exported_Functions Exported Functions | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief This method returns the STM32L1XX NUCLEO BSP Driver revision | |||||
* @retval version : 0xXYZR (8bits for each decimal, R for RC) | |||||
*/ | |||||
uint32_t BSP_GetVersion(void) | |||||
{ | |||||
return __STM32L1XX_NUCLEO_BSP_VERSION; | |||||
} | |||||
/** @defgroup STM32L1XX_NUCLEO_LED_Functions LED Functions | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief Configures LED GPIO. | |||||
* @param Led: Led to be configured. | |||||
* This parameter can be one of the following values: | |||||
* @arg LED2 | |||||
* @retval None | |||||
*/ | |||||
void BSP_LED_Init(Led_TypeDef Led) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct; | |||||
/* Enable the GPIO_LED Clock */ | |||||
LEDx_GPIO_CLK_ENABLE(Led); | |||||
/* Configure the GPIO_LED pin */ | |||||
gpioinitstruct.Pin = LED_PIN[Led]; | |||||
gpioinitstruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
gpioinitstruct.Pull = GPIO_NOPULL; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_HIGH; | |||||
HAL_GPIO_Init(LED_PORT[Led], &gpioinitstruct); | |||||
/* Reset PIN to switch off the LED */ | |||||
HAL_GPIO_WritePin(LED_PORT[Led],LED_PIN[Led], GPIO_PIN_RESET); | |||||
} | |||||
/** | |||||
* @brief DeInit LEDs. | |||||
* @param Led: LED to be de-init. | |||||
* This parameter can be one of the following values: | |||||
* @arg LED2 | |||||
* @note Led DeInit does not disable the GPIO clock nor disable the Mfx | |||||
* @retval None | |||||
*/ | |||||
void BSP_LED_DeInit(Led_TypeDef Led) | |||||
{ | |||||
GPIO_InitTypeDef gpio_init_structure; | |||||
/* Turn off LED */ | |||||
HAL_GPIO_WritePin(LED_PORT[Led],LED_PIN[Led], GPIO_PIN_RESET); | |||||
/* DeInit the GPIO_LED pin */ | |||||
gpio_init_structure.Pin = LED_PIN[Led]; | |||||
HAL_GPIO_DeInit(LED_PORT[Led], gpio_init_structure.Pin); | |||||
} | |||||
/** | |||||
* @brief Turns selected LED On. | |||||
* @param Led: Specifies the Led to be set on. | |||||
* This parameter can be one of following parameters: | |||||
* @arg LED2 | |||||
* @retval None | |||||
*/ | |||||
void BSP_LED_On(Led_TypeDef Led) | |||||
{ | |||||
HAL_GPIO_WritePin(LED_PORT[Led], LED_PIN[Led], GPIO_PIN_SET); | |||||
} | |||||
/** | |||||
* @brief Turns selected LED Off. | |||||
* @param Led: Specifies the Led to be set off. | |||||
* This parameter can be one of following parameters: | |||||
* @arg LED2 | |||||
* @retval None | |||||
*/ | |||||
void BSP_LED_Off(Led_TypeDef Led) | |||||
{ | |||||
HAL_GPIO_WritePin(LED_PORT[Led], LED_PIN[Led], GPIO_PIN_RESET); | |||||
} | |||||
/** | |||||
* @brief Toggles the selected LED. | |||||
* @param Led: Specifies the Led to be toggled. | |||||
* This parameter can be one of following parameters: | |||||
* @arg LED2 | |||||
* @retval None | |||||
*/ | |||||
void BSP_LED_Toggle(Led_TypeDef Led) | |||||
{ | |||||
HAL_GPIO_TogglePin(LED_PORT[Led], LED_PIN[Led]); | |||||
} | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup STM32L1XX_NUCLEO_BUTTON_Functions BUTTON Functions | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief Configures Button GPIO and EXTI Line. | |||||
* @param Button: Specifies the Button to be configured. | |||||
* This parameter should be: BUTTON_USER | |||||
* @param ButtonMode: Specifies Button mode. | |||||
* This parameter can be one of following parameters: | |||||
* @arg BUTTON_MODE_GPIO: Button will be used as simple IO | |||||
* @arg BUTTON_MODE_EXTI: Button will be connected to EXTI line with interrupt | |||||
* generation capability | |||||
* @retval None | |||||
*/ | |||||
void BSP_PB_Init(Button_TypeDef Button, ButtonMode_TypeDef ButtonMode) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct; | |||||
/* Enable the BUTTON Clock */ | |||||
BUTTONx_GPIO_CLK_ENABLE(Button); | |||||
gpioinitstruct.Pin = BUTTON_PIN[Button]; | |||||
gpioinitstruct.Pull = GPIO_NOPULL; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_MEDIUM; | |||||
if (ButtonMode == BUTTON_MODE_GPIO) | |||||
{ | |||||
/* Configure Button pin as input */ | |||||
gpioinitstruct.Mode = GPIO_MODE_INPUT; | |||||
HAL_GPIO_Init(BUTTON_PORT[Button], &gpioinitstruct); | |||||
} | |||||
if (ButtonMode == BUTTON_MODE_EXTI) | |||||
{ | |||||
/* Configure Button pin as input with External interrupt */ | |||||
gpioinitstruct.Mode = GPIO_MODE_IT_FALLING; | |||||
HAL_GPIO_Init(BUTTON_PORT[Button], &gpioinitstruct); | |||||
/* Enable and set Button EXTI Interrupt to the lowest priority */ | |||||
HAL_NVIC_SetPriority((IRQn_Type)(BUTTON_IRQn[Button]), 0x0F, 0); | |||||
HAL_NVIC_EnableIRQ((IRQn_Type)(BUTTON_IRQn[Button])); | |||||
} | |||||
} | |||||
/** | |||||
* @brief Push Button DeInit. | |||||
* @param Button: Button to be configured | |||||
* This parameter should be: BUTTON_USER | |||||
* @note PB DeInit does not disable the GPIO clock | |||||
* @retval None | |||||
*/ | |||||
void BSP_PB_DeInit(Button_TypeDef Button) | |||||
{ | |||||
GPIO_InitTypeDef gpio_init_structure; | |||||
gpio_init_structure.Pin = BUTTON_PIN[Button]; | |||||
HAL_NVIC_DisableIRQ((IRQn_Type)(BUTTON_IRQn[Button])); | |||||
HAL_GPIO_DeInit(BUTTON_PORT[Button], gpio_init_structure.Pin); | |||||
} | |||||
/** | |||||
* @brief Returns the selected Button state. | |||||
* @param Button: Specifies the Button to be checked. | |||||
* This parameter should be: BUTTON_USER | |||||
* @retval Button state. | |||||
*/ | |||||
uint32_t BSP_PB_GetState(Button_TypeDef Button) | |||||
{ | |||||
return HAL_GPIO_ReadPin(BUTTON_PORT[Button], BUTTON_PIN[Button]); | |||||
} | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1XX_NUCLEO_Private_Functions | |||||
* @{ | |||||
*/ | |||||
#ifdef HAL_SPI_MODULE_ENABLED | |||||
/****************************************************************************** | |||||
BUS OPERATIONS | |||||
*******************************************************************************/ | |||||
/** | |||||
* @brief Initialize SPI MSP. | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_MspInit(void) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct = {0}; | |||||
/*** Configure the GPIOs ***/ | |||||
/* Enable GPIO clock */ | |||||
NUCLEO_SPIx_SCK_GPIO_CLK_ENABLE(); | |||||
NUCLEO_SPIx_MISO_MOSI_GPIO_CLK_ENABLE(); | |||||
/* Configure SPI SCK */ | |||||
gpioinitstruct.Pin = NUCLEO_SPIx_SCK_PIN; | |||||
gpioinitstruct.Mode = GPIO_MODE_AF_PP; | |||||
gpioinitstruct.Pull = GPIO_PULLUP; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; | |||||
gpioinitstruct.Alternate = NUCLEO_SPIx_SCK_AF; | |||||
HAL_GPIO_Init(NUCLEO_SPIx_SCK_GPIO_PORT, &gpioinitstruct); | |||||
/* Configure SPI MISO and MOSI */ | |||||
gpioinitstruct.Pin = NUCLEO_SPIx_MOSI_PIN; | |||||
gpioinitstruct.Alternate = NUCLEO_SPIx_MISO_MOSI_AF; | |||||
gpioinitstruct.Pull = GPIO_PULLDOWN; | |||||
HAL_GPIO_Init(NUCLEO_SPIx_MISO_MOSI_GPIO_PORT, &gpioinitstruct); | |||||
gpioinitstruct.Pin = NUCLEO_SPIx_MISO_PIN; | |||||
HAL_GPIO_Init(NUCLEO_SPIx_MISO_MOSI_GPIO_PORT, &gpioinitstruct); | |||||
/*** Configure the SPI peripheral ***/ | |||||
/* Enable SPI clock */ | |||||
NUCLEO_SPIx_CLK_ENABLE(); | |||||
} | |||||
/** | |||||
* @brief Initialize SPI HAL. | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_Init(void) | |||||
{ | |||||
if(HAL_SPI_GetState(&hnucleo_Spi) == HAL_SPI_STATE_RESET) | |||||
{ | |||||
/* SPI Config */ | |||||
hnucleo_Spi.Instance = NUCLEO_SPIx; | |||||
/* SPI baudrate is set to 8 MHz maximum (PCLK2/SPI_BaudRatePrescaler = 64/8 = 8 MHz) | |||||
to verify these constraints: | |||||
- ST7735 LCD SPI interface max baudrate is 15MHz for write and 6.66MHz for read | |||||
Since the provided driver doesn't use read capability from LCD, only constraint | |||||
on write baudrate is considered. | |||||
- SD card SPI interface max baudrate is 25MHz for write/read | |||||
- PCLK2 max frequency is 32 MHz | |||||
*/ | |||||
hnucleo_Spi.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_8; | |||||
hnucleo_Spi.Init.Direction = SPI_DIRECTION_2LINES; | |||||
hnucleo_Spi.Init.CLKPhase = SPI_PHASE_1EDGE; | |||||
hnucleo_Spi.Init.CLKPolarity = SPI_POLARITY_LOW; | |||||
hnucleo_Spi.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; | |||||
hnucleo_Spi.Init.CRCPolynomial = 7; | |||||
hnucleo_Spi.Init.DataSize = SPI_DATASIZE_8BIT; | |||||
hnucleo_Spi.Init.FirstBit = SPI_FIRSTBIT_MSB; | |||||
hnucleo_Spi.Init.NSS = SPI_NSS_SOFT; | |||||
hnucleo_Spi.Init.TIMode = SPI_TIMODE_DISABLE; | |||||
hnucleo_Spi.Init.Mode = SPI_MODE_MASTER; | |||||
SPIx_MspInit(); | |||||
HAL_SPI_Init(&hnucleo_Spi); | |||||
} | |||||
} | |||||
/** | |||||
* @brief SPI Write a byte to device | |||||
* @param DataIn value to be written | |||||
* @param DataLength number of bytes to write | |||||
* @param DataOut read value | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_WriteReadData(const uint8_t *DataIn, uint8_t *DataOut, uint16_t DataLength) | |||||
{ | |||||
HAL_StatusTypeDef status = HAL_OK; | |||||
status = HAL_SPI_TransmitReceive(&hnucleo_Spi, (uint8_t*) DataIn, DataOut, DataLength, SpixTimeout); | |||||
/* Check the communication status */ | |||||
if(status != HAL_OK) | |||||
{ | |||||
/* Execute user timeout callback */ | |||||
SPIx_Error(); | |||||
} | |||||
} | |||||
/** | |||||
* @brief SPI Write an amount of data to device | |||||
* @param DataIn value to be written | |||||
* @param DataLength number of bytes to write | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_WriteData(uint8_t *DataIn, uint16_t DataLength) | |||||
{ | |||||
HAL_StatusTypeDef status = HAL_OK; | |||||
status = HAL_SPI_Transmit(&hnucleo_Spi, DataIn, DataLength, SpixTimeout); | |||||
/* Check the communication status */ | |||||
if(status != HAL_OK) | |||||
{ | |||||
/* Execute user timeout callback */ | |||||
SPIx_Error(); | |||||
} | |||||
} | |||||
/** | |||||
* @brief SPI Write a byte to device | |||||
* @param Value: value to be written | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_Write(uint8_t Value) | |||||
{ | |||||
HAL_StatusTypeDef status = HAL_OK; | |||||
uint8_t data; | |||||
status = HAL_SPI_TransmitReceive(&hnucleo_Spi, (uint8_t*) &Value, &data, 1, SpixTimeout); | |||||
/* Check the communication status */ | |||||
if(status != HAL_OK) | |||||
{ | |||||
/* Execute user timeout callback */ | |||||
SPIx_Error(); | |||||
} | |||||
} | |||||
/** | |||||
* @brief SPI error treatment function | |||||
* @retval None | |||||
*/ | |||||
static void SPIx_Error (void) | |||||
{ | |||||
/* De-initialize the SPI communication BUS */ | |||||
HAL_SPI_DeInit(&hnucleo_Spi); | |||||
/* Re-Initiaize the SPI communication BUS */ | |||||
SPIx_Init(); | |||||
} | |||||
/****************************************************************************** | |||||
LINK OPERATIONS | |||||
*******************************************************************************/ | |||||
/********************************* LINK SD ************************************/ | |||||
/** | |||||
* @brief Initialize the SD Card and put it into StandBy State (Ready for | |||||
* data transfer). | |||||
* @retval None | |||||
*/ | |||||
void SD_IO_Init(void) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct = {0}; | |||||
uint8_t counter = 0; | |||||
/* SD_CS_GPIO Periph clock enable */ | |||||
SD_CS_GPIO_CLK_ENABLE(); | |||||
/* Configure SD_CS_PIN pin: SD Card CS pin */ | |||||
gpioinitstruct.Pin = SD_CS_PIN; | |||||
gpioinitstruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
gpioinitstruct.Pull = GPIO_PULLUP; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_HIGH; | |||||
HAL_GPIO_Init(SD_CS_GPIO_PORT, &gpioinitstruct); | |||||
/* Configure LCD_CS_PIN pin: LCD Card CS pin */ | |||||
gpioinitstruct.Pin = LCD_CS_PIN; | |||||
gpioinitstruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
gpioinitstruct.Pull = GPIO_NOPULL; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_HIGH; | |||||
HAL_GPIO_Init(SD_CS_GPIO_PORT, &gpioinitstruct); | |||||
LCD_CS_HIGH(); | |||||
/*------------Put SD in SPI mode--------------*/ | |||||
/* SD SPI Config */ | |||||
SPIx_Init(); | |||||
/* SD chip select high */ | |||||
SD_CS_HIGH(); | |||||
/* Send dummy byte 0xFF, 10 times with CS high */ | |||||
/* Rise CS and MOSI for 80 clocks cycles */ | |||||
for (counter = 0; counter <= 9; counter++) | |||||
{ | |||||
/* Send dummy byte 0xFF */ | |||||
SD_IO_WriteByte(SD_DUMMY_BYTE); | |||||
} | |||||
} | |||||
/** | |||||
* @brief Set the SD_CS pin. | |||||
* @param val pin value. | |||||
* @retval None | |||||
*/ | |||||
void SD_IO_CSState(uint8_t val) | |||||
{ | |||||
if(val == 1) | |||||
{ | |||||
SD_CS_HIGH(); | |||||
} | |||||
else | |||||
{ | |||||
SD_CS_LOW(); | |||||
} | |||||
} | |||||
/** | |||||
* @brief Write byte(s) on the SD | |||||
* @param DataIn: Pointer to data buffer to write | |||||
* @param DataOut: Pointer to data buffer for read data | |||||
* @param DataLength: number of bytes to write | |||||
* @retval None | |||||
*/ | |||||
void SD_IO_WriteReadData(const uint8_t *DataIn, uint8_t *DataOut, uint16_t DataLength) | |||||
{ | |||||
/* Send the byte */ | |||||
SPIx_WriteReadData(DataIn, DataOut, DataLength); | |||||
} | |||||
/** | |||||
* @brief Write a byte on the SD. | |||||
* @param Data byte to send. | |||||
* @retval Data written | |||||
*/ | |||||
uint8_t SD_IO_WriteByte(uint8_t Data) | |||||
{ | |||||
uint8_t tmp; | |||||
/* Send the byte */ | |||||
SPIx_WriteReadData(&Data,&tmp,1); | |||||
return tmp; | |||||
} | |||||
/** | |||||
* @brief Write an amount of data on the SD. | |||||
* @param DataOut byte to send. | |||||
* @param DataLength number of bytes to write | |||||
* @retval none | |||||
*/ | |||||
void SD_IO_ReadData(uint8_t *DataOut, uint16_t DataLength) | |||||
{ | |||||
/* Send the byte */ | |||||
SD_IO_WriteReadData(DataOut, DataOut, DataLength); | |||||
} | |||||
/** | |||||
* @brief Write an amount of data on the SD. | |||||
* @param Data byte to send. | |||||
* @param DataLength number of bytes to write | |||||
* @retval none | |||||
*/ | |||||
void SD_IO_WriteData(const uint8_t *Data, uint16_t DataLength) | |||||
{ | |||||
/* Send the byte */ | |||||
SPIx_WriteData((uint8_t *)Data, DataLength); | |||||
} | |||||
/********************************* LINK LCD ***********************************/ | |||||
/** | |||||
* @brief Initialize the LCD | |||||
* @retval None | |||||
*/ | |||||
void LCD_IO_Init(void) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct = {0}; | |||||
/* LCD_CS_GPIO and LCD_DC_GPIO Periph clock enable */ | |||||
LCD_CS_GPIO_CLK_ENABLE(); | |||||
LCD_DC_GPIO_CLK_ENABLE(); | |||||
/* Configure LCD_CS_PIN pin: LCD Card CS pin */ | |||||
gpioinitstruct.Pin = LCD_CS_PIN; | |||||
gpioinitstruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
gpioinitstruct.Pull = GPIO_NOPULL; | |||||
gpioinitstruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; | |||||
HAL_GPIO_Init(SD_CS_GPIO_PORT, &gpioinitstruct); | |||||
/* Configure LCD_DC_PIN pin: LCD Card DC pin */ | |||||
gpioinitstruct.Pin = LCD_DC_PIN; | |||||
HAL_GPIO_Init(LCD_DC_GPIO_PORT, &gpioinitstruct); | |||||
/* LCD chip select high */ | |||||
LCD_CS_HIGH(); | |||||
/* LCD SPI Config */ | |||||
SPIx_Init(); | |||||
} | |||||
/** | |||||
* @brief Write command to select the LCD register. | |||||
* @param LCDReg: Address of the selected register. | |||||
* @retval None | |||||
*/ | |||||
void LCD_IO_WriteReg(uint8_t LCDReg) | |||||
{ | |||||
/* Reset LCD control line CS */ | |||||
LCD_CS_LOW(); | |||||
/* Set LCD data/command line DC to Low */ | |||||
LCD_DC_LOW(); | |||||
/* Send Command */ | |||||
SPIx_Write(LCDReg); | |||||
/* Deselect : Chip Select high */ | |||||
LCD_CS_HIGH(); | |||||
} | |||||
/** | |||||
* @brief Write register value. | |||||
* @param pData Pointer on the register value | |||||
* @param Size Size of byte to transmit to the register | |||||
* @retval None | |||||
*/ | |||||
void LCD_IO_WriteMultipleData(uint8_t *pData, uint32_t Size) | |||||
{ | |||||
uint32_t counter = 0; | |||||
/* Reset LCD control line CS */ | |||||
LCD_CS_LOW(); | |||||
/* Set LCD data/command line DC to High */ | |||||
LCD_DC_HIGH(); | |||||
if (Size == 1) | |||||
{ | |||||
/* Only 1 byte to be sent to LCD - general interface can be used */ | |||||
/* Send Data */ | |||||
SPIx_Write(*pData); | |||||
} | |||||
else | |||||
{ | |||||
/* Several data should be sent in a raw */ | |||||
/* Direct SPI accesses for optimization */ | |||||
for (counter = Size; counter != 0; counter--) | |||||
{ | |||||
while(((hnucleo_Spi.Instance->SR) & SPI_FLAG_TXE) != SPI_FLAG_TXE) | |||||
{ | |||||
} | |||||
/* Need to invert bytes for LCD*/ | |||||
*((__IO uint8_t*)&hnucleo_Spi.Instance->DR) = *(pData+1); | |||||
while(((hnucleo_Spi.Instance->SR) & SPI_FLAG_TXE) != SPI_FLAG_TXE) | |||||
{ | |||||
} | |||||
*((__IO uint8_t*)&hnucleo_Spi.Instance->DR) = *pData; | |||||
counter--; | |||||
pData += 2; | |||||
} | |||||
/* Wait until the bus is ready before releasing Chip select */ | |||||
while(((hnucleo_Spi.Instance->SR) & SPI_FLAG_BSY) != RESET) | |||||
{ | |||||
} | |||||
} | |||||
/* Deselect : Chip Select high */ | |||||
LCD_CS_HIGH(); | |||||
} | |||||
/** | |||||
* @brief Wait for loop in ms. | |||||
* @param Delay in ms. | |||||
* @retval None | |||||
*/ | |||||
void LCD_Delay(uint32_t Delay) | |||||
{ | |||||
HAL_Delay(Delay); | |||||
} | |||||
#endif /* HAL_SPI_MODULE_ENABLED */ | |||||
#ifdef HAL_ADC_MODULE_ENABLED | |||||
/******************************* LINK JOYSTICK ********************************/ | |||||
/** | |||||
* @brief Initialize ADC MSP. | |||||
* @param hadc ADC peripheral | |||||
* @retval None | |||||
*/ | |||||
static void ADCx_MspInit(ADC_HandleTypeDef *hadc) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct = {0}; | |||||
/*** Configure the GPIOs ***/ | |||||
/* Enable GPIO clock */ | |||||
NUCLEO_ADCx_GPIO_CLK_ENABLE(); | |||||
/* Configure ADC1 Channel8 as analog input */ | |||||
gpioinitstruct.Pin = NUCLEO_ADCx_GPIO_PIN ; | |||||
gpioinitstruct.Mode = GPIO_MODE_ANALOG; | |||||
gpioinitstruct.Pull = GPIO_NOPULL; | |||||
HAL_GPIO_Init(NUCLEO_ADCx_GPIO_PORT, &gpioinitstruct); | |||||
/*** Configure the ADC peripheral ***/ | |||||
/* Enable ADC clock */ | |||||
NUCLEO_ADCx_CLK_ENABLE(); | |||||
} | |||||
/** | |||||
* @brief DeInitializes ADC MSP. | |||||
* @param hadc ADC peripheral | |||||
* @note ADC DeInit does not disable the GPIO clock | |||||
* @retval None | |||||
*/ | |||||
static void ADCx_MspDeInit(ADC_HandleTypeDef *hadc) | |||||
{ | |||||
GPIO_InitTypeDef gpioinitstruct; | |||||
/*** DeInit the ADC peripheral ***/ | |||||
/* Disable ADC clock */ | |||||
NUCLEO_ADCx_CLK_DISABLE(); | |||||
/* Configure the selected ADC Channel as analog input */ | |||||
gpioinitstruct.Pin = NUCLEO_ADCx_GPIO_PIN ; | |||||
HAL_GPIO_DeInit(NUCLEO_ADCx_GPIO_PORT, gpioinitstruct.Pin); | |||||
/* Disable GPIO clock has to be done by the application*/ | |||||
/* NUCLEO_ADCx_GPIO_CLK_DISABLE(); */ | |||||
} | |||||
/** | |||||
* @brief Initializes ADC HAL. | |||||
* @retval None | |||||
*/ | |||||
static HAL_StatusTypeDef ADCx_Init(void) | |||||
{ | |||||
/* Set ADC instance */ | |||||
hnucleo_Adc.Instance = NUCLEO_ADCx; | |||||
if(HAL_ADC_GetState(&hnucleo_Adc) == HAL_ADC_STATE_RESET) | |||||
{ | |||||
/* ADC Config */ | |||||
hnucleo_Adc.Instance = NUCLEO_ADCx; | |||||
hnucleo_Adc.Init.ClockPrescaler = ADC_CLOCK_ASYNC_DIV2; /* ADC clock must not exceed 16MHz */ | |||||
hnucleo_Adc.Init.Resolution = ADC_RESOLUTION_12B; | |||||
hnucleo_Adc.Init.DataAlign = ADC_DATAALIGN_RIGHT; | |||||
hnucleo_Adc.Init.ScanConvMode = ADC_SCAN_DISABLE; /* Sequencer disabled (ADC conversion on only 1 channel: channel set on rank 1) */ | |||||
hnucleo_Adc.Init.EOCSelection = ADC_EOC_SEQ_CONV; | |||||
hnucleo_Adc.Init.LowPowerAutoWait = ADC_AUTOWAIT_UNTIL_DATA_READ; | |||||
hnucleo_Adc.Init.LowPowerAutoPowerOff = ADC_AUTOPOWEROFF_DISABLE; | |||||
hnucleo_Adc.Init.ChannelsBank = ADC_CHANNELS_BANK_A; | |||||
hnucleo_Adc.Init.ContinuousConvMode = DISABLE; /* Continuous mode disabled to have only 1 conversion at each conversion trig */ | |||||
hnucleo_Adc.Init.NbrOfConversion = 1; /* Parameter discarded because sequencer is disabled */ | |||||
hnucleo_Adc.Init.DiscontinuousConvMode = DISABLE; /* Parameter discarded because sequencer is disabled */ | |||||
hnucleo_Adc.Init.NbrOfDiscConversion = 1; /* Parameter discarded because sequencer is disabled */ | |||||
hnucleo_Adc.Init.ExternalTrigConv = ADC_SOFTWARE_START; /* Trig of conversion start done manually by software, without external event */ | |||||
hnucleo_Adc.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; /* Parameter discarded because trig by software start */ | |||||
hnucleo_Adc.Init.DMAContinuousRequests = DISABLE; | |||||
/* Initialize MSP related to ADC */ | |||||
ADCx_MspInit(&hnucleo_Adc); | |||||
/* Initialize ADC */ | |||||
if (HAL_ADC_Init(&hnucleo_Adc) != HAL_OK) | |||||
{ | |||||
return HAL_ERROR; | |||||
} | |||||
} | |||||
return HAL_OK; | |||||
} | |||||
/** | |||||
* @brief Initializes ADC HAL. | |||||
* @retval None | |||||
*/ | |||||
static void ADCx_DeInit(void) | |||||
{ | |||||
hnucleo_Adc.Instance = NUCLEO_ADCx; | |||||
HAL_ADC_DeInit(&hnucleo_Adc); | |||||
ADCx_MspDeInit(&hnucleo_Adc); | |||||
} | |||||
/******************************* LINK JOYSTICK ********************************/ | |||||
/** | |||||
* @brief Configures joystick available on adafruit 1.8" TFT shield | |||||
* managed through ADC to detect motion. | |||||
* @retval Joystickstatus (0=> success, 1=> fail) | |||||
*/ | |||||
uint8_t BSP_JOY_Init(void) | |||||
{ | |||||
if (ADCx_Init() != HAL_OK) | |||||
{ | |||||
return (uint8_t) HAL_ERROR; | |||||
} | |||||
/* Select Channel 8 to be converted */ | |||||
sConfig.Channel = ADC_CHANNEL_8; | |||||
sConfig.SamplingTime = ADC_SAMPLETIME_16CYCLES; | |||||
sConfig.Rank = ADC_REGULAR_RANK_1; | |||||
/* Return Joystick initialization status */ | |||||
return (uint8_t)HAL_ADC_ConfigChannel(&hnucleo_Adc, &sConfig); | |||||
} | |||||
/** | |||||
* @brief DeInit joystick GPIOs. | |||||
* @note JOY DeInit does not disable the Mfx, just set the Mfx pins in Off mode | |||||
* @retval None. | |||||
*/ | |||||
void BSP_JOY_DeInit(void) | |||||
{ | |||||
ADCx_DeInit(); | |||||
} | |||||
/** | |||||
* @brief Returns the Joystick key pressed. | |||||
* @note To know which Joystick key is pressed we need to detect the voltage | |||||
* level on each key output | |||||
* - None : 3.3 V / 4095 | |||||
* - SEL : 1.055 V / 1308 | |||||
* - DOWN : 0.71 V / 88 | |||||
* - LEFT : 3.0 V / 3720 | |||||
* - RIGHT : 0.595 V / 737 | |||||
* - UP : 1.65 V / 2046 | |||||
* @retval JOYState_TypeDef: Code of the Joystick key pressed. | |||||
*/ | |||||
JOYState_TypeDef BSP_JOY_GetState(void) | |||||
{ | |||||
JOYState_TypeDef state = JOY_NONE; | |||||
uint16_t keyconvertedvalue = 0; | |||||
/* Start the conversion process */ | |||||
HAL_ADC_Start(&hnucleo_Adc); | |||||
/* Wait for the end of conversion */ | |||||
if (HAL_ADC_PollForConversion(&hnucleo_Adc, 10) != HAL_TIMEOUT) | |||||
{ | |||||
/* Get the converted value of regular channel */ | |||||
keyconvertedvalue = HAL_ADC_GetValue(&hnucleo_Adc); | |||||
} | |||||
if((keyconvertedvalue > 2010) && (keyconvertedvalue < 2090)) | |||||
{ | |||||
state = JOY_UP; | |||||
} | |||||
else if((keyconvertedvalue > 680) && (keyconvertedvalue < 780)) | |||||
{ | |||||
state = JOY_RIGHT; | |||||
} | |||||
else if((keyconvertedvalue > 1270) && (keyconvertedvalue < 1350)) | |||||
{ | |||||
state = JOY_SEL; | |||||
} | |||||
else if((keyconvertedvalue > 50) && (keyconvertedvalue < 130)) | |||||
{ | |||||
state = JOY_DOWN; | |||||
} | |||||
else if((keyconvertedvalue > 3680) && (keyconvertedvalue < 3760)) | |||||
{ | |||||
state = JOY_LEFT; | |||||
} | |||||
else | |||||
{ | |||||
state = JOY_NONE; | |||||
} | |||||
/* Return the code of the Joystick key pressed*/ | |||||
return state; | |||||
} | |||||
#endif /* HAL_ADC_MODULE_ENABLED */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file syscalls.c | |||||
* @author Auto-generated by STM32CubeIDE | |||||
* @brief STM32CubeIDE Minimal System calls file | |||||
* | |||||
* For more information about which c-functions | |||||
* need which of these lowlevel functions | |||||
* please consult the Newlib libc-manual | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Includes */ | |||||
#include <sys/stat.h> | |||||
#include <stdlib.h> | |||||
#include <errno.h> | |||||
#include <stdio.h> | |||||
#include <signal.h> | |||||
#include <time.h> | |||||
#include <sys/time.h> | |||||
#include <sys/times.h> | |||||
/* Variables */ | |||||
//#undef errno | |||||
extern int errno; | |||||
extern int __io_putchar(int ch) __attribute__((weak)); | |||||
extern int __io_getchar(void) __attribute__((weak)); | |||||
register char * stack_ptr asm("sp"); | |||||
char *__env[1] = { 0 }; | |||||
char **environ = __env; | |||||
/* Functions */ | |||||
void initialise_monitor_handles() | |||||
{ | |||||
} | |||||
int _getpid(void) | |||||
{ | |||||
return 1; | |||||
} | |||||
int _kill(int pid, int sig) | |||||
{ | |||||
errno = EINVAL; | |||||
return -1; | |||||
} | |||||
void _exit (int status) | |||||
{ | |||||
_kill(status, -1); | |||||
while (1) {} /* Make sure we hang here */ | |||||
} | |||||
__attribute__((weak)) int _read(int file, char *ptr, int len) | |||||
{ | |||||
int DataIdx; | |||||
for (DataIdx = 0; DataIdx < len; DataIdx++) | |||||
{ | |||||
*ptr++ = __io_getchar(); | |||||
} | |||||
return len; | |||||
} | |||||
__attribute__((weak)) int _write(int file, char *ptr, int len) | |||||
{ | |||||
int DataIdx; | |||||
for (DataIdx = 0; DataIdx < len; DataIdx++) | |||||
{ | |||||
__io_putchar(*ptr++); | |||||
} | |||||
return len; | |||||
} | |||||
int _close(int file) | |||||
{ | |||||
return -1; | |||||
} | |||||
int _fstat(int file, struct stat *st) | |||||
{ | |||||
st->st_mode = S_IFCHR; | |||||
return 0; | |||||
} | |||||
int _isatty(int file) | |||||
{ | |||||
return 1; | |||||
} | |||||
int _lseek(int file, int ptr, int dir) | |||||
{ | |||||
return 0; | |||||
} | |||||
int _open(char *path, int flags, ...) | |||||
{ | |||||
/* Pretend like we always fail */ | |||||
return -1; | |||||
} | |||||
int _wait(int *status) | |||||
{ | |||||
errno = ECHILD; | |||||
return -1; | |||||
} | |||||
int _unlink(char *name) | |||||
{ | |||||
errno = ENOENT; | |||||
return -1; | |||||
} | |||||
int _times(struct tms *buf) | |||||
{ | |||||
return -1; | |||||
} | |||||
int _stat(char *file, struct stat *st) | |||||
{ | |||||
st->st_mode = S_IFCHR; | |||||
return 0; | |||||
} | |||||
int _link(char *old, char *new) | |||||
{ | |||||
errno = EMLINK; | |||||
return -1; | |||||
} | |||||
int _fork(void) | |||||
{ | |||||
errno = EAGAIN; | |||||
return -1; | |||||
} | |||||
int _execve(char *name, char **argv, char **env) | |||||
{ | |||||
errno = ENOMEM; | |||||
return -1; | |||||
} |
/** | |||||
****************************************************************************** | |||||
* @file sysmem.c | |||||
* @author Generated by STM32CubeIDE | |||||
* @brief STM32CubeIDE System Memory calls file | |||||
* | |||||
* For more information about which C functions | |||||
* need which of these lowlevel functions | |||||
* please consult the newlib libc manual | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2020 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Includes */ | |||||
#include <errno.h> | |||||
#include <stdint.h> | |||||
/** | |||||
* Pointer to the current high watermark of the heap usage | |||||
*/ | |||||
static uint8_t *__sbrk_heap_end = NULL; | |||||
/** | |||||
* @brief _sbrk() allocates memory to the newlib heap and is used by malloc | |||||
* and others from the C library | |||||
* | |||||
* @verbatim | |||||
* ############################################################################ | |||||
* # .data # .bss # newlib heap # MSP stack # | |||||
* # # # # Reserved by _Min_Stack_Size # | |||||
* ############################################################################ | |||||
* ^-- RAM start ^-- _end _estack, RAM end --^ | |||||
* @endverbatim | |||||
* | |||||
* This implementation starts allocating at the '_end' linker symbol | |||||
* The '_Min_Stack_Size' linker symbol reserves a memory for the MSP stack | |||||
* The implementation considers '_estack' linker symbol to be RAM end | |||||
* NOTE: If the MSP stack, at any point during execution, grows larger than the | |||||
* reserved size, please increase the '_Min_Stack_Size'. | |||||
* | |||||
* @param incr Memory size | |||||
* @return Pointer to allocated memory | |||||
*/ | |||||
void *_sbrk(ptrdiff_t incr) | |||||
{ | |||||
extern uint8_t _end; /* Symbol defined in the linker script */ | |||||
extern uint8_t _estack; /* Symbol defined in the linker script */ | |||||
extern uint32_t _Min_Stack_Size; /* Symbol defined in the linker script */ | |||||
const uint32_t stack_limit = (uint32_t)&_estack - (uint32_t)&_Min_Stack_Size; | |||||
const uint8_t *max_heap = (uint8_t *)stack_limit; | |||||
uint8_t *prev_heap_end; | |||||
/* Initialize heap end at first call */ | |||||
if (NULL == __sbrk_heap_end) | |||||
{ | |||||
__sbrk_heap_end = &_end; | |||||
} | |||||
/* Protect heap from growing into the reserved MSP stack */ | |||||
if (__sbrk_heap_end + incr > max_heap) | |||||
{ | |||||
errno = ENOMEM; | |||||
return (void *)-1; | |||||
} | |||||
prev_heap_end = __sbrk_heap_end; | |||||
__sbrk_heap_end += incr; | |||||
return (void *)prev_heap_end; | |||||
} |
/** | |||||
****************************************************************************** | |||||
* @file system_stm32l1xx.c | |||||
* @author MCD Application Team | |||||
* @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. | |||||
* | |||||
* This file provides two functions and one global variable to be called from | |||||
* user application: | |||||
* - SystemInit(): This function is called at startup just after reset and | |||||
* before branch to main program. This call is made inside | |||||
* the "startup_stm32l1xx.s" file. | |||||
* | |||||
* - SystemCoreClock variable: Contains the core clock (HCLK), it can be used | |||||
* by the user application to setup the SysTick | |||||
* timer or configure other parameters. | |||||
* | |||||
* - SystemCoreClockUpdate(): Updates the variable SystemCoreClock and must | |||||
* be called whenever the core clock is changed | |||||
* during program execution. | |||||
* | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© Copyright (c) 2017 STMicroelectronics. | |||||
* All rights reserved.</center></h2> | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/** @addtogroup CMSIS | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup stm32l1xx_system | |||||
* @{ | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_Includes | |||||
* @{ | |||||
*/ | |||||
#include "stm32l1xx.h" | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_TypesDefinitions | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_Defines | |||||
* @{ | |||||
*/ | |||||
#if !defined (HSE_VALUE) | |||||
#define HSE_VALUE ((uint32_t)8000000U) /*!< Default value of the External oscillator in Hz. | |||||
This value can be provided and adapted by the user application. */ | |||||
#endif /* HSE_VALUE */ | |||||
#if !defined (HSI_VALUE) | |||||
#define HSI_VALUE ((uint32_t)8000000U) /*!< Default value of the Internal oscillator in Hz. | |||||
This value can be provided and adapted by the user application. */ | |||||
#endif /* HSI_VALUE */ | |||||
/*!< Uncomment the following line if you need to use external SRAM mounted | |||||
on STM32L152D_EVAL board as data memory */ | |||||
/* #define DATA_IN_ExtSRAM */ | |||||
/*!< Uncomment the following line if you need to relocate your vector Table in | |||||
Internal SRAM. */ | |||||
/* #define VECT_TAB_SRAM */ | |||||
#define VECT_TAB_OFFSET 0x00U /*!< Vector Table base offset field. | |||||
This value must be a multiple of 0x200. */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_Macros | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_Variables | |||||
* @{ | |||||
*/ | |||||
/* This variable is updated in three ways: | |||||
1) by calling CMSIS function SystemCoreClockUpdate() | |||||
2) by calling HAL API function HAL_RCC_GetHCLKFreq() | |||||
3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency | |||||
Note: If you use this function to configure the system clock; then there | |||||
is no need to call the 2 first functions listed above, since SystemCoreClock | |||||
variable is updated automatically. | |||||
*/ | |||||
uint32_t SystemCoreClock = 2097000U; | |||||
const uint8_t PLLMulTable[9] = {3U, 4U, 6U, 8U, 12U, 16U, 24U, 32U, 48U}; | |||||
const uint8_t AHBPrescTable[16] = {0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 1U, 2U, 3U, 4U, 6U, 7U, 8U, 9U}; | |||||
const uint8_t APBPrescTable[8] = {0U, 0U, 0U, 0U, 1U, 2U, 3U, 4U}; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_FunctionPrototypes | |||||
* @{ | |||||
*/ | |||||
#if defined (STM32L151xD) || defined (STM32L152xD) || defined (STM32L162xD) | |||||
#ifdef DATA_IN_ExtSRAM | |||||
static void SystemInit_ExtMemCtl(void); | |||||
#endif /* DATA_IN_ExtSRAM */ | |||||
#endif /* STM32L151xD || STM32L152xD || STM32L162xD */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @addtogroup STM32L1xx_System_Private_Functions | |||||
* @{ | |||||
*/ | |||||
/** | |||||
* @brief Setup the microcontroller system. | |||||
* Initialize the Embedded Flash Interface, the PLL and update the | |||||
* SystemCoreClock variable. | |||||
* @param None | |||||
* @retval None | |||||
*/ | |||||
void SystemInit (void) | |||||
{ | |||||
#ifdef DATA_IN_ExtSRAM | |||||
SystemInit_ExtMemCtl(); | |||||
#endif /* DATA_IN_ExtSRAM */ | |||||
#ifdef VECT_TAB_SRAM | |||||
SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ | |||||
#else | |||||
SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */ | |||||
#endif | |||||
} | |||||
/** | |||||
* @brief Update SystemCoreClock according to Clock Register Values | |||||
* The SystemCoreClock variable contains the core clock (HCLK), it can | |||||
* be used by the user application to setup the SysTick timer or configure | |||||
* other parameters. | |||||
* | |||||
* @note Each time the core clock (HCLK) changes, this function must be called | |||||
* to update SystemCoreClock variable value. Otherwise, any configuration | |||||
* based on this variable will be incorrect. | |||||
* | |||||
* @note - The system frequency computed by this function is not the real | |||||
* frequency in the chip. It is calculated based on the predefined | |||||
* constant and the selected clock source: | |||||
* | |||||
* - If SYSCLK source is MSI, SystemCoreClock will contain the MSI | |||||
* value as defined by the MSI range. | |||||
* | |||||
* - If SYSCLK source is HSI, SystemCoreClock will contain the HSI_VALUE(*) | |||||
* | |||||
* - If SYSCLK source is HSE, SystemCoreClock will contain the HSE_VALUE(**) | |||||
* | |||||
* - If SYSCLK source is PLL, SystemCoreClock will contain the HSE_VALUE(**) | |||||
* or HSI_VALUE(*) multiplied/divided by the PLL factors. | |||||
* | |||||
* (*) HSI_VALUE is a constant defined in stm32l1xx.h file (default value | |||||
* 16 MHz) but the real value may vary depending on the variations | |||||
* in voltage and temperature. | |||||
* | |||||
* (**) HSE_VALUE is a constant defined in stm32l1xx.h file (default value | |||||
* 8 MHz), user has to ensure that HSE_VALUE is same as the real | |||||
* frequency of the crystal used. Otherwise, this function may | |||||
* have wrong result. | |||||
* | |||||
* - The result of this function could be not correct when using fractional | |||||
* value for HSE crystal. | |||||
* @param None | |||||
* @retval None | |||||
*/ | |||||
void SystemCoreClockUpdate (void) | |||||
{ | |||||
uint32_t tmp = 0, pllmul = 0, plldiv = 0, pllsource = 0, msirange = 0; | |||||
/* Get SYSCLK source -------------------------------------------------------*/ | |||||
tmp = RCC->CFGR & RCC_CFGR_SWS; | |||||
switch (tmp) | |||||
{ | |||||
case 0x00: /* MSI used as system clock */ | |||||
msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; | |||||
SystemCoreClock = (32768 * (1 << (msirange + 1))); | |||||
break; | |||||
case 0x04: /* HSI used as system clock */ | |||||
SystemCoreClock = HSI_VALUE; | |||||
break; | |||||
case 0x08: /* HSE used as system clock */ | |||||
SystemCoreClock = HSE_VALUE; | |||||
break; | |||||
case 0x0C: /* PLL used as system clock */ | |||||
/* Get PLL clock source and multiplication factor ----------------------*/ | |||||
pllmul = RCC->CFGR & RCC_CFGR_PLLMUL; | |||||
plldiv = RCC->CFGR & RCC_CFGR_PLLDIV; | |||||
pllmul = PLLMulTable[(pllmul >> 18)]; | |||||
plldiv = (plldiv >> 22) + 1; | |||||
pllsource = RCC->CFGR & RCC_CFGR_PLLSRC; | |||||
if (pllsource == 0x00) | |||||
{ | |||||
/* HSI oscillator clock selected as PLL clock entry */ | |||||
SystemCoreClock = (((HSI_VALUE) * pllmul) / plldiv); | |||||
} | |||||
else | |||||
{ | |||||
/* HSE selected as PLL clock entry */ | |||||
SystemCoreClock = (((HSE_VALUE) * pllmul) / plldiv); | |||||
} | |||||
break; | |||||
default: /* MSI used as system clock */ | |||||
msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; | |||||
SystemCoreClock = (32768 * (1 << (msirange + 1))); | |||||
break; | |||||
} | |||||
/* Compute HCLK clock frequency --------------------------------------------*/ | |||||
/* Get HCLK prescaler */ | |||||
tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4)]; | |||||
/* HCLK clock frequency */ | |||||
SystemCoreClock >>= tmp; | |||||
} | |||||
#if defined (STM32L151xD) || defined (STM32L152xD) || defined (STM32L162xD) | |||||
#ifdef DATA_IN_ExtSRAM | |||||
/** | |||||
* @brief Setup the external memory controller. | |||||
* Called in SystemInit() function before jump to main. | |||||
* This function configures the external SRAM mounted on STM32L152D_EVAL board | |||||
* This SRAM will be used as program data memory (including heap and stack). | |||||
* @param None | |||||
* @retval None | |||||
*/ | |||||
void SystemInit_ExtMemCtl(void) | |||||
{ | |||||
__IO uint32_t tmpreg = 0; | |||||
/* Flash 1 wait state */ | |||||
FLASH->ACR |= FLASH_ACR_LATENCY; | |||||
/* Power enable */ | |||||
RCC->APB1ENR |= RCC_APB1ENR_PWREN; | |||||
/* Delay after an RCC peripheral clock enabling */ | |||||
tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_PWREN); | |||||
/* Select the Voltage Range 1 (1.8 V) */ | |||||
PWR->CR = PWR_CR_VOS_0; | |||||
/* Wait Until the Voltage Regulator is ready */ | |||||
while((PWR->CSR & PWR_CSR_VOSF) != RESET) | |||||
{ | |||||
} | |||||
/*-- GPIOs Configuration -----------------------------------------------------*/ | |||||
/* | |||||
+-------------------+--------------------+------------------+------------------+ | |||||
+ SRAM pins assignment + | |||||
+-------------------+--------------------+------------------+------------------+ | |||||
| PD0 <-> FSMC_D2 | PE0 <-> FSMC_NBL0 | PF0 <-> FSMC_A0 | PG0 <-> FSMC_A10 | | |||||
| PD1 <-> FSMC_D3 | PE1 <-> FSMC_NBL1 | PF1 <-> FSMC_A1 | PG1 <-> FSMC_A11 | | |||||
| PD4 <-> FSMC_NOE | PE7 <-> FSMC_D4 | PF2 <-> FSMC_A2 | PG2 <-> FSMC_A12 | | |||||
| PD5 <-> FSMC_NWE | PE8 <-> FSMC_D5 | PF3 <-> FSMC_A3 | PG3 <-> FSMC_A13 | | |||||
| PD8 <-> FSMC_D13 | PE9 <-> FSMC_D6 | PF4 <-> FSMC_A4 | PG4 <-> FSMC_A14 | | |||||
| PD9 <-> FSMC_D14 | PE10 <-> FSMC_D7 | PF5 <-> FSMC_A5 | PG5 <-> FSMC_A15 | | |||||
| PD10 <-> FSMC_D15 | PE11 <-> FSMC_D8 | PF12 <-> FSMC_A6 | PG10<-> FSMC_NE2 | | |||||
| PD11 <-> FSMC_A16 | PE12 <-> FSMC_D9 | PF13 <-> FSMC_A7 |------------------+ | |||||
| PD12 <-> FSMC_A17 | PE13 <-> FSMC_D10 | PF14 <-> FSMC_A8 | | |||||
| PD13 <-> FSMC_A18 | PE14 <-> FSMC_D11 | PF15 <-> FSMC_A9 | | |||||
| PD14 <-> FSMC_D0 | PE15 <-> FSMC_D12 |------------------+ | |||||
| PD15 <-> FSMC_D1 |--------------------+ | |||||
+-------------------+ | |||||
*/ | |||||
/* Enable GPIOD, GPIOE, GPIOF and GPIOG interface clock */ | |||||
RCC->AHBENR = 0x000080D8; | |||||
/* Delay after an RCC peripheral clock enabling */ | |||||
tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_GPIODEN); | |||||
/* Connect PDx pins to FSMC Alternate function */ | |||||
GPIOD->AFR[0] = 0x00CC00CC; | |||||
GPIOD->AFR[1] = 0xCCCCCCCC; | |||||
/* Configure PDx pins in Alternate function mode */ | |||||
GPIOD->MODER = 0xAAAA0A0A; | |||||
/* Configure PDx pins speed to 40 MHz */ | |||||
GPIOD->OSPEEDR = 0xFFFF0F0F; | |||||
/* Configure PDx pins Output type to push-pull */ | |||||
GPIOD->OTYPER = 0x00000000; | |||||
/* No pull-up, pull-down for PDx pins */ | |||||
GPIOD->PUPDR = 0x00000000; | |||||
/* Connect PEx pins to FSMC Alternate function */ | |||||
GPIOE->AFR[0] = 0xC00000CC; | |||||
GPIOE->AFR[1] = 0xCCCCCCCC; | |||||
/* Configure PEx pins in Alternate function mode */ | |||||
GPIOE->MODER = 0xAAAA800A; | |||||
/* Configure PEx pins speed to 40 MHz */ | |||||
GPIOE->OSPEEDR = 0xFFFFC00F; | |||||
/* Configure PEx pins Output type to push-pull */ | |||||
GPIOE->OTYPER = 0x00000000; | |||||
/* No pull-up, pull-down for PEx pins */ | |||||
GPIOE->PUPDR = 0x00000000; | |||||
/* Connect PFx pins to FSMC Alternate function */ | |||||
GPIOF->AFR[0] = 0x00CCCCCC; | |||||
GPIOF->AFR[1] = 0xCCCC0000; | |||||
/* Configure PFx pins in Alternate function mode */ | |||||
GPIOF->MODER = 0xAA000AAA; | |||||
/* Configure PFx pins speed to 40 MHz */ | |||||
GPIOF->OSPEEDR = 0xFF000FFF; | |||||
/* Configure PFx pins Output type to push-pull */ | |||||
GPIOF->OTYPER = 0x00000000; | |||||
/* No pull-up, pull-down for PFx pins */ | |||||
GPIOF->PUPDR = 0x00000000; | |||||
/* Connect PGx pins to FSMC Alternate function */ | |||||
GPIOG->AFR[0] = 0x00CCCCCC; | |||||
GPIOG->AFR[1] = 0x00000C00; | |||||
/* Configure PGx pins in Alternate function mode */ | |||||
GPIOG->MODER = 0x00200AAA; | |||||
/* Configure PGx pins speed to 40 MHz */ | |||||
GPIOG->OSPEEDR = 0x00300FFF; | |||||
/* Configure PGx pins Output type to push-pull */ | |||||
GPIOG->OTYPER = 0x00000000; | |||||
/* No pull-up, pull-down for PGx pins */ | |||||
GPIOG->PUPDR = 0x00000000; | |||||
/*-- FSMC Configuration ------------------------------------------------------*/ | |||||
/* Enable the FSMC interface clock */ | |||||
RCC->AHBENR = 0x400080D8; | |||||
/* Delay after an RCC peripheral clock enabling */ | |||||
tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN); | |||||
(void)(tmpreg); | |||||
/* Configure and enable Bank1_SRAM3 */ | |||||
FSMC_Bank1->BTCR[4] = 0x00001011; | |||||
FSMC_Bank1->BTCR[5] = 0x00000300; | |||||
FSMC_Bank1E->BWTR[4] = 0x0FFFFFFF; | |||||
/* | |||||
Bank1_SRAM3 is configured as follow: | |||||
p.FSMC_AddressSetupTime = 0; | |||||
p.FSMC_AddressHoldTime = 0; | |||||
p.FSMC_DataSetupTime = 3; | |||||
p.FSMC_BusTurnAroundDuration = 0; | |||||
p.FSMC_CLKDivision = 0; | |||||
p.FSMC_DataLatency = 0; | |||||
p.FSMC_AccessMode = FSMC_AccessMode_A; | |||||
FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM3; | |||||
FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_SRAM; | |||||
FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b; | |||||
FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_AsynchronousWait = FSMC_AsynchronousWait_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low; | |||||
FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState; | |||||
FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable; | |||||
FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable; | |||||
FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p; | |||||
FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p; | |||||
FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure); | |||||
FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM3, ENABLE); | |||||
*/ | |||||
} | |||||
#endif /* DATA_IN_ExtSRAM */ | |||||
#endif /* STM32L151xD || STM32L152xD || STM32L162xD */ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file x_nucleo_ihm05a1_stm32l0xx.c | |||||
* @author IPC Rennes | |||||
* @version V1.5.0 | |||||
* @date June 1st, 2018 | |||||
* @brief BSP driver for x-nucleo-ihm05a1 Nucleo extension board | |||||
* (based on L6208) | |||||
****************************************************************************** | |||||
* @attention | |||||
* | |||||
* <h2><center>© COPYRIGHT(c) 2018 STMicroelectronics</center></h2> | |||||
* | |||||
* Redistribution and use in source and binary forms, with or without modification, | |||||
* are permitted provided that the following conditions are met: | |||||
* 1. Redistributions of source code must retain the above copyright notice, | |||||
* this list of conditions and the following disclaimer. | |||||
* 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
* this list of conditions and the following disclaimer in the documentation | |||||
* and/or other materials provided with the distribution. | |||||
* 3. Neither the name of STMicroelectronics nor the names of its contributors | |||||
* may be used to endorse or promote products derived from this software | |||||
* without specific prior written permission. | |||||
* | |||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | |||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | |||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
/* Includes ------------------------------------------------------------------*/ | |||||
#include "x_nucleo_ihm05a1_stm32l1xx.h" | |||||
#include "motor.h" | |||||
/** @addtogroup BSP | |||||
* @{ | |||||
*/ | |||||
/** @defgroup X_NUCLEO_IHM05A1_STM32L0XX NUCLEO IHM05A1 STM32L0XX | |||||
* @{ | |||||
*/ | |||||
/* Private constants ---------------------------------------------------------*/ | |||||
/** @defgroup IHM05A1_Private_Constants IHM05A1 Private Constants | |||||
* @{ | |||||
*/ | |||||
/// Tick frequency (Hz) | |||||
#define TIMER_TICK_FREQUENCY (10000) | |||||
/// Tick Timer Prescaler | |||||
#define TIMER_TICK_PRESCALER (64) | |||||
/// MCU wait time after power bridges are enabled | |||||
#define BRIDGE_TURN_ON_DELAY (10) | |||||
/** | |||||
* @} | |||||
*/ | |||||
/* Private variables ---------------------------------------------------------*/ | |||||
/** @defgroup IHM05A1_Board_Private_Variables IHM05A1 Board Private Variables | |||||
* @{ | |||||
*/ | |||||
/// L6208 timer handler for VREFA PWM | |||||
TIM_HandleTypeDef hTimVrefaPwm; | |||||
/// L6208 timer handler for VREFB PWM | |||||
TIM_HandleTypeDef hTimVrefbPwm; | |||||
/// L6208 timer handler for the tick | |||||
TIM_HandleTypeDef hTimTick; | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup IHM05A1_Board_Private_Function_Prototypes IHM05A1 Board Private Function Prototypes | |||||
* @{ | |||||
*/ | |||||
void L6208_Board_CLOCK_PIN_Reset(void); //Reset the clock pin | |||||
void L6208_Board_CLOCK_PIN_Set(void); //Set the clock pin | |||||
void L6208_Board_CONTROL_PIN_Reset(void); //Reset the control pin | |||||
void L6208_Board_CONTROL_PIN_Set(void); //Set the control pin | |||||
void L6208_Board_Delay(uint32_t delay); //Delay of the requested number of milliseconds | |||||
void L6208_Board_DIR_PIN_Reset(void); //Reset the dir pin | |||||
void L6208_Board_DIR_PIN_Set(void); //Set the dir pin | |||||
void L6208_Board_Disable(void); //Disable the power bridges (leave the output bridges HiZ) | |||||
void L6208_Board_DisableIrq(void); //Disable Irq | |||||
void L6208_Board_Enable(void); //Enable the power bridges (leave the output bridges HiZ) | |||||
void L6208_Board_EnableIrq(void); //Disable Irq | |||||
uint32_t L6208_Board_FLAG_PIN_GetState(void); //Returns the EN pin state | |||||
void L6208_Board_GpioInit(void); //Initialise GPIOs used for L6208 | |||||
void L6208_Board_HALF_FULL_PIN_Reset(void); //Reset the half full pin | |||||
void L6208_Board_HALF_FULL_PIN_Set(void); //Set the half full pin | |||||
bool L6208_Board_VrefPwmInit(uint8_t bridgeId, uint32_t pwmFreq); //Initialize the VREFA or VREFB PWM | |||||
void L6208_Board_ReleaseReset(void); //Release the reset pin | |||||
void L6208_Board_Reset(void); //Reset the reset pin | |||||
uint32_t L6208_Board_TickGetFreq(void); //Get the tick frequency in Hz | |||||
void L6208_Board_TickInit(void); //Initialize the tick | |||||
void L6208_Board_TickStart(void); //Start the timer for the tick by using the set tick frequency | |||||
void L6208_Board_TickStop(void); //Stop the timer for the tick | |||||
bool L6208_Board_VrefPwmFreqCheck(uint32_t newFreq); //Check that the new VREFA and VREFB PWM frequency is nor too low nor too high | |||||
uint32_t L6208_Board_VrefPwmGetPeriod(void); //Get current VREF PWM period duration | |||||
bool L6208_Board_VrefPwmSetDutyCycle(uint8_t bridgeId,\ | |||||
uint16_t value,\ | |||||
bool valueIsPwmDutyCycle); //Set duty cycle of VREFA or VREFB PWM | |||||
bool L6208_Board_VrefPwmStart(uint8_t bridgeId,\ | |||||
uint32_t pwmFreq); //Start the timer for the VREFA or VREFB PWM | |||||
bool L6208_Board_VrefPwmStop(uint8_t bridgeId); //Stop the timer for the VREFA or VREFB PWM | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** @defgroup IHM05A1_Board_Private_Functions IHM05A1 Board Private Functions | |||||
* @{ | |||||
*/ | |||||
/******************************************************//** | |||||
* @brief This function provides an accurate delay in milliseconds | |||||
* @param[in] delay time length in milliseconds | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_Delay(uint32_t delay) | |||||
{ | |||||
HAL_Delay(delay); | |||||
} | |||||
/******************************************************//** | |||||
* @brief This function disable the interruptions | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_DisableIrq(void) | |||||
{ | |||||
//__disable_irq(); | |||||
} | |||||
/******************************************************//** | |||||
* @brief This function enable the interruptions | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_EnableIrq(void) | |||||
{ | |||||
//__enable_irq(); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Start the L6208 library | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_GpioInit(void) | |||||
{ | |||||
GPIO_InitTypeDef GPIO_InitStruct; | |||||
/* GPIO Ports Clock Enable */ | |||||
__GPIOC_CLK_ENABLE(); | |||||
__GPIOA_CLK_ENABLE(); | |||||
__GPIOB_CLK_ENABLE(); | |||||
/* Configure L6208 - EN pin -------------------------------*/ | |||||
/* When this pin is set low, it is configured just before as */ | |||||
/* GPIO_MODE_OUTPUT_PP with GPIO_NOPULL */ | |||||
/* When this pin is set high, it is just after configured for OCD and OVT */ | |||||
/* as GPIO_MODE_IT_FALLING with GPIO_PULLUP */ | |||||
L6208_Board_Disable(); | |||||
/* Set Priority of External Line Interrupt used for the OCD OVT interrupt*/ | |||||
HAL_NVIC_SetPriority(FLAG_EXTI_LINE_IRQn, BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PRIORITY, 0); | |||||
/* Enable the External Line Interrupt used for the OCD OVT interrupt*/ | |||||
HAL_NVIC_EnableIRQ(FLAG_EXTI_LINE_IRQn); | |||||
/* Configure L6208 - CW/CCW pin ----------------------------*/ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_DIR_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_DIR_PORT, &GPIO_InitStruct); | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_DIR_PORT, BSP_MOTOR_CONTROL_BOARD_DIR_PIN, GPIO_PIN_RESET); | |||||
/* Configure L6208 - HALF/FULL pin -------------------------------------------*/ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PORT, &GPIO_InitStruct); | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PORT, BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PIN, GPIO_PIN_RESET); | |||||
/* Configure L6208 - CONTROL pin -------------------------------------------*/ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_CONTROL_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_CONTROL_PORT, &GPIO_InitStruct); | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CONTROL_PORT, BSP_MOTOR_CONTROL_BOARD_CONTROL_PIN, GPIO_PIN_RESET); | |||||
/* Configure L6208 - CLOCK pin -------------------------------------------*/ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_CLOCK_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_CLOCK_PORT, &GPIO_InitStruct); | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CLOCK_PORT, BSP_MOTOR_CONTROL_BOARD_CLOCK_PIN, GPIO_PIN_RESET); | |||||
/* Configure L6208 - STBY/RESET pin -------------------------------------*/ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_RESET_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_RESET_PORT, &GPIO_InitStruct); | |||||
L6208_Board_ReleaseReset(); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Initialize the tick | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_TickInit(void) | |||||
{ | |||||
static TIM_OC_InitTypeDef sConfigOC; | |||||
static TIM_MasterConfigTypeDef sMasterConfig; | |||||
static TIM_ClockConfigTypeDef sClockSourceConfig; | |||||
hTimTick.Instance = BSP_MOTOR_CONTROL_BOARD_TIMER_TICK; | |||||
hTimTick.Init.Period = (HAL_RCC_GetSysClockFreq() / (TIMER_TICK_PRESCALER * TIMER_TICK_FREQUENCY)) - 1; | |||||
hTimTick.Init.Prescaler = TIMER_TICK_PRESCALER -1; | |||||
hTimTick.Init.ClockDivision = 0; | |||||
hTimTick.Init.CounterMode = TIM_COUNTERMODE_UP; | |||||
HAL_TIM_PWM_Init(&hTimTick); | |||||
sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; | |||||
HAL_TIM_ConfigClockSource(&hTimTick, &sClockSourceConfig); | |||||
sConfigOC.OCMode = TIM_OCMODE_PWM1; | |||||
sConfigOC.Pulse = 0; | |||||
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; | |||||
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; | |||||
HAL_TIM_PWM_ConfigChannel(&hTimTick, &sConfigOC, BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_TICK); | |||||
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; | |||||
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; | |||||
HAL_TIMEx_MasterConfigSynchronization(&hTimTick, &sMasterConfig); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Start the timer for the tick by using the set tick frequency | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_TickStart(void) | |||||
{ | |||||
uint32_t period = (HAL_RCC_GetSysClockFreq() / (TIMER_TICK_PRESCALER * TIMER_TICK_FREQUENCY)) - 1; | |||||
__HAL_TIM_SetAutoreload(&hTimTick, period); | |||||
__HAL_TIM_SetCompare(&hTimTick, BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_TICK, period >> 1); | |||||
HAL_TIM_PWM_Start_IT(&hTimTick, BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_TICK); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Stop the timer for the tick | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_TickStop(void) | |||||
{ | |||||
HAL_TIM_PWM_Stop_IT(&hTimTick, BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_TICK); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Get the tick timer frequency in Hz | |||||
* @retval The tick timer frequency in Hz | |||||
**********************************************************/ | |||||
uint32_t L6208_Board_TickGetFreq(void) | |||||
{ | |||||
return TIMER_TICK_FREQUENCY; | |||||
} | |||||
/******************************************************//** | |||||
* @brief Check that the frequency for the VREFA and VREFB PWM | |||||
* is high enough to prevent overflow in the computation of the | |||||
* micro stepping waveform sample for a maximum torque. | |||||
* @param[in] newFreq frequency in Hz of the PWM used to generate | |||||
* the reference voltage for the bridge | |||||
* @retval FALSE if frequency is too low or too high, else TRUE | |||||
**********************************************************/ | |||||
bool L6208_Board_VrefPwmFreqCheck(uint32_t newFreq) | |||||
{ | |||||
if (newFreq<=(HAL_RCC_GetSysClockFreq()>>16)) | |||||
{ | |||||
return FALSE; | |||||
} | |||||
else | |||||
{ | |||||
return TRUE; | |||||
} | |||||
} | |||||
/******************************************************//** | |||||
* @brief Initialize the VREFA or VREFB PWM | |||||
* @param[in] bridgeId | |||||
* 0 for BRIDGE_A | |||||
* 1 for BRIDGE_B | |||||
* @param[in] pwmFreq frequency in Hz of the PWM used to generate the reference | |||||
* voltage for the bridge | |||||
* @retval FALSE if wrong timer handle is used, else TRUE | |||||
* @note None | |||||
**********************************************************/ | |||||
bool L6208_Board_VrefPwmInit(uint8_t bridgeId, uint32_t pwmFreq) | |||||
{ | |||||
static TIM_OC_InitTypeDef sConfigOC; | |||||
static TIM_MasterConfigTypeDef sMasterConfig; | |||||
static TIM_ClockConfigTypeDef sClockSourceConfig; | |||||
TIM_HandleTypeDef *pHTim = NULL; | |||||
uint32_t channel; | |||||
if (bridgeId == 0) | |||||
{ | |||||
pHTim = &hTimVrefaPwm; | |||||
pHTim->Instance = BSP_MOTOR_CONTROL_BOARD_TIMER_VREFA_PWM; | |||||
pHTim->Init.Prescaler = 0; | |||||
pHTim->Init.Period = (HAL_RCC_GetSysClockFreq() / pwmFreq) - 1; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFA_PWM; | |||||
} | |||||
else if (bridgeId == 1) | |||||
{ | |||||
pHTim = &hTimVrefbPwm; | |||||
pHTim->Instance = BSP_MOTOR_CONTROL_BOARD_TIMER_VREFB_PWM; | |||||
pHTim->Init.Prescaler = 0; | |||||
pHTim->Init.Period = (HAL_RCC_GetSysClockFreq() / pwmFreq) - 1; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFB_PWM; | |||||
} | |||||
else | |||||
{ | |||||
return FALSE; | |||||
} | |||||
pHTim->Init.CounterMode = TIM_COUNTERMODE_UP; | |||||
pHTim->Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; | |||||
HAL_TIM_PWM_Init(pHTim); | |||||
sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; | |||||
HAL_TIM_ConfigClockSource(pHTim, &sClockSourceConfig); | |||||
sConfigOC.OCMode = TIM_OCMODE_PWM1; | |||||
sConfigOC.Pulse = 0; | |||||
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; | |||||
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; | |||||
HAL_TIM_PWM_ConfigChannel(pHTim, &sConfigOC, channel); | |||||
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; | |||||
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; | |||||
HAL_TIMEx_MasterConfigSynchronization(pHTim, &sMasterConfig); | |||||
return TRUE; | |||||
} | |||||
/******************************************************//** | |||||
* @brief Set duty cycle of VREFA or VREFB PWM | |||||
* @param[in] bridgeId | |||||
* 0 for BRIDGE_A | |||||
* 1 for BRIDGE_B | |||||
* @param[in] value pulse length or PWM duty cycle: 0 - 100 % | |||||
* @param[in] valueIsPwmDutyCycle must be TRUE if value is a PWM duty cycle | |||||
* @retval FALSE if wrong timer handle is used, else TRUE | |||||
**********************************************************/ | |||||
bool L6208_Board_VrefPwmSetDutyCycle(uint8_t bridgeId, uint16_t value, bool valueIsPwmDutyCycle) | |||||
{ | |||||
TIM_HandleTypeDef *pHTim = NULL; | |||||
uint32_t channel; | |||||
if (bridgeId == 0) | |||||
{ | |||||
pHTim = &hTimVrefaPwm; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFA_PWM; | |||||
} | |||||
else if (bridgeId == 1) | |||||
{ | |||||
pHTim = &hTimVrefbPwm; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFB_PWM; | |||||
} | |||||
else | |||||
{ | |||||
return 0; | |||||
} | |||||
// PWM or OC Channel pulse length | |||||
if(valueIsPwmDutyCycle) | |||||
{ | |||||
if (value > 100) value = 100; | |||||
value = (uint16_t)(((uint32_t)pHTim->Init.Period * (uint32_t)value) / 100); | |||||
} | |||||
__HAL_TIM_SetCompare(pHTim, channel, value); | |||||
return 1; | |||||
} | |||||
/******************************************************//** | |||||
* @brief Start the timer for the VREFA or VREFB PWM | |||||
* @param[in] bridgeId | |||||
* 0 for BRIDGE_A | |||||
* 1 for BRIDGE_B | |||||
* @param[in] pwmFreq frequency in Hz of the PWM used to generate the reference | |||||
* voltage for the bridge | |||||
* @retval FALSE if wrong timer handle is used, else TRUE | |||||
**********************************************************/ | |||||
bool L6208_Board_VrefPwmStart(uint8_t bridgeId, uint32_t pwmFreq) | |||||
{ | |||||
TIM_HandleTypeDef *pHTim = NULL; | |||||
uint32_t period; | |||||
uint32_t channel; | |||||
if (bridgeId == 0) | |||||
{ | |||||
pHTim = &hTimVrefaPwm; | |||||
period = (HAL_RCC_GetSysClockFreq() / pwmFreq) - 1; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFA_PWM; | |||||
} | |||||
else if (bridgeId == 1) | |||||
{ | |||||
pHTim = &hTimVrefbPwm; | |||||
period = (HAL_RCC_GetSysClockFreq() / pwmFreq) - 1; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFB_PWM; | |||||
} | |||||
else | |||||
{ | |||||
return FALSE; | |||||
} | |||||
__HAL_TIM_SetAutoreload(pHTim, period); | |||||
HAL_TIM_PWM_Start(pHTim, channel); | |||||
return TRUE; | |||||
} | |||||
/******************************************************//** | |||||
* @brief Stop the VREFA or VREFB PWM | |||||
* @param[in] bridgeId | |||||
* 0 for BRIDGE_A | |||||
* 1 for BRIDGE_B | |||||
* @retval None | |||||
**********************************************************/ | |||||
bool L6208_Board_VrefPwmStop(uint8_t bridgeId) | |||||
{ | |||||
TIM_HandleTypeDef *pHTim = NULL; | |||||
uint32_t channel; | |||||
if (bridgeId == 0) | |||||
{ | |||||
pHTim = &hTimVrefaPwm; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFA_PWM; | |||||
} | |||||
else if (bridgeId == 1) | |||||
{ | |||||
pHTim = &hTimVrefbPwm; | |||||
channel = BSP_MOTOR_CONTROL_BOARD_CHAN_TIMER_VREFB_PWM; | |||||
} | |||||
else | |||||
{ | |||||
return FALSE; | |||||
} | |||||
HAL_TIM_PWM_Stop(pHTim, channel); | |||||
return TRUE; | |||||
} | |||||
/******************************************************//** | |||||
* @brief Get current VREF PWM period duration | |||||
* @retval the current VREF PWM period duration | |||||
* @note hTimVrefbPwm.Init.Period is the same as hTimVrefaPwm.Init.Period | |||||
**********************************************************/ | |||||
uint32_t L6208_Board_VrefPwmGetPeriod(void) | |||||
{ | |||||
return ((uint32_t)hTimVrefaPwm.Init.Period); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Releases the L6208 reset (pin set to High) of all devices | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_ReleaseReset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_RESET_PORT, BSP_MOTOR_CONTROL_BOARD_RESET_PIN, GPIO_PIN_SET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Resets the L6208 (reset pin set to low) of all devices | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_Reset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_RESET_PORT, BSP_MOTOR_CONTROL_BOARD_RESET_PIN, GPIO_PIN_RESET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Set the L6208 CONTROL pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_CONTROL_PIN_Set(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CONTROL_PORT, BSP_MOTOR_CONTROL_BOARD_CONTROL_PIN, GPIO_PIN_SET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Reset the L6208 CONTROL pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_CONTROL_PIN_Reset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CONTROL_PORT, BSP_MOTOR_CONTROL_BOARD_CONTROL_PIN, GPIO_PIN_RESET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Set the L6208 CLOCK pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_CLOCK_PIN_Set(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CLOCK_PORT, BSP_MOTOR_CONTROL_BOARD_CLOCK_PIN, GPIO_PIN_SET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Reset the L6208 CLOCK pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_CLOCK_PIN_Reset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_CLOCK_PORT, BSP_MOTOR_CONTROL_BOARD_CLOCK_PIN, GPIO_PIN_RESET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Set the L6208 HALF_FULL pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_HALF_FULL_PIN_Set(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PORT, BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PIN, GPIO_PIN_SET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Reset the L6208 HALF_FULL pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_HALF_FULL_PIN_Reset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PORT, BSP_MOTOR_CONTROL_BOARD_HALF_FULL_PIN, GPIO_PIN_RESET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Set the L6208 DIR pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_DIR_PIN_Set(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_DIR_PORT, BSP_MOTOR_CONTROL_BOARD_DIR_PIN, GPIO_PIN_SET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Reset the L6208 DIR pin | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_DIR_PIN_Reset(void) | |||||
{ | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_DIR_PORT, BSP_MOTOR_CONTROL_BOARD_DIR_PIN, GPIO_PIN_RESET); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Returns the FLAG pin state. | |||||
* @retval The FLAG pin value. | |||||
**********************************************************/ | |||||
uint32_t L6208_Board_FLAG_PIN_GetState(void) | |||||
{ | |||||
return HAL_GPIO_ReadPin(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT, BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Disable the power bridges (leave the output bridges HiZ) | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_Disable(void) | |||||
{ | |||||
GPIO_InitTypeDef GPIO_InitStruct; | |||||
/* Configure the GPIO connected to EN pin as an output */ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; | |||||
GPIO_InitStruct.Pull = GPIO_NOPULL; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT, &GPIO_InitStruct); | |||||
__disable_irq(); | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT, BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN, GPIO_PIN_RESET); | |||||
__HAL_GPIO_EXTI_CLEAR_IT(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN); | |||||
__enable_irq(); | |||||
} | |||||
/******************************************************//** | |||||
* @brief Enable the power bridges (leave the output bridges HiZ) | |||||
* @retval None | |||||
**********************************************************/ | |||||
void L6208_Board_Enable(void) | |||||
{ | |||||
GPIO_InitTypeDef GPIO_InitStruct; | |||||
HAL_GPIO_WritePin(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT, BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN, GPIO_PIN_SET); | |||||
HAL_Delay(BRIDGE_TURN_ON_DELAY); | |||||
/* Configure the GPIO connected to EN pin to take interrupt */ | |||||
GPIO_InitStruct.Pin = BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN; | |||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; | |||||
GPIO_InitStruct.Pull = GPIO_PULLUP; | |||||
GPIO_InitStruct.Speed = GPIO_SPEED_MEDIUM; | |||||
HAL_GPIO_Init(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PORT, &GPIO_InitStruct); | |||||
__HAL_GPIO_EXTI_CLEAR_IT(BSP_MOTOR_CONTROL_BOARD_EN_AND_FLAG_PIN); | |||||
HAL_NVIC_ClearPendingIRQ(FLAG_EXTI_LINE_IRQn); | |||||
HAL_NVIC_EnableIRQ(FLAG_EXTI_LINE_IRQn); | |||||
} | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/** | |||||
* @} | |||||
*/ | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
/** | |||||
****************************************************************************** | |||||
* @file startup_stm32l152xe.s | |||||
* @author MCD Application Team | |||||
* @brief STM32L152XE Devices vector table for GCC toolchain. | |||||
* This module performs: | |||||
* - Set the initial SP | |||||
* - Set the initial PC == Reset_Handler, | |||||
* - Set the vector table entries with the exceptions ISR address | |||||
* - Configure the clock system | |||||
* - Branches to main in the C library (which eventually | |||||
* calls main()). | |||||
* After Reset the Cortex-M3 processor is in Thread mode, | |||||
* priority is Privileged, and the Stack is set to Main. | |||||
****************************************************************************** | |||||
* | |||||
* @attention | |||||
* | |||||
* Copyright (c) 2017 STMicroelectronics. All rights reserved. | |||||
* | |||||
* This software component is licensed by ST under BSD 3-Clause license, | |||||
* the "License"; You may not use this file except in compliance with the | |||||
* License. You may obtain a copy of the License at: | |||||
* opensource.org/licenses/BSD-3-Clause | |||||
* | |||||
****************************************************************************** | |||||
*/ | |||||
.syntax unified | |||||
.cpu cortex-m3 | |||||
.fpu softvfp | |||||
.thumb | |||||
.global g_pfnVectors | |||||
.global Default_Handler | |||||
/* start address for the initialization values of the .data section. | |||||
defined in linker script */ | |||||
.word _sidata | |||||
/* start address for the .data section. defined in linker script */ | |||||
.word _sdata | |||||
/* end address for the .data section. defined in linker script */ | |||||
.word _edata | |||||
/* start address for the .bss section. defined in linker script */ | |||||
.word _sbss | |||||
/* end address for the .bss section. defined in linker script */ | |||||
.word _ebss | |||||
.equ BootRAM, 0xF108F85F | |||||
/** | |||||
* @brief This is the code that gets called when the processor first | |||||
* starts execution following a reset event. Only the absolutely | |||||
* necessary set is performed, after which the application | |||||
* supplied main() routine is called. | |||||
* @param None | |||||
* @retval : None | |||||
*/ | |||||
.section .text.Reset_Handler | |||||
.weak Reset_Handler | |||||
.type Reset_Handler, %function | |||||
Reset_Handler: | |||||
/* Copy the data segment initializers from flash to SRAM */ | |||||
movs r1, #0 | |||||
b LoopCopyDataInit | |||||
CopyDataInit: | |||||
ldr r3, =_sidata | |||||
ldr r3, [r3, r1] | |||||
str r3, [r0, r1] | |||||
adds r1, r1, #4 | |||||
LoopCopyDataInit: | |||||
ldr r0, =_sdata | |||||
ldr r3, =_edata | |||||
adds r2, r0, r1 | |||||
cmp r2, r3 | |||||
bcc CopyDataInit | |||||
ldr r2, =_sbss | |||||
b LoopFillZerobss | |||||
/* Zero fill the bss segment. */ | |||||
FillZerobss: | |||||
movs r3, #0 | |||||
str r3, [r2], #4 | |||||
LoopFillZerobss: | |||||
ldr r3, = _ebss | |||||
cmp r2, r3 | |||||
bcc FillZerobss | |||||
/* Call the clock system intitialization function.*/ | |||||
bl SystemInit | |||||
/* Call static constructors */ | |||||
bl __libc_init_array | |||||
/* Call the application's entry point.*/ | |||||
bl main | |||||
bx lr | |||||
.size Reset_Handler, .-Reset_Handler | |||||
/** | |||||
* @brief This is the code that gets called when the processor receives an | |||||
* unexpected interrupt. This simply enters an infinite loop, preserving | |||||
* the system state for examination by a debugger. | |||||
* | |||||
* @param None | |||||
* @retval : None | |||||
*/ | |||||
.section .text.Default_Handler,"ax",%progbits | |||||
Default_Handler: | |||||
Infinite_Loop: | |||||
b Infinite_Loop | |||||
.size Default_Handler, .-Default_Handler | |||||
/****************************************************************************** | |||||
* | |||||
* The minimal vector table for a Cortex M3. Note that the proper constructs | |||||
* must be placed on this to ensure that it ends up at physical address | |||||
* 0x0000.0000. | |||||
* | |||||
******************************************************************************/ | |||||
.section .isr_vector,"a",%progbits | |||||
.type g_pfnVectors, %object | |||||
.size g_pfnVectors, .-g_pfnVectors | |||||
g_pfnVectors: | |||||
.word _estack | |||||
.word Reset_Handler | |||||
.word NMI_Handler | |||||
.word HardFault_Handler | |||||
.word MemManage_Handler | |||||
.word BusFault_Handler | |||||
.word UsageFault_Handler | |||||
.word 0 | |||||
.word 0 | |||||
.word 0 | |||||
.word 0 | |||||
.word SVC_Handler | |||||
.word DebugMon_Handler | |||||
.word 0 | |||||
.word PendSV_Handler | |||||
.word SysTick_Handler | |||||
.word WWDG_IRQHandler | |||||
.word PVD_IRQHandler | |||||
.word TAMPER_STAMP_IRQHandler | |||||
.word RTC_WKUP_IRQHandler | |||||
.word FLASH_IRQHandler | |||||
.word RCC_IRQHandler | |||||
.word EXTI0_IRQHandler | |||||
.word EXTI1_IRQHandler | |||||
.word EXTI2_IRQHandler | |||||
.word EXTI3_IRQHandler | |||||
.word EXTI4_IRQHandler | |||||
.word DMA1_Channel1_IRQHandler | |||||
.word DMA1_Channel2_IRQHandler | |||||
.word DMA1_Channel3_IRQHandler | |||||
.word DMA1_Channel4_IRQHandler | |||||
.word DMA1_Channel5_IRQHandler | |||||
.word DMA1_Channel6_IRQHandler | |||||
.word DMA1_Channel7_IRQHandler | |||||
.word ADC1_IRQHandler | |||||
.word USB_HP_IRQHandler | |||||
.word USB_LP_IRQHandler | |||||
.word DAC_IRQHandler | |||||
.word COMP_IRQHandler | |||||
.word EXTI9_5_IRQHandler | |||||
.word LCD_IRQHandler | |||||
.word TIM9_IRQHandler | |||||
.word TIM10_IRQHandler | |||||
.word TIM11_IRQHandler | |||||
.word TIM2_IRQHandler | |||||
.word TIM3_IRQHandler | |||||
.word TIM4_IRQHandler | |||||
.word I2C1_EV_IRQHandler | |||||
.word I2C1_ER_IRQHandler | |||||
.word I2C2_EV_IRQHandler | |||||
.word I2C2_ER_IRQHandler | |||||
.word SPI1_IRQHandler | |||||
.word SPI2_IRQHandler | |||||
.word USART1_IRQHandler | |||||
.word USART2_IRQHandler | |||||
.word USART3_IRQHandler | |||||
.word EXTI15_10_IRQHandler | |||||
.word RTC_Alarm_IRQHandler | |||||
.word USB_FS_WKUP_IRQHandler | |||||
.word TIM6_IRQHandler | |||||
.word TIM7_IRQHandler | |||||
.word 0 | |||||
.word TIM5_IRQHandler | |||||
.word SPI3_IRQHandler | |||||
.word UART4_IRQHandler | |||||
.word UART5_IRQHandler | |||||
.word DMA2_Channel1_IRQHandler | |||||
.word DMA2_Channel2_IRQHandler | |||||
.word DMA2_Channel3_IRQHandler | |||||
.word DMA2_Channel4_IRQHandler | |||||
.word DMA2_Channel5_IRQHandler | |||||
.word 0 | |||||
.word COMP_ACQ_IRQHandler | |||||
.word 0 | |||||
.word 0 | |||||
.word 0 | |||||
.word 0 | |||||
.word 0 | |||||
.word BootRAM /* @0x108. This is for boot in RAM mode for | |||||
STM32L152XE devices. */ | |||||
/******************************************************************************* | |||||
* | |||||
* Provide weak aliases for each Exception handler to the Default_Handler. | |||||
* As they are weak aliases, any function with the same name will override | |||||
* this definition. | |||||
* | |||||
*******************************************************************************/ | |||||
.weak NMI_Handler | |||||
.thumb_set NMI_Handler,Default_Handler | |||||
.weak HardFault_Handler | |||||
.thumb_set HardFault_Handler,Default_Handler | |||||
.weak MemManage_Handler | |||||
.thumb_set MemManage_Handler,Default_Handler | |||||
.weak BusFault_Handler | |||||
.thumb_set BusFault_Handler,Default_Handler | |||||
.weak UsageFault_Handler | |||||
.thumb_set UsageFault_Handler,Default_Handler | |||||
.weak SVC_Handler | |||||
.thumb_set SVC_Handler,Default_Handler | |||||
.weak DebugMon_Handler | |||||
.thumb_set DebugMon_Handler,Default_Handler | |||||
.weak PendSV_Handler | |||||
.thumb_set PendSV_Handler,Default_Handler | |||||
.weak SysTick_Handler | |||||
.thumb_set SysTick_Handler,Default_Handler | |||||
.weak WWDG_IRQHandler | |||||
.thumb_set WWDG_IRQHandler,Default_Handler | |||||
.weak PVD_IRQHandler | |||||
.thumb_set PVD_IRQHandler,Default_Handler | |||||
.weak TAMPER_STAMP_IRQHandler | |||||
.thumb_set TAMPER_STAMP_IRQHandler,Default_Handler | |||||
.weak RTC_WKUP_IRQHandler | |||||
.thumb_set RTC_WKUP_IRQHandler,Default_Handler | |||||
.weak FLASH_IRQHandler | |||||
.thumb_set FLASH_IRQHandler,Default_Handler | |||||
.weak RCC_IRQHandler | |||||
.thumb_set RCC_IRQHandler,Default_Handler | |||||
.weak EXTI0_IRQHandler | |||||
.thumb_set EXTI0_IRQHandler,Default_Handler | |||||
.weak EXTI1_IRQHandler | |||||
.thumb_set EXTI1_IRQHandler,Default_Handler | |||||
.weak EXTI2_IRQHandler | |||||
.thumb_set EXTI2_IRQHandler,Default_Handler | |||||
.weak EXTI3_IRQHandler | |||||
.thumb_set EXTI3_IRQHandler,Default_Handler | |||||
.weak EXTI4_IRQHandler | |||||
.thumb_set EXTI4_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel1_IRQHandler | |||||
.thumb_set DMA1_Channel1_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel2_IRQHandler | |||||
.thumb_set DMA1_Channel2_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel3_IRQHandler | |||||
.thumb_set DMA1_Channel3_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel4_IRQHandler | |||||
.thumb_set DMA1_Channel4_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel5_IRQHandler | |||||
.thumb_set DMA1_Channel5_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel6_IRQHandler | |||||
.thumb_set DMA1_Channel6_IRQHandler,Default_Handler | |||||
.weak DMA1_Channel7_IRQHandler | |||||
.thumb_set DMA1_Channel7_IRQHandler,Default_Handler | |||||
.weak ADC1_IRQHandler | |||||
.thumb_set ADC1_IRQHandler,Default_Handler | |||||
.weak USB_HP_IRQHandler | |||||
.thumb_set USB_HP_IRQHandler,Default_Handler | |||||
.weak USB_LP_IRQHandler | |||||
.thumb_set USB_LP_IRQHandler,Default_Handler | |||||
.weak DAC_IRQHandler | |||||
.thumb_set DAC_IRQHandler,Default_Handler | |||||
.weak COMP_IRQHandler | |||||
.thumb_set COMP_IRQHandler,Default_Handler | |||||
.weak EXTI9_5_IRQHandler | |||||
.thumb_set EXTI9_5_IRQHandler,Default_Handler | |||||
.weak LCD_IRQHandler | |||||
.thumb_set LCD_IRQHandler,Default_Handler | |||||
.weak TIM9_IRQHandler | |||||
.thumb_set TIM9_IRQHandler,Default_Handler | |||||
.weak TIM10_IRQHandler | |||||
.thumb_set TIM10_IRQHandler,Default_Handler | |||||
.weak TIM11_IRQHandler | |||||
.thumb_set TIM11_IRQHandler,Default_Handler | |||||
.weak TIM2_IRQHandler | |||||
.thumb_set TIM2_IRQHandler,Default_Handler | |||||
.weak TIM3_IRQHandler | |||||
.thumb_set TIM3_IRQHandler,Default_Handler | |||||
.weak TIM4_IRQHandler | |||||
.thumb_set TIM4_IRQHandler,Default_Handler | |||||
.weak I2C1_EV_IRQHandler | |||||
.thumb_set I2C1_EV_IRQHandler,Default_Handler | |||||
.weak I2C1_ER_IRQHandler | |||||
.thumb_set I2C1_ER_IRQHandler,Default_Handler | |||||
.weak I2C2_EV_IRQHandler | |||||
.thumb_set I2C2_EV_IRQHandler,Default_Handler | |||||
.weak I2C2_ER_IRQHandler | |||||
.thumb_set I2C2_ER_IRQHandler,Default_Handler | |||||
.weak SPI1_IRQHandler | |||||
.thumb_set SPI1_IRQHandler,Default_Handler | |||||
.weak SPI2_IRQHandler | |||||
.thumb_set SPI2_IRQHandler,Default_Handler | |||||
.weak USART1_IRQHandler | |||||
.thumb_set USART1_IRQHandler,Default_Handler | |||||
.weak USART2_IRQHandler | |||||
.thumb_set USART2_IRQHandler,Default_Handler | |||||
.weak USART3_IRQHandler | |||||
.thumb_set USART3_IRQHandler,Default_Handler | |||||
.weak EXTI15_10_IRQHandler | |||||
.thumb_set EXTI15_10_IRQHandler,Default_Handler | |||||
.weak RTC_Alarm_IRQHandler | |||||
.thumb_set RTC_Alarm_IRQHandler,Default_Handler | |||||
.weak USB_FS_WKUP_IRQHandler | |||||
.thumb_set USB_FS_WKUP_IRQHandler,Default_Handler | |||||
.weak TIM6_IRQHandler | |||||
.thumb_set TIM6_IRQHandler,Default_Handler | |||||
.weak TIM7_IRQHandler | |||||
.thumb_set TIM7_IRQHandler,Default_Handler | |||||
.weak TIM5_IRQHandler | |||||
.thumb_set TIM5_IRQHandler,Default_Handler | |||||
.weak SPI3_IRQHandler | |||||
.thumb_set SPI3_IRQHandler,Default_Handler | |||||
.weak UART4_IRQHandler | |||||
.thumb_set UART4_IRQHandler,Default_Handler | |||||
.weak UART5_IRQHandler | |||||
.thumb_set UART5_IRQHandler,Default_Handler | |||||
.weak DMA2_Channel1_IRQHandler | |||||
.thumb_set DMA2_Channel1_IRQHandler,Default_Handler | |||||
.weak DMA2_Channel2_IRQHandler | |||||
.thumb_set DMA2_Channel2_IRQHandler,Default_Handler | |||||
.weak DMA2_Channel3_IRQHandler | |||||
.thumb_set DMA2_Channel3_IRQHandler,Default_Handler | |||||
.weak DMA2_Channel4_IRQHandler | |||||
.thumb_set DMA2_Channel4_IRQHandler,Default_Handler | |||||
.weak DMA2_Channel5_IRQHandler | |||||
.thumb_set DMA2_Channel5_IRQHandler,Default_Handler | |||||
.weak COMP_ACQ_IRQHandler | |||||
.thumb_set COMP_ACQ_IRQHandler,Default_Handler | |||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ | |||||
Core/Src/l6208.o: ../Core/Src/l6208.c ../Core/Inc/l6208.h \ | |||||
../Core/Inc/l6208_target_config.h ../Core/Inc/motor.h | |||||
../Core/Inc/l6208.h: | |||||
../Core/Inc/l6208_target_config.h: | |||||
../Core/Inc/motor.h: |
l6208.c:259:13:L6208_GetMotorHandle 4 static | |||||
l6208.c:269:6:L6208_Init 16 static | |||||
l6208.c:308:10:L6208_ReadId 4 static | |||||
l6208.c:321:6:L6208_AttachErrorHandler 16 static | |||||
l6208.c:335:6:L6208_AttachFlagInterrupt 16 static | |||||
l6208.c:344:9:L6208_CheckStatusHw 8 static | |||||
l6208.c:361:6:L6208_Disable 16 static | |||||
l6208.c:372:6:L6208_ErrorHandler 16 static | |||||
l6208.c:392:6:L6208_Enable 16 static | |||||
l6208.c:402:6:L6208_FlagInterruptHandler 8 static | |||||
l6208.c:424:10:L6208_GetAcceleration 16 static | |||||
l6208.c:437:10:L6208_GetCurrentSpeed 40 static | |||||
l6208.c:458:18:L6208_GetDecayMode 16 static | |||||
l6208.c:472:10:L6208_GetDeceleration 16 static | |||||
l6208.c:482:12:L6208_GetDirection 16 static | |||||
l6208.c:498:10:L6208_GetFwVersion 4 static | |||||
l6208.c:508:9:L6208_GetMark 16 static | |||||
l6208.c:521:10:L6208_GetMaxSpeed 16 static | |||||
l6208.c:534:10:L6208_GetMinSpeed 16 static | |||||
l6208.c:544:14:L6208_GetMotionState 16 static | |||||
l6208.c:555:9:L6208_GetPosition 16 static | |||||
l6208.c:565:17:L6208_GetStepMode 16 static | |||||
l6208.c:575:17:L6208_GetStopMode 16 static | |||||
l6208.c:594:9:L6208_GetTorque 24 static | |||||
l6208.c:625:6:L6208_GoHome 16 static | |||||
l6208.c:635:6:L6208_GoMark 16 static | |||||
l6208.c:653:6:L6208_GoTo 24 static | |||||
l6208.c:702:6:L6208_GoToDir 24 static | |||||
l6208.c:741:6:L6208_HardHiZ 16 static | |||||
l6208.c:765:6:L6208_HardStop 16 static | |||||
l6208.c:793:6:L6208_Move 16 static | |||||
l6208.c:821:6:L6208_ReleaseReset 16 static | |||||
l6208.c:831:6:L6208_Reset 16 static | |||||
l6208.c:841:6:L6208_ResetDevice 8 static | |||||
l6208.c:856:6:L6208_Run 16 static | |||||
l6208.c:880:6:L6208_SetAcceleration 24 static | |||||
l6208.c:901:6:L6208_SetDecayMode 16 static | |||||
l6208.c:924:6:L6208_SetDeceleration 24 static | |||||
l6208.c:948:6:L6208_SetDirection 16 static | |||||
l6208.c:1012:6:L6208_SetHome 16 static | |||||
l6208.c:1030:6:L6208_SetMark 16 static | |||||
l6208.c:1044:6:L6208_SetMaxSpeed 16 static | |||||
l6208.c:1066:6:L6208_SetMinSpeed 16 static | |||||
l6208.c:1085:6:L6208_SetNbDevices 16 static | |||||
l6208.c:1104:6:L6208_SetStepMode 16 static | |||||
l6208.c:1180:6:L6208_SetStopMode 16 static | |||||
l6208.c:1200:6:L6208_SetTorque 16 static | |||||
l6208.c:1236:6:L6208_SoftStop 16 static | |||||
l6208.c:1248:6:L6208_TickHandler 24 static | |||||
l6208.c:1544:10:L6208_VrefPwmGetFreq 16 static | |||||
l6208.c:1556:6:L6208_VrefPwmSetFreq 16 static | |||||
l6208.c:1579:6:L6208_WaitWhileActive 16 static | |||||
l6208.c:1597:13:L6208_ClearSysFlag 16 static | |||||
l6208.c:1616:10:L6208_ComputeNbAccOrDecSteps 24 static | |||||
l6208.c:1666:10:L6208_ConvertAcceDecelRateValue 40 static | |||||
l6208.c:1696:6:L6208_DoAccel 16 static | |||||
l6208.c:1717:6:L6208_DoDecel 16 static | |||||
l6208.c:1739:6:L6208_DoRun 4 static | |||||
l6208.c:1748:9:L6208_GetMicrostepSample2Scale 4 static | |||||
l6208.c:1778:6:L6208_Indexmodeinit 24 static | |||||
l6208.c:1822:13:L6208_IsSysFlag 16 static | |||||
l6208.c:1831:6:L6208_ResetSteps 4 static | |||||
l6208.c:1849:10:L6208_ScaleWaveformSample 24 static | |||||
l6208.c:1868:6:L6208_ScaleWaveformTable 16 static | |||||
l6208.c:1885:6:L6208_SetDeviceParamsToGivenValues 16 static | |||||
l6208.c:1915:6:L6208_SetDeviceParamsToPredefinedValues 8 static | |||||
l6208.c:1944:6:L6208_SetMicrostepSample2Scale 16 static | |||||
l6208.c:1959:6:L6208_SetMicrostepSample2Update 16 static | |||||
l6208.c:1974:6:L6208_SetMotionState 16 static | |||||
l6208.c:1987:6:L6208_SetSpeed 40 static | |||||
l6208.c:2017:13:L6208_SetSysFlag 16 static | |||||
l6208.c:2026:6:L6208_StartMovement 16 static | |||||
l6208.c:2095:6:L6208_UpdateScanWaveformTable 16 static | |||||
l6208.c:2113:6:L6208_UstepWaveformHandling 8 static | |||||
l6208.c:2134:6:L6208_VectorCalc 16 static |
Core/Src/main.o: ../Core/Src/main.c ../Core/Inc/main.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h \ | |||||
../Core/Inc/x_nucleo_ihmxx.h ../Core/Inc/motor.h ../Core/Inc/l6208.h \ | |||||
../Core/Inc/l6208_target_config.h \ | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h ../Core/Inc/stm32l1xx_nucleo.h | |||||
../Core/Inc/main.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: | |||||
../Core/Inc/x_nucleo_ihmxx.h: | |||||
../Core/Inc/motor.h: | |||||
../Core/Inc/l6208.h: | |||||
../Core/Inc/l6208_target_config.h: | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h: | |||||
../Core/Inc/stm32l1xx_nucleo.h: |
main.c:66:5:main 8 static | |||||
main.c:110:6:SystemClock_Config 80 static | |||||
main.c:152:13:MX_USART2_UART_Init 8 static | |||||
main.c:185:13:MX_GPIO_Init 48 static | |||||
main.c:221:6:Error_Handler 4 static,ignoring_inline_asm |
Core/Src/stm32l1xx_hal_msp.o: ../Core/Src/stm32l1xx_hal_msp.c \ | |||||
../Core/Inc/main.h ../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h \ | |||||
../Core/Inc/x_nucleo_ihmxx.h ../Core/Inc/motor.h ../Core/Inc/l6208.h \ | |||||
../Core/Inc/l6208_target_config.h \ | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h ../Core/Inc/stm32l1xx_nucleo.h | |||||
../Core/Inc/main.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: | |||||
../Core/Inc/x_nucleo_ihmxx.h: | |||||
../Core/Inc/motor.h: | |||||
../Core/Inc/l6208.h: | |||||
../Core/Inc/l6208_target_config.h: | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h: | |||||
../Core/Inc/stm32l1xx_nucleo.h: |
stm32l1xx_hal_msp.c:64:6:HAL_MspInit 24 static | |||||
stm32l1xx_hal_msp.c:89:6:HAL_UART_MspInit 48 static | |||||
stm32l1xx_hal_msp.c:125:6:HAL_UART_MspDeInit 16 static |
Core/Src/stm32l1xx_it.o: ../Core/Src/stm32l1xx_it.c ../Core/Inc/main.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h \ | |||||
../Core/Inc/x_nucleo_ihmxx.h ../Core/Inc/motor.h ../Core/Inc/l6208.h \ | |||||
../Core/Inc/l6208_target_config.h \ | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h ../Core/Inc/stm32l1xx_nucleo.h \ | |||||
../Core/Inc/stm32l1xx_it.h | |||||
../Core/Inc/main.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: | |||||
../Core/Inc/x_nucleo_ihmxx.h: | |||||
../Core/Inc/motor.h: | |||||
../Core/Inc/l6208.h: | |||||
../Core/Inc/l6208_target_config.h: | |||||
../Core/Inc/x_nucleo_ihm05a1_stm32l1xx.h: | |||||
../Core/Inc/stm32l1xx_nucleo.h: | |||||
../Core/Inc/stm32l1xx_it.h: |
stm32l1xx_it.c:70:6:NMI_Handler 4 static | |||||
stm32l1xx_it.c:85:6:HardFault_Handler 4 static | |||||
stm32l1xx_it.c:100:6:MemManage_Handler 4 static | |||||
stm32l1xx_it.c:115:6:BusFault_Handler 4 static | |||||
stm32l1xx_it.c:130:6:UsageFault_Handler 4 static | |||||
stm32l1xx_it.c:145:6:SVC_Handler 4 static | |||||
stm32l1xx_it.c:158:6:DebugMon_Handler 4 static | |||||
stm32l1xx_it.c:171:6:PendSV_Handler 4 static | |||||
stm32l1xx_it.c:184:6:SysTick_Handler 8 static |
Core/Src/stm32l1xx_nucleo.o: ../Core/Src/stm32l1xx_nucleo.c \ | |||||
../Core/Inc/stm32l1xx_nucleo.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Core/Inc/stm32l1xx_nucleo.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_nucleo.c:143:10:BSP_GetVersion 4 static | |||||
stm32l1xx_nucleo.c:159:6:BSP_LED_Init 40 static | |||||
stm32l1xx_nucleo.c:186:6:BSP_LED_DeInit 40 static | |||||
stm32l1xx_nucleo.c:204:6:BSP_LED_On 16 static | |||||
stm32l1xx_nucleo.c:216:6:BSP_LED_Off 16 static | |||||
stm32l1xx_nucleo.c:228:6:BSP_LED_Toggle 16 static | |||||
stm32l1xx_nucleo.c:252:6:BSP_PB_Init 40 static | |||||
stm32l1xx_nucleo.c:290:6:BSP_PB_DeInit 40 static | |||||
stm32l1xx_nucleo.c:305:10:BSP_PB_GetState 16 static |
################################################################################ | |||||
# Automatically-generated file. Do not edit! | |||||
################################################################################ | |||||
# Add inputs and outputs from these tool invocations to the build variables | |||||
C_SRCS += \ | |||||
../Core/Src/l6208.c \ | |||||
../Core/Src/main.c \ | |||||
../Core/Src/stm32l1xx_hal_msp.c \ | |||||
../Core/Src/stm32l1xx_it.c \ | |||||
../Core/Src/stm32l1xx_nucleo.c \ | |||||
../Core/Src/syscalls.c \ | |||||
../Core/Src/sysmem.c \ | |||||
../Core/Src/system_stm32l1xx.c \ | |||||
../Core/Src/x_nucleo_ihm05a1_stm32l1xx.c \ | |||||
../Core/Src/x_nucleo_ihmxx.c | |||||
OBJS += \ | |||||
./Core/Src/l6208.o \ | |||||
./Core/Src/main.o \ | |||||
./Core/Src/stm32l1xx_hal_msp.o \ | |||||
./Core/Src/stm32l1xx_it.o \ | |||||
./Core/Src/stm32l1xx_nucleo.o \ | |||||
./Core/Src/syscalls.o \ | |||||
./Core/Src/sysmem.o \ | |||||
./Core/Src/system_stm32l1xx.o \ | |||||
./Core/Src/x_nucleo_ihm05a1_stm32l1xx.o \ | |||||
./Core/Src/x_nucleo_ihmxx.o | |||||
C_DEPS += \ | |||||
./Core/Src/l6208.d \ | |||||
./Core/Src/main.d \ | |||||
./Core/Src/stm32l1xx_hal_msp.d \ | |||||
./Core/Src/stm32l1xx_it.d \ | |||||
./Core/Src/stm32l1xx_nucleo.d \ | |||||
./Core/Src/syscalls.d \ | |||||
./Core/Src/sysmem.d \ | |||||
./Core/Src/system_stm32l1xx.d \ | |||||
./Core/Src/x_nucleo_ihm05a1_stm32l1xx.d \ | |||||
./Core/Src/x_nucleo_ihmxx.d | |||||
# Each subdirectory must supply rules for building sources it contributes | |||||
Core/Src/l6208.o: ../Core/Src/l6208.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/l6208.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/main.o: ../Core/Src/main.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/stm32l1xx_hal_msp.o: ../Core/Src/stm32l1xx_hal_msp.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/stm32l1xx_hal_msp.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/stm32l1xx_it.o: ../Core/Src/stm32l1xx_it.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/stm32l1xx_it.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/stm32l1xx_nucleo.o: ../Core/Src/stm32l1xx_nucleo.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/stm32l1xx_nucleo.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/syscalls.o: ../Core/Src/syscalls.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/syscalls.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/sysmem.o: ../Core/Src/sysmem.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/sysmem.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/system_stm32l1xx.o: ../Core/Src/system_stm32l1xx.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/system_stm32l1xx.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/x_nucleo_ihm05a1_stm32l1xx.o: ../Core/Src/x_nucleo_ihm05a1_stm32l1xx.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/x_nucleo_ihm05a1_stm32l1xx.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/x_nucleo_ihmxx.o: ../Core/Src/x_nucleo_ihmxx.c | |||||
arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32L152xE -DDEBUG -c -I../Core/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc -I../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32L1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/x_nucleo_ihmxx.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" | |||||
Core/Src/syscalls.o: ../Core/Src/syscalls.c |
syscalls.c:48:6:initialise_monitor_handles 4 static | |||||
syscalls.c:52:5:_getpid 4 static | |||||
syscalls.c:57:5:_kill 16 static | |||||
syscalls.c:63:6:_exit 16 static | |||||
syscalls.c:69:27:_read 32 static | |||||
syscalls.c:81:27:_write 32 static | |||||
syscalls.c:92:5:_close 16 static | |||||
syscalls.c:98:5:_fstat 16 static | |||||
syscalls.c:104:5:_isatty 16 static | |||||
syscalls.c:109:5:_lseek 24 static | |||||
syscalls.c:114:5:_open 12 static | |||||
syscalls.c:120:5:_wait 16 static | |||||
syscalls.c:126:5:_unlink 16 static | |||||
syscalls.c:132:5:_times 16 static | |||||
syscalls.c:137:5:_stat 16 static | |||||
syscalls.c:143:5:_link 16 static | |||||
syscalls.c:149:5:_fork 8 static | |||||
syscalls.c:155:5:_execve 24 static |
Core/Src/sysmem.o: ../Core/Src/sysmem.c |
sysmem.c:54:7:_sbrk 32 static |
Core/Src/system_stm32l1xx.o: ../Core/Src/system_stm32l1xx.c \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
system_stm32l1xx.c:140:6:SystemInit 4 static | |||||
system_stm32l1xx.c:191:6:SystemCoreClockUpdate 32 static |
Core/Src/x_nucleo_ihmxx.o: ../Core/Src/x_nucleo_ihmxx.c \ | |||||
../Core/Inc/x_nucleo_ihmxx.h ../Core/Inc/motor.h | |||||
../Core/Inc/x_nucleo_ihmxx.h: | |||||
../Core/Inc/motor.h: |
x_nucleo_ihmxx.c:98:20:L6474_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:100:20:l647x_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:102:20:l648x_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:104:20:Powerstep01_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:106:20:L6206_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:108:20:L6208_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:110:20:Stspin220_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:112:20:Stspin240_250_GetMotorHandle 4 static | |||||
x_nucleo_ihmxx.c:129:6:BSP_MotorControl_AttachErrorHandler 16 static | |||||
x_nucleo_ihmxx.c:149:6:BSP_MotorControl_AttachFlagInterrupt 16 static | |||||
x_nucleo_ihmxx.c:169:6:BSP_MotorControl_AttachBusyInterrupt 16 static | |||||
x_nucleo_ihmxx.c:186:6:BSP_MotorControl_ErrorHandler 16 static | |||||
x_nucleo_ihmxx.c:209:6:BSP_MotorControl_Init 16 static | |||||
x_nucleo_ihmxx.c:225:6:BSP_MotorControl_FlagInterruptHandler 8 static | |||||
x_nucleo_ihmxx.c:242:10:BSP_MotorControl_GetAcceleration 24 static | |||||
x_nucleo_ihmxx.c:261:10:BSP_MotorControl_GetBoardId 4 static | |||||
x_nucleo_ihmxx.c:273:10:BSP_MotorControl_GetCurrentSpeed 24 static | |||||
x_nucleo_ihmxx.c:293:10:BSP_MotorControl_GetDeceleration 24 static | |||||
x_nucleo_ihmxx.c:316:14:BSP_MotorControl_GetDeviceState 24 static | |||||
x_nucleo_ihmxx.c:337:10:BSP_MotorControl_GetFwVersion 16 static | |||||
x_nucleo_ihmxx.c:358:9:BSP_MotorControl_GetMark 24 static | |||||
x_nucleo_ihmxx.c:381:10:BSP_MotorControl_GetMaxSpeed 24 static | |||||
x_nucleo_ihmxx.c:401:10:BSP_MotorControl_GetMinSpeed 24 static | |||||
x_nucleo_ihmxx.c:422:9:BSP_MotorControl_GetPosition 24 static | |||||
x_nucleo_ihmxx.c:443:6:BSP_MotorControl_GoHome 16 static | |||||
x_nucleo_ihmxx.c:461:6:BSP_MotorControl_GoMark 16 static | |||||
x_nucleo_ihmxx.c:480:6:BSP_MotorControl_GoTo 16 static | |||||
x_nucleo_ihmxx.c:499:6:BSP_MotorControl_HardStop 16 static | |||||
x_nucleo_ihmxx.c:519:6:BSP_MotorControl_Move 16 static | |||||
x_nucleo_ihmxx.c:535:6:BSP_MotorControl_ResetAllDevices 8 static | |||||
x_nucleo_ihmxx.c:558:6:BSP_MotorControl_Run 16 static | |||||
x_nucleo_ihmxx.c:578:6:BSP_MotorControl_SetAcceleration 24 static | |||||
x_nucleo_ihmxx.c:601:6:BSP_MotorControl_SetDeceleration 24 static | |||||
x_nucleo_ihmxx.c:622:6:BSP_MotorControl_SetHome 16 static | |||||
x_nucleo_ihmxx.c:641:6:BSP_MotorControl_SetMark 16 static | |||||
x_nucleo_ihmxx.c:664:6:BSP_MotorControl_SetMaxSpeed 24 static | |||||
x_nucleo_ihmxx.c:687:6:BSP_MotorControl_SetMinSpeed 24 static | |||||
x_nucleo_ihmxx.c:710:6:BSP_MotorControl_SoftStop 24 static | |||||
x_nucleo_ihmxx.c:732:6:BSP_MotorControl_StepClockHandler 16 static | |||||
x_nucleo_ihmxx.c:749:6:BSP_MotorControl_WaitWhileActive 16 static | |||||
x_nucleo_ihmxx.c:779:6:BSP_MotorControl_CmdDisable 16 static | |||||
x_nucleo_ihmxx.c:801:6:BSP_MotorControl_CmdEnable 16 static | |||||
x_nucleo_ihmxx.c:819:10:BSP_MotorControl_CmdGetParam 24 static | |||||
x_nucleo_ihmxx.c:847:10:BSP_MotorControl_CmdGetStatus 24 static | |||||
x_nucleo_ihmxx.c:866:6:BSP_MotorControl_CmdNop 16 static | |||||
x_nucleo_ihmxx.c:885:6:BSP_MotorControl_CmdSetParam 24 static | |||||
x_nucleo_ihmxx.c:906:10:BSP_MotorControl_ReadStatusRegister 24 static | |||||
x_nucleo_ihmxx.c:925:6:BSP_MotorControl_ReleaseReset 16 static | |||||
x_nucleo_ihmxx.c:941:6:BSP_MotorControl_Reset 16 static | |||||
x_nucleo_ihmxx.c:961:6:BSP_MotorControl_SelectStepMode 24 static | |||||
x_nucleo_ihmxx.c:987:6:BSP_MotorControl_SetDirection 16 static | |||||
x_nucleo_ihmxx.c:1007:6:BSP_MotorControl_CmdGoToDir 16 static | |||||
x_nucleo_ihmxx.c:1025:9:BSP_MotorControl_CheckBusyHw 16 static | |||||
x_nucleo_ihmxx.c:1046:9:BSP_MotorControl_CheckStatusHw 16 static | |||||
x_nucleo_ihmxx.c:1068:6:BSP_MotorControl_CmdGoUntil 24 static | |||||
x_nucleo_ihmxx.c:1089:6:BSP_MotorControl_CmdHardHiZ 16 static | |||||
x_nucleo_ihmxx.c:1108:6:BSP_MotorControl_CmdReleaseSw 16 static | |||||
x_nucleo_ihmxx.c:1125:6:BSP_MotorControl_CmdResetDevice 16 static | |||||
x_nucleo_ihmxx.c:1142:6:BSP_MotorControl_CmdResetPos 16 static | |||||
x_nucleo_ihmxx.c:1161:6:BSP_MotorControl_CmdRun 16 static | |||||
x_nucleo_ihmxx.c:1178:6:BSP_MotorControl_CmdSoftHiZ 16 static | |||||
x_nucleo_ihmxx.c:1196:6:BSP_MotorControl_CmdStepClock 16 static | |||||
x_nucleo_ihmxx.c:1218:6:BSP_MotorControl_FetchAndClearAllStatus 8 static | |||||
x_nucleo_ihmxx.c:1238:10:BSP_MotorControl_GetFetchedStatus 24 static | |||||
x_nucleo_ihmxx.c:1256:9:BSP_MotorControl_GetNbDevices 16 static | |||||
x_nucleo_ihmxx.c:1276:6:BSP_MotorControl_IsDeviceBusy 24 static | |||||
x_nucleo_ihmxx.c:1295:6:BSP_MotorControl_SendQueuedCommands 8 static | |||||
x_nucleo_ihmxx.c:1321:6:BSP_MotorControl_QueueCommands 16 static | |||||
x_nucleo_ihmxx.c:1337:6:BSP_MotorControl_WaitForAllDevicesNotBusy 8 static | |||||
x_nucleo_ihmxx.c:1353:6:BSP_MotorControl_BusyInterruptHandler 8 static | |||||
x_nucleo_ihmxx.c:1370:6:BSP_MotorControl_CmdSoftStop 16 static | |||||
x_nucleo_ihmxx.c:1388:6:BSP_MotorControl_StartStepClock 16 static | |||||
x_nucleo_ihmxx.c:1404:6:BSP_MotorControl_StopStepClock 8 static | |||||
x_nucleo_ihmxx.c:1424:6:BSP_MotorControl_SetDualFullBridgeConfig 16 static | |||||
x_nucleo_ihmxx.c:1442:10:BSP_MotorControl_GetBridgeInputPwmFreq 24 static | |||||
x_nucleo_ihmxx.c:1464:6:BSP_MotorControl_SetBridgeInputPwmFreq 16 static | |||||
x_nucleo_ihmxx.c:1485:6:BSP_MotorControl_SetStopMode 16 static | |||||
x_nucleo_ihmxx.c:1503:17:BSP_MotorControl_GetStopMode 24 static | |||||
x_nucleo_ihmxx.c:1525:6:BSP_MotorControl_SetDecayMode 16 static | |||||
x_nucleo_ihmxx.c:1543:18:BSP_MotorControl_GetDecayMode 24 static | |||||
x_nucleo_ihmxx.c:1564:17:BSP_MotorControl_GetStepMode 24 static | |||||
x_nucleo_ihmxx.c:1585:12:BSP_MotorControl_GetDirection 24 static | |||||
x_nucleo_ihmxx.c:1605:6:BSP_MotorControl_ExitDeviceFromReset 16 static | |||||
x_nucleo_ihmxx.c:1623:9:BSP_MotorControl_GetTorque 24 static | |||||
x_nucleo_ihmxx.c:1645:6:BSP_MotorControl_SetTorque 16 static | |||||
x_nucleo_ihmxx.c:1663:6:BSP_MotorControl_SetRefFreq 16 static | |||||
x_nucleo_ihmxx.c:1680:10:BSP_MotorControl_GetRefFreq 24 static | |||||
x_nucleo_ihmxx.c:1700:6:BSP_MotorControl_SetRefDc 16 static | |||||
x_nucleo_ihmxx.c:1717:9:BSP_MotorControl_GetRefDc 24 static | |||||
x_nucleo_ihmxx.c:1739:6:BSP_MotorControl_SetNbDevices 24 static | |||||
x_nucleo_ihmxx.c:1798:6:BSP_MotorControl_SetAnalogValue 32 static | |||||
x_nucleo_ihmxx.c:1818:7:BSP_MotorControl_GetAnalogValue 24 static | |||||
x_nucleo_ihmxx.c:1838:6:BSP_MotorControl_SetTorqueBoostEnable 16 static | |||||
x_nucleo_ihmxx.c:1855:6:BSP_MotorControl_GetTorqueBoostEnable 24 static | |||||
x_nucleo_ihmxx.c:1876:6:BSP_MotorControl_SetTorqueBoostThreshold 16 static | |||||
x_nucleo_ihmxx.c:1894:10:BSP_MotorControl_GetTorqueBoostThreshold 24 static | |||||
x_nucleo_ihmxx.c:1915:9:BSP_MotorControl_GetDualFullBridgeConfig 16 static |
Core/Startup/startup_stm32l152retx.o: \ | |||||
../Core/Startup/startup_stm32l152retx.s |
################################################################################ | |||||
# Automatically-generated file. Do not edit! | |||||
################################################################################ | |||||
# Add inputs and outputs from these tool invocations to the build variables | |||||
S_SRCS += \ | |||||
../Core/Startup/startup_stm32l152retx.s | |||||
OBJS += \ | |||||
./Core/Startup/startup_stm32l152retx.o | |||||
S_DEPS += \ | |||||
./Core/Startup/startup_stm32l152retx.d | |||||
# Each subdirectory must supply rules for building sources it contributes | |||||
Core/Startup/startup_stm32l152retx.o: ../Core/Startup/startup_stm32l152retx.s | |||||
arm-none-eabi-gcc -mcpu=cortex-m3 -g3 -c -x assembler-with-cpp -MMD -MP -MF"Core/Startup/startup_stm32l152retx.d" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" "$<" | |||||
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_hal.c:140:19:HAL_Init 16 static | |||||
stm32l1xx_hal.c:173:19:HAL_DeInit 8 static | |||||
stm32l1xx_hal.c:196:13:HAL_MspInit 4 static | |||||
stm32l1xx_hal.c:207:13:HAL_MspDeInit 4 static | |||||
stm32l1xx_hal.c:230:26:HAL_InitTick 24 static | |||||
stm32l1xx_hal.c:298:13:HAL_IncTick 4 static | |||||
stm32l1xx_hal.c:309:17:HAL_GetTick 4 static | |||||
stm32l1xx_hal.c:318:10:HAL_GetTickPrio 4 static | |||||
stm32l1xx_hal.c:328:19:HAL_SetTickFreq 24 static | |||||
stm32l1xx_hal.c:350:10:HAL_GetTickFreq 4 static | |||||
stm32l1xx_hal.c:366:13:HAL_Delay 24 static | |||||
stm32l1xx_hal.c:392:13:HAL_SuspendTick 4 static | |||||
stm32l1xx_hal.c:408:13:HAL_ResumeTick 4 static | |||||
stm32l1xx_hal.c:418:10:HAL_GetHalVersion 4 static | |||||
stm32l1xx_hal.c:427:10:HAL_GetREVID 4 static | |||||
stm32l1xx_hal.c:436:10:HAL_GetDEVID 4 static | |||||
stm32l1xx_hal.c:445:10:HAL_GetUIDw0 4 static | |||||
stm32l1xx_hal.c:454:10:HAL_GetUIDw1 4 static | |||||
stm32l1xx_hal.c:463:10:HAL_GetUIDw2 4 static | |||||
stm32l1xx_hal.c:492:6:HAL_DBGMCU_EnableDBGSleepMode 4 static | |||||
stm32l1xx_hal.c:501:6:HAL_DBGMCU_DisableDBGSleepMode 4 static | |||||
stm32l1xx_hal.c:510:6:HAL_DBGMCU_EnableDBGStopMode 4 static | |||||
stm32l1xx_hal.c:519:6:HAL_DBGMCU_DisableDBGStopMode 4 static | |||||
stm32l1xx_hal.c:528:6:HAL_DBGMCU_EnableDBGStandbyMode 4 static | |||||
stm32l1xx_hal.c:537:6:HAL_DBGMCU_DisableDBGStandbyMode 4 static |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_adc.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_adc.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_adc_ex.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_adc_ex.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_comp.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_comp.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cortex.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cortex.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
core_cm3.h:1480:22:__NVIC_SetPriorityGrouping 24 static | |||||
core_cm3.h:1499:26:__NVIC_GetPriorityGrouping 4 static | |||||
core_cm3.h:1511:22:__NVIC_EnableIRQ 16 static | |||||
core_cm3.h:1547:22:__NVIC_DisableIRQ 16 static,ignoring_inline_asm | |||||
core_cm3.h:1566:26:__NVIC_GetPendingIRQ 16 static | |||||
core_cm3.h:1585:22:__NVIC_SetPendingIRQ 16 static | |||||
core_cm3.h:1600:22:__NVIC_ClearPendingIRQ 16 static | |||||
core_cm3.h:1617:26:__NVIC_GetActive 16 static | |||||
core_cm3.h:1639:22:__NVIC_SetPriority 16 static | |||||
core_cm3.h:1661:26:__NVIC_GetPriority 16 static | |||||
core_cm3.h:1686:26:NVIC_EncodePriority 40 static | |||||
core_cm3.h:1713:22:NVIC_DecodePriority 40 static | |||||
core_cm3.h:1762:34:__NVIC_SystemReset 4 static,ignoring_inline_asm | |||||
core_cm3.h:1834:26:SysTick_Config 16 static | |||||
stm32l1xx_hal_cortex.c:169:6:HAL_NVIC_SetPriorityGrouping 16 static | |||||
stm32l1xx_hal_cortex.c:191:6:HAL_NVIC_SetPriority 32 static | |||||
stm32l1xx_hal_cortex.c:213:6:HAL_NVIC_EnableIRQ 16 static | |||||
stm32l1xx_hal_cortex.c:229:6:HAL_NVIC_DisableIRQ 16 static | |||||
stm32l1xx_hal_cortex.c:242:6:HAL_NVIC_SystemReset 8 static | |||||
stm32l1xx_hal_cortex.c:255:10:HAL_SYSTICK_Config 16 static | |||||
stm32l1xx_hal_cortex.c:291:6:HAL_MPU_Enable 16 static,ignoring_inline_asm | |||||
stm32l1xx_hal_cortex.c:305:6:HAL_MPU_Disable 4 static,ignoring_inline_asm | |||||
stm32l1xx_hal_cortex.c:320:6:HAL_MPU_ConfigRegion 16 static | |||||
stm32l1xx_hal_cortex.c:364:10:HAL_NVIC_GetPriorityGrouping 8 static | |||||
stm32l1xx_hal_cortex.c:391:6:HAL_NVIC_GetPriority 24 static | |||||
stm32l1xx_hal_cortex.c:406:6:HAL_NVIC_SetPendingIRQ 16 static | |||||
stm32l1xx_hal_cortex.c:421:10:HAL_NVIC_GetPendingIRQ 16 static | |||||
stm32l1xx_hal_cortex.c:434:6:HAL_NVIC_ClearPendingIRQ 16 static | |||||
stm32l1xx_hal_cortex.c:448:10:HAL_NVIC_GetActive 16 static | |||||
stm32l1xx_hal_cortex.c:462:6:HAL_SYSTICK_CLKSourceConfig 16 static | |||||
stm32l1xx_hal_cortex.c:480:6:HAL_SYSTICK_IRQHandler 8 static | |||||
stm32l1xx_hal_cortex.c:489:13:HAL_SYSTICK_Callback 4 static |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_crc.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_crc.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cryp.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cryp.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cryp_ex.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_cryp_ex.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dac.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dac.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dac_ex.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dac_ex.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dma.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_dma.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_hal_dma.c:143:19:HAL_DMA_Init 24 static | |||||
stm32l1xx_hal_dma.c:222:19:HAL_DMA_DeInit 16 static | |||||
stm32l1xx_hal_dma.c:314:19:HAL_DMA_Start 32 static | |||||
stm32l1xx_hal_dma.c:357:19:HAL_DMA_Start_IT 32 static | |||||
stm32l1xx_hal_dma.c:412:19:HAL_DMA_Abort 24 static | |||||
stm32l1xx_hal_dma.c:453:19:HAL_DMA_Abort_IT 24 static | |||||
stm32l1xx_hal_dma.c:498:19:HAL_DMA_PollForTransfer 32 static | |||||
stm32l1xx_hal_dma.c:599:6:HAL_DMA_IRQHandler 24 static | |||||
stm32l1xx_hal_dma.c:696:19:HAL_DMA_RegisterCallback 32 static | |||||
stm32l1xx_hal_dma.c:747:19:HAL_DMA_UnRegisterCallback 24 static | |||||
stm32l1xx_hal_dma.c:825:22:HAL_DMA_GetState 16 static | |||||
stm32l1xx_hal_dma.c:837:10:HAL_DMA_GetError 16 static | |||||
stm32l1xx_hal_dma.c:863:13:DMA_SetConfig 24 static |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_exti.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_exti.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_hal_exti.c:143:19:HAL_EXTI_SetConfigLine 32 static | |||||
stm32l1xx_hal_exti.c:238:19:HAL_EXTI_GetConfigLine 32 static | |||||
stm32l1xx_hal_exti.c:327:19:HAL_EXTI_ClearConfigLine 32 static | |||||
stm32l1xx_hal_exti.c:380:19:HAL_EXTI_RegisterCallback 32 static | |||||
stm32l1xx_hal_exti.c:405:19:HAL_EXTI_GetHandle 16 static | |||||
stm32l1xx_hal_exti.c:445:6:HAL_EXTI_IRQHandler 24 static | |||||
stm32l1xx_hal_exti.c:477:10:HAL_EXTI_GetPending 32 static | |||||
stm32l1xx_hal_exti.c:506:6:HAL_EXTI_ClearPending 24 static | |||||
stm32l1xx_hal_exti.c:527:6:HAL_EXTI_GenerateSWI 24 static |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_hal_flash.c:231:19:HAL_FLASH_Program 32 static | |||||
stm32l1xx_hal_flash.c:273:19:HAL_FLASH_Program_IT 32 static | |||||
stm32l1xx_hal_flash.c:304:6:HAL_FLASH_IRQHandler 16 static | |||||
stm32l1xx_hal_flash.c:419:13:HAL_FLASH_EndOfOperationCallback 16 static | |||||
stm32l1xx_hal_flash.c:436:13:HAL_FLASH_OperationErrorCallback 16 static | |||||
stm32l1xx_hal_flash.c:469:19:HAL_FLASH_Unlock 4 static | |||||
stm32l1xx_hal_flash.c:504:19:HAL_FLASH_Lock 4 static | |||||
stm32l1xx_hal_flash.c:516:19:HAL_FLASH_OB_Unlock 4 static | |||||
stm32l1xx_hal_flash.c:552:19:HAL_FLASH_OB_Lock 4 static | |||||
stm32l1xx_hal_flash.c:565:19:HAL_FLASH_OB_Launch 8 static | |||||
stm32l1xx_hal_flash.c:597:10:HAL_FLASH_GetError 4 static | |||||
stm32l1xx_hal_flash.c:619:19:FLASH_WaitForLastOperation 24 static | |||||
stm32l1xx_hal_flash.c:669:13:FLASH_SetErrorCode 16 static |
Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ex.o: \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Src/stm32l1xx_hal_flash_ex.c \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h \ | |||||
../Core/Inc/stm32l1xx_hal_conf.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h \ | |||||
../Drivers/CMSIS/Include/core_cm3.h \ | |||||
../Drivers/CMSIS/Include/cmsis_version.h \ | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h \ | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h \ | |||||
../Drivers/CMSIS/Include/mpu_armv7.h \ | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h \ | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal.h: | |||||
../Core/Inc/stm32l1xx_hal_conf.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_def.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l1xx.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/stm32l152xe.h: | |||||
../Drivers/CMSIS/Include/core_cm3.h: | |||||
../Drivers/CMSIS/Include/cmsis_version.h: | |||||
../Drivers/CMSIS/Include/cmsis_compiler.h: | |||||
../Drivers/CMSIS/Include/cmsis_gcc.h: | |||||
../Drivers/CMSIS/Include/mpu_armv7.h: | |||||
../Drivers/CMSIS/Device/ST/STM32L1xx/Include/system_stm32l1xx.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_rcc_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_gpio_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_dma.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_cortex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_flash_ramfunc.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_pwr_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_tim_ex.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_uart.h: | |||||
../Drivers/STM32L1xx_HAL_Driver/Inc/stm32l1xx_hal_exti.h: |
stm32l1xx_hal_flash_ex.c:187:19:HAL_FLASHEx_Erase 24 static | |||||
stm32l1xx_hal_flash_ex.c:283:19:HAL_FLASHEx_Erase_IT 24 static | |||||
stm32l1xx_hal_flash_ex.c:406:19:HAL_FLASHEx_OBProgram 24 static | |||||
stm32l1xx_hal_flash_ex.c:488:6:HAL_FLASHEx_OBGetConfig 16 static | |||||
stm32l1xx_hal_flash_ex.c:542:19:HAL_FLASHEx_AdvOBProgram 24 static | |||||
stm32l1xx_hal_flash_ex.c:599:6:HAL_FLASHEx_AdvOBGetConfig 16 static | |||||
stm32l1xx_hal_flash_ex.c:751:19:HAL_FLASHEx_DATAEEPROM_Unlock 4 static | |||||
stm32l1xx_hal_flash_ex.c:770:19:HAL_FLASHEx_DATAEEPROM_Lock 4 static | |||||
stm32l1xx_hal_flash_ex.c:790:19:HAL_FLASHEx_DATAEEPROM_Erase 24 static | |||||
stm32l1xx_hal_flash_ex.c:848:21:HAL_FLASHEx_DATAEEPROM_Program 32 static | |||||
stm32l1xx_hal_flash_ex.c:913:6:HAL_FLASHEx_DATAEEPROM_EnableFixedTimeProgram 4 static | |||||
stm32l1xx_hal_flash_ex.c:922:6:HAL_FLASHEx_DATAEEPROM_DisableFixedTimeProgram 4 static | |||||
stm32l1xx_hal_flash_ex.c:958:26:FLASH_OB_RDPConfig 32 static | |||||
stm32l1xx_hal_flash_ex.c:1022:26:FLASH_OB_BORConfig 32 static | |||||
stm32l1xx_hal_flash_ex.c:1060:16:FLASH_OB_GetUser 4 static | |||||
stm32l1xx_hal_flash_ex.c:1074:16:FLASH_OB_GetRDP 16 static | |||||
stm32l1xx_hal_flash_ex.c:1092:16:FLASH_OB_GetBOR 4 static | |||||
stm32l1xx_hal_flash_ex.c:1106:26:FLASH_OB_WRPConfig 24 static | |||||
stm32l1xx_hal_flash_ex.c:1237:13:FLASH_OB_WRPConfigWRP1OrPCROP1 32 static | |||||
stm32l1xx_hal_flash_ex.c:1283:13:FLASH_OB_WRPConfigWRP2OrPCROP2 32 static | |||||
stm32l1xx_hal_flash_ex.c:1329:13:FLASH_OB_WRPConfigWRP3 32 static | |||||
stm32l1xx_hal_flash_ex.c:1374:13:FLASH_OB_WRPConfigWRP4 32 static | |||||
stm32l1xx_hal_flash_ex.c:1424:26:FLASH_OB_UserConfig 32 static | |||||
stm32l1xx_hal_flash_ex.c:1477:26:FLASH_OB_BootConfig 32 static | |||||
stm32l1xx_hal_flash_ex.c:1526:26:FLASH_DATAEEPROM_FastProgramByte 24 static | |||||
stm32l1xx_hal_flash_ex.c:1586:26:FLASH_DATAEEPROM_FastProgramHalfWord 24 static | |||||
stm32l1xx_hal_flash_ex.c:1654:26:FLASH_DATAEEPROM_FastProgramWord 24 static | |||||
stm32l1xx_hal_flash_ex.c:1685:26:FLASH_DATAEEPROM_ProgramByte 24 static | |||||
stm32l1xx_hal_flash_ex.c:1739:26:FLASH_DATAEEPROM_ProgramHalfWord 24 static | |||||
stm32l1xx_hal_flash_ex.c:1800:26:FLASH_DATAEEPROM_ProgramWord 24 static | |||||
stm32l1xx_hal_flash_ex.c:1845:6:FLASH_PageErase 16 static |