Add SX1280 Library and EXTI Handler
This commit is contained in:
46
.cproject
46
.cproject
@@ -24,7 +24,7 @@
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.1310523484" name="Floating-point ABI" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.value.hard" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1446662578" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="STM32F407G-DISC1" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1590809387" 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.6 || Debug || true || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.option.toolchain.value.workspace || STM32F407G-DISC1 || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Core/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32F4xx/Include | ../Drivers/CMSIS/Include | ../Middlewares/Third_Party/FreeRTOS/Source/include | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F || || || USE_HAL_DRIVER | STM32F407xx || || Drivers | Core/Startup | Middlewares | Core || || || ${workspace_loc:/${ProjName}/STM32F407VGTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None || || || " valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.debug.option.cpuclock.45489508" superClass="com.st.stm32cube.ide.mcu.debug.option.cpuclock" useByScannerDiscovery="false" value="168" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.debug.option.cpuclock.45489508" name="Cpu clock frequence" superClass="com.st.stm32cube.ide.mcu.debug.option.cpuclock" useByScannerDiscovery="false" value="168" valueType="string"/>
|
||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.2108037219" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
|
||||
<builder buildPath="${workspace_loc:/F407-SX1280-FreeRTOS}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.1270374400" 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.375870604" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler">
|
||||
@@ -52,6 +52,7 @@
|
||||
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/>
|
||||
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F"/>
|
||||
</option>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard.619905072" name="Language standard" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard.value.gnu17" valueType="enumerated"/>
|
||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.2081727264" 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.599097043" name="MCU G++ Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler">
|
||||
@@ -72,6 +73,7 @@
|
||||
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2"/>
|
||||
<listOptionValue builtIn="false" value="../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F"/>
|
||||
</option>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.languagestandard.1552433238" name="Language standard" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.languagestandard" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.languagestandard.value.gnupp17" valueType="enumerated"/>
|
||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.input.cpp.769840919" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.input.cpp"/>
|
||||
</tool>
|
||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.365455380" name="MCU GCC Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker"/>
|
||||
@@ -94,8 +96,8 @@
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
|
||||
</sourceEntries>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
@@ -117,28 +119,28 @@
|
||||
<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.1354091413" 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.1354091413." name="/" resourcePath="">
|
||||
<toolChain id="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release.203679149" name="MCU ARM GCC" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release">
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.603735873" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" useByScannerDiscovery="true" value="STM32F407VGTx" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.785956982" 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.798299296" 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.fpu.1529609330" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.fpu" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.fpu.value.fpv4-sp-d16" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.1358890514" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.value.hard" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.661521077" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="STM32F407G-DISC1" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.846236130" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.6 || Release || false || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.option.toolchain.value.workspace || STM32F407G-DISC1 || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Core/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32F4xx/Include | ../Drivers/CMSIS/Include | ../Middlewares/Third_Party/FreeRTOS/Source/include | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F || || || USE_HAL_DRIVER | STM32F407xx || || Drivers | Core/Startup | Middlewares | Core || || || ${workspace_loc:/${ProjName}/STM32F407VGTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None || || || " valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.debug.option.cpuclock.1742010714" superClass="com.st.stm32cube.ide.mcu.debug.option.cpuclock" useByScannerDiscovery="false" value="168" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu.603735873" name="MCU" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_mcu" useByScannerDiscovery="true" value="STM32F407VGTx" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_cpuid.785956982" name="CPU" 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.798299296" name="Core" 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.fpu.1529609330" name="Floating-point unit" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.fpu" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.fpu.value.fpv4-sp-d16" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.1358890514" name="Floating-point ABI" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.value.hard" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.661521077" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="STM32F407G-DISC1" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.846236130" 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.6 || Release || false || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.option.toolchain.value.workspace || STM32F407G-DISC1 || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Core/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc | ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32F4xx/Include | ../Drivers/CMSIS/Include | ../Middlewares/Third_Party/FreeRTOS/Source/include | ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 | ../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F || || || USE_HAL_DRIVER | STM32F407xx || || Drivers | Core/Startup | Middlewares | Core || || || ${workspace_loc:/${ProjName}/STM32F407VGTX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None || || || " valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.debug.option.cpuclock.1742010714" name="Cpu clock frequence" superClass="com.st.stm32cube.ide.mcu.debug.option.cpuclock" useByScannerDiscovery="false" value="168" valueType="string"/>
|
||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.1070639077" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
|
||||
<builder buildPath="${workspace_loc:/F407-SX1280-FreeRTOS}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.618395797" managedBuildOn="true" name="Gnu Make Builder.Release" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/>
|
||||
<builder buildPath="${workspace_loc:/F407-SX1280-FreeRTOS}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.618395797" 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.1850918713" 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.1395556573" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g0" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.1395556573" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.option.debuglevel.value.g0" valueType="enumerated"/>
|
||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input.1601313467" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.input"/>
|
||||
</tool>
|
||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.137812737" 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.2089025338" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.829294311" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.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.696046404" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.2089025338" name="Debug level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.debuglevel.value.g0" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.829294311" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.optimization.level.value.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.696046404" 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="STM32F407xx"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.1819725605" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.1819725605" 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/STM32F4xx_HAL_Driver/Inc"/>
|
||||
<listOptionValue builtIn="false" value="../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy"/>
|
||||
@@ -151,13 +153,13 @@
|
||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.734723628" 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.442026545" 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.1311331830" 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.g0" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.1790921717" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.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.cpp.compiler.option.definedsymbols.1946663919" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.debuglevel.1311331830" 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.g0" valueType="enumerated"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level.1790921717" name="Optimization level" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.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.cpp.compiler.option.definedsymbols.1946663919" name="Define symbols (-D)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.definedsymbols" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
|
||||
<listOptionValue builtIn="false" value="STM32F407xx"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.includepaths.1296337513" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.includepaths.1296337513" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="../Core/Inc"/>
|
||||
<listOptionValue builtIn="false" value="../Drivers/STM32F4xx_HAL_Driver/Inc"/>
|
||||
<listOptionValue builtIn="false" value="../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy"/>
|
||||
@@ -171,7 +173,7 @@
|
||||
</tool>
|
||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.687959541" name="MCU GCC Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker"/>
|
||||
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.1467581474" name="MCU G++ Linker" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker">
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.option.script.1081840162" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.option.script" value="${workspace_loc:/${ProjName}/STM32F407VGTX_FLASH.ld}" valueType="string"/>
|
||||
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.option.script.1081840162" name="Linker Script (-T)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.option.script" value="${workspace_loc:/${ProjName}/STM32F407VGTX_FLASH.ld}" valueType="string"/>
|
||||
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.input.114054377" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
@@ -189,8 +191,8 @@
|
||||
</folderInfo>
|
||||
<sourceEntries>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Core"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Drivers"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Middlewares"/>
|
||||
</sourceEntries>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
|
||||
@@ -73,6 +73,7 @@ void Error_Handler(void);
|
||||
#define PDM_OUT_GPIO_Port GPIOC
|
||||
#define B1_Pin GPIO_PIN_0
|
||||
#define B1_GPIO_Port GPIOA
|
||||
#define B1_EXTI_IRQn EXTI0_IRQn
|
||||
#define I2S3_WS_Pin GPIO_PIN_4
|
||||
#define I2S3_WS_GPIO_Port GPIOA
|
||||
#define SPI1_SCK_Pin GPIO_PIN_5
|
||||
@@ -91,8 +92,10 @@ void Error_Handler(void);
|
||||
#define RADIO_NSS_GPIO_Port GPIOB
|
||||
#define RADIO_BUSY_Pin GPIO_PIN_8
|
||||
#define RADIO_BUSY_GPIO_Port GPIOD
|
||||
#define RADIO_BUSY_EXTI_IRQn EXTI9_5_IRQn
|
||||
#define RADIO_IRQ_Pin GPIO_PIN_9
|
||||
#define RADIO_IRQ_GPIO_Port GPIOD
|
||||
#define RADIO_IRQ_EXTI_IRQn EXTI9_5_IRQn
|
||||
#define RADIO_RST_Pin GPIO_PIN_10
|
||||
#define RADIO_RST_GPIO_Port GPIOD
|
||||
#define RADIO_RXEN_Pin GPIO_PIN_11
|
||||
|
||||
@@ -52,8 +52,10 @@ void MemManage_Handler(void);
|
||||
void BusFault_Handler(void);
|
||||
void UsageFault_Handler(void);
|
||||
void DebugMon_Handler(void);
|
||||
void EXTI0_IRQHandler(void);
|
||||
void DMA1_Stream3_IRQHandler(void);
|
||||
void DMA1_Stream4_IRQHandler(void);
|
||||
void EXTI9_5_IRQHandler(void);
|
||||
void TIM7_IRQHandler(void);
|
||||
/* USER CODE BEGIN EFP */
|
||||
|
||||
|
||||
27
Core/Src/Components/EXTIHandler.hpp
Normal file
27
Core/Src/Components/EXTIHandler.hpp
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* EXTIHandler.hpp
|
||||
*
|
||||
* Created on: Feb 24, 2024
|
||||
* Author: gabriel
|
||||
*/
|
||||
|
||||
#ifndef SRC_COMPONENTS_EXTIHANDLER_HPP_
|
||||
#define SRC_COMPONENTS_EXTIHANDLER_HPP_
|
||||
|
||||
#include <inttypes.h>
|
||||
#include "GPIO_Pin.hpp"
|
||||
#include <functional>
|
||||
|
||||
class EXTIHandler {
|
||||
public:
|
||||
static EXTIHandler* getInstance(){return singletonPointer;};
|
||||
virtual int32_t registerCallback(std::function<void(void*)> callbackFunction, void* argument, GPIO_Pin* irqPin) = 0;
|
||||
virtual int32_t setCallbackEnabled(GPIO_Pin* irqPin, bool enabled) = 0;
|
||||
protected:
|
||||
std::function<void(void*)> functionArray[16];
|
||||
void* argumentArray[16];
|
||||
bool enabledArray[16];
|
||||
inline static EXTIHandler* singletonPointer;
|
||||
};
|
||||
|
||||
#endif /* SRC_COMPONENTS_EXTIHANDLER_HPP_ */
|
||||
76
Core/Src/Components/EXTIHandler_STM32.cpp
Normal file
76
Core/Src/Components/EXTIHandler_STM32.cpp
Normal file
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
* EXTIHandler_STM32.cpp
|
||||
*
|
||||
* Created on: Feb 24, 2024
|
||||
* Author: gabriel
|
||||
*/
|
||||
|
||||
#include "EXTIHandler_STM32.hpp"
|
||||
|
||||
EXTIHandler_STM32 extiHandlerStm32Singleton;
|
||||
|
||||
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){
|
||||
extiHandlerStm32Singleton.callback(GPIO_Pin);
|
||||
}
|
||||
|
||||
EXTIHandler_STM32::EXTIHandler_STM32(){
|
||||
singletonPointer = &extiHandlerStm32Singleton;
|
||||
}
|
||||
|
||||
int32_t EXTIHandler_STM32::registerCallback(
|
||||
std::function<void(void*)> callbackFunction, void* argument, GPIO_Pin* irqPin) {
|
||||
uint8_t pinNumber = ((GPIO_Pin_STM32*)irqPin)->getPin();
|
||||
functionArray[pinNumber] = callbackFunction;
|
||||
argumentArray[pinNumber] = argument;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int32_t EXTIHandler_STM32::setCallbackEnabled(GPIO_Pin *irqPin, bool enabled) {
|
||||
uint8_t pinNumber = ((GPIO_Pin_STM32*)irqPin)->getPin();
|
||||
enabledArray[pinNumber] = enabled;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EXTIHandler_STM32::callback(uint16_t GPIO_Pin) {
|
||||
uint8_t pinNumber = gpioPinToPinNumber(GPIO_Pin);
|
||||
if(enabledArray[pinNumber]){
|
||||
functionArray[pinNumber](argumentArray[pinNumber]);
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t EXTIHandler_STM32::gpioPinToPinNumber(uint16_t GPIO_Pin) {
|
||||
switch(GPIO_Pin){
|
||||
case GPIO_PIN_0:
|
||||
return 0;
|
||||
case GPIO_PIN_1:
|
||||
return 1;
|
||||
case GPIO_PIN_2:
|
||||
return 2;
|
||||
case GPIO_PIN_3:
|
||||
return 3;
|
||||
case GPIO_PIN_4:
|
||||
return 4;
|
||||
case GPIO_PIN_5:
|
||||
return 5;
|
||||
case GPIO_PIN_6:
|
||||
return 6;
|
||||
case GPIO_PIN_7:
|
||||
return 7;
|
||||
case GPIO_PIN_8:
|
||||
return 8;
|
||||
case GPIO_PIN_9:
|
||||
return 9;
|
||||
case GPIO_PIN_10:
|
||||
return 10;
|
||||
case GPIO_PIN_11:
|
||||
return 11;
|
||||
case GPIO_PIN_12:
|
||||
return 12;
|
||||
case GPIO_PIN_13:
|
||||
return 13;
|
||||
case GPIO_PIN_14:
|
||||
return 14;
|
||||
case GPIO_PIN_15:
|
||||
return 15;
|
||||
}
|
||||
}
|
||||
24
Core/Src/Components/EXTIHandler_STM32.hpp
Normal file
24
Core/Src/Components/EXTIHandler_STM32.hpp
Normal file
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* EXTIHandler_STM32.hpp
|
||||
*
|
||||
* Created on: Feb 24, 2024
|
||||
* Author: gabriel
|
||||
*/
|
||||
|
||||
#include "EXTIHandler.hpp"
|
||||
#include "GPIO_Pin_STM32.hpp"
|
||||
|
||||
#ifndef SRC_COMPONENTS_EXTIHANDLER_STM32_HPP_
|
||||
#define SRC_COMPONENTS_EXTIHANDLER_STM32_HPP_
|
||||
|
||||
class EXTIHandler_STM32 : public EXTIHandler {
|
||||
public:
|
||||
EXTIHandler_STM32();
|
||||
int32_t registerCallback(std::function<void(void*)> callbackFunction, void* argument, GPIO_Pin* irqPin);
|
||||
int32_t setCallbackEnabled(GPIO_Pin* irqPin, bool enabled);
|
||||
void callback(uint16_t GPIO_Pin);
|
||||
private:
|
||||
uint8_t gpioPinToPinNumber(uint16_t GPIO_Pin);
|
||||
};
|
||||
|
||||
#endif /* SRC_COMPONENTS_EXTIHANDLER_STM32_HPP_ */
|
||||
@@ -43,3 +43,11 @@ int32_t GPIO_Pin_STM32::toggle() {
|
||||
HAL_GPIO_TogglePin(gpio_port, gpio_pin);
|
||||
return 0;
|
||||
}
|
||||
|
||||
GPIO_TypeDef* GPIO_Pin_STM32::getPort() {
|
||||
return gpio_port;
|
||||
}
|
||||
|
||||
uint16_t GPIO_Pin_STM32::getPin() {
|
||||
return gpio_pin;
|
||||
}
|
||||
|
||||
@@ -21,6 +21,8 @@ public:
|
||||
int32_t set();
|
||||
int32_t reset();
|
||||
int32_t toggle();
|
||||
GPIO_TypeDef* getPort();
|
||||
uint16_t getPin();
|
||||
private:
|
||||
GPIO_TypeDef* gpio_port;
|
||||
uint16_t gpio_pin;
|
||||
|
||||
37
Core/Src/Components/SSL_Comms.cpp
Normal file
37
Core/Src/Components/SSL_Comms.cpp
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* SSL_Radio.cpp
|
||||
*
|
||||
* Created on: Feb 24, 2024
|
||||
* Author: gabriel
|
||||
*/
|
||||
|
||||
#include "SSL_Comms.hpp"
|
||||
|
||||
#include "main.h"
|
||||
#include "EXTIHandler.hpp"
|
||||
#include "SX1280Lib/sx1280-hal.h"
|
||||
|
||||
extern SPI_HandleTypeDef hspi1;
|
||||
|
||||
SX1280Hal pRadio(pSpiPeripheral, pNssPin, pBusyPin, pIrqPin, pRstPin, callbacks);
|
||||
|
||||
SSL_Comms::SSL_Comms(GPIO_Pin* but) : but(but) {
|
||||
// TODO Auto-generated constructor stub
|
||||
|
||||
}
|
||||
|
||||
SSL_Comms::~SSL_Comms() {
|
||||
// TODO Auto-generated destructor stub
|
||||
}
|
||||
|
||||
void SSL_Comms::irqCallback(void *arg) {
|
||||
__NOP();
|
||||
}
|
||||
|
||||
int32_t SSL_Comms::init(){
|
||||
__NOP();
|
||||
std::function<void(void*)> callbackFunction = [this](void* ptr){irqCallback(ptr);};
|
||||
EXTIHandler::getInstance()->registerCallback(callbackFunction, nullptr, but);
|
||||
|
||||
return 0;
|
||||
}
|
||||
26
Core/Src/Components/SSL_Comms.hpp
Normal file
26
Core/Src/Components/SSL_Comms.hpp
Normal file
@@ -0,0 +1,26 @@
|
||||
/*
|
||||
* SSL_Radio.hpp
|
||||
*
|
||||
* Created on: Feb 24, 2024
|
||||
* Author: gabriel
|
||||
*/
|
||||
|
||||
#include <inttypes.h>
|
||||
#include "main.h"
|
||||
#include "GPIO_Pin.hpp"
|
||||
|
||||
#ifndef SRC_COMPONENTS_SSL_RADIO_HPP_
|
||||
#define SRC_COMPONENTS_SSL_RADIO_HPP_
|
||||
|
||||
class SSL_Comms {
|
||||
public:
|
||||
SSL_Comms(GPIO_Pin* but);
|
||||
virtual ~SSL_Comms();
|
||||
void irqCallback(void* arg);
|
||||
int32_t init();
|
||||
private:
|
||||
GPIO_Pin* but;
|
||||
|
||||
};
|
||||
|
||||
#endif /* SRC_COMPONENTS_SSL_RADIO_HPP_ */
|
||||
6
Core/Src/Components/SX1280Lib/.hg_archival.txt
Normal file
6
Core/Src/Components/SX1280Lib/.hg_archival.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
repo: 03ec2f3bde8cbc04660539d28fbdad3088d4cf57
|
||||
node: c4f110f3fe3e422c364b9351117ad552c8a76cb1
|
||||
branch: default
|
||||
latesttag: null
|
||||
latesttagdistance: 13
|
||||
changessincelatesttag: 13
|
||||
121
Core/Src/Components/SX1280Lib/RangingCorrection.cpp
Normal file
121
Core/Src/Components/SX1280Lib/RangingCorrection.cpp
Normal file
@@ -0,0 +1,121 @@
|
||||
#include "RangingCorrection.h"
|
||||
|
||||
#include "rangingCorrection/rangingCorrectionSF5BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF6BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF7BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF8BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF9BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF10BW0400.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF5BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF6BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF7BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF8BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF9BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF10BW0800.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF5BW1600.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF6BW1600.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF7BW1600.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF8BW1600.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF9BW1600.h"
|
||||
#include "rangingCorrection/rangingCorrectionSF10BW1600.h"
|
||||
|
||||
const double* RangingCorrectionPerSfBwGain[6][3] = {
|
||||
{ &RangingCorrectionSF5BW0400[0], &RangingCorrectionSF5BW0800[0], &RangingCorrectionSF5BW1600[0] },
|
||||
{ &RangingCorrectionSF6BW0400[0], &RangingCorrectionSF6BW0800[0], &RangingCorrectionSF6BW1600[0] },
|
||||
{ &RangingCorrectionSF7BW0400[0], &RangingCorrectionSF7BW0800[0], &RangingCorrectionSF7BW1600[0] },
|
||||
{ &RangingCorrectionSF8BW0400[0], &RangingCorrectionSF8BW0800[0], &RangingCorrectionSF8BW1600[0] },
|
||||
{ &RangingCorrectionSF9BW0400[0], &RangingCorrectionSF9BW0800[0], &RangingCorrectionSF9BW1600[0] },
|
||||
{ &RangingCorrectionSF10BW0400[0], &RangingCorrectionSF10BW0800[0], &RangingCorrectionSF10BW1600[0] },
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t* RangingCorrectionPolynomesPerSfBw[6][3] = {
|
||||
{ &correctionRangingPolynomeSF5BW0400, &correctionRangingPolynomeSF5BW0800, &correctionRangingPolynomeSF5BW1600 },
|
||||
{ &correctionRangingPolynomeSF6BW0400, &correctionRangingPolynomeSF6BW0800, &correctionRangingPolynomeSF6BW1600 },
|
||||
{ &correctionRangingPolynomeSF7BW0400, &correctionRangingPolynomeSF7BW0800, &correctionRangingPolynomeSF7BW1600 },
|
||||
{ &correctionRangingPolynomeSF8BW0400, &correctionRangingPolynomeSF8BW0800, &correctionRangingPolynomeSF8BW1600 },
|
||||
{ &correctionRangingPolynomeSF9BW0400, &correctionRangingPolynomeSF9BW0800, &correctionRangingPolynomeSF9BW1600 },
|
||||
{ &correctionRangingPolynomeSF10BW0400, &correctionRangingPolynomeSF10BW0800, &correctionRangingPolynomeSF10BW1600 },
|
||||
};
|
||||
|
||||
double Sx1280RangingCorrection::GetRangingCorrectionPerSfBwGain( const RadioLoRaSpreadingFactors_t sf, const RadioLoRaBandwidths_t bw, const int8_t gain){
|
||||
uint8_t sf_index, bw_index;
|
||||
|
||||
switch(sf){
|
||||
case LORA_SF5:
|
||||
sf_index = 0;
|
||||
break;
|
||||
case LORA_SF6:
|
||||
sf_index = 1;
|
||||
break;
|
||||
case LORA_SF7:
|
||||
sf_index = 2;
|
||||
break;
|
||||
case LORA_SF8:
|
||||
sf_index = 3;
|
||||
break;
|
||||
case LORA_SF9:
|
||||
sf_index = 4;
|
||||
break;
|
||||
case LORA_SF10:
|
||||
sf_index = 5;
|
||||
break;
|
||||
}
|
||||
switch(bw){
|
||||
case LORA_BW_0400:
|
||||
bw_index = 0;
|
||||
break;
|
||||
case LORA_BW_0800:
|
||||
bw_index = 1;
|
||||
break;
|
||||
case LORA_BW_1600:
|
||||
bw_index = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
double correction = RangingCorrectionPerSfBwGain[sf_index][bw_index][gain];
|
||||
return correction;
|
||||
}
|
||||
|
||||
double Sx1280RangingCorrection::ComputeRangingCorrectionPolynome(const RadioLoRaSpreadingFactors_t sf, const RadioLoRaBandwidths_t bw, const double median){
|
||||
uint8_t sf_index, bw_index;
|
||||
|
||||
switch(sf){
|
||||
case LORA_SF5:
|
||||
sf_index = 0;
|
||||
break;
|
||||
case LORA_SF6:
|
||||
sf_index = 1;
|
||||
break;
|
||||
case LORA_SF7:
|
||||
sf_index = 2;
|
||||
break;
|
||||
case LORA_SF8:
|
||||
sf_index = 3;
|
||||
break;
|
||||
case LORA_SF9:
|
||||
sf_index = 4;
|
||||
break;
|
||||
case LORA_SF10:
|
||||
sf_index = 5;
|
||||
break;
|
||||
}
|
||||
switch(bw){
|
||||
case LORA_BW_0400:
|
||||
bw_index = 0;
|
||||
break;
|
||||
case LORA_BW_0800:
|
||||
bw_index = 1;
|
||||
break;
|
||||
case LORA_BW_1600:
|
||||
bw_index = 2;
|
||||
break;
|
||||
}
|
||||
const RangingCorrectionPolynomes_t *polynome = RangingCorrectionPolynomesPerSfBw[sf_index][bw_index];
|
||||
double correctedValue = 0.0;
|
||||
double correctionCoeff = 0;
|
||||
for(uint8_t order = 0; order < polynome->order; order++){
|
||||
correctionCoeff = polynome->coefficients[order] * pow(median, polynome->order - order - 1);
|
||||
correctedValue += correctionCoeff;
|
||||
}
|
||||
return correctedValue;
|
||||
}
|
||||
12
Core/Src/Components/SX1280Lib/RangingCorrection.h
Normal file
12
Core/Src/Components/SX1280Lib/RangingCorrection.h
Normal file
@@ -0,0 +1,12 @@
|
||||
#ifndef __SX1280_RANGING_CORRECTION_H__
|
||||
#define __SX1280_RANGING_CORRECTION_H__
|
||||
|
||||
#include "sx1280.h"
|
||||
|
||||
namespace Sx1280RangingCorrection
|
||||
{
|
||||
double GetRangingCorrectionPerSfBwGain( const RadioLoRaSpreadingFactors_t sf, const RadioLoRaBandwidths_t bw, const int8_t gain);
|
||||
double ComputeRangingCorrectionPolynome(const RadioLoRaSpreadingFactors_t sf, const RadioLoRaBandwidths_t bw, const double median);
|
||||
}
|
||||
|
||||
#endif // __SX1280_RANGING_CORRECTION_H__
|
||||
310
Core/Src/Components/SX1280Lib/radio.h
Normal file
310
Core/Src/Components/SX1280Lib/radio.h
Normal file
@@ -0,0 +1,310 @@
|
||||
/*
|
||||
______ _
|
||||
/ _____) _ | |
|
||||
( (____ _____ ____ _| |_ _____ ____| |__
|
||||
\____ \| ___ | (_ _) ___ |/ ___) _ \
|
||||
_____) ) ____| | | || |_| ____( (___| | | |
|
||||
(______/|_____)_|_|_| \__)_____)\____)_| |_|
|
||||
(C)2016 Semtech
|
||||
|
||||
Description: Handling of the node configuration protocol
|
||||
|
||||
License: Revised BSD License, see LICENSE.TXT file include in the project
|
||||
|
||||
Maintainer: Miguel Luis, Gregory Cristian and Matthieu Verdy
|
||||
*/
|
||||
#ifndef __RADIO_H__
|
||||
#define __RADIO_H__
|
||||
|
||||
#include <inttypes.h>
|
||||
|
||||
/*!
|
||||
* \brief Structure describing the radio status
|
||||
*/
|
||||
typedef union
|
||||
{
|
||||
/*!
|
||||
* \brief Structure of the radio status
|
||||
*/
|
||||
struct
|
||||
{
|
||||
uint8_t CpuBusy : 1; //!< Flag for CPU radio busy
|
||||
uint8_t DmaBusy : 1; //!< Flag for DMA busy
|
||||
uint8_t CmdStatus : 3; //!< Command status
|
||||
uint8_t ChipMode : 3; //!< Chip mode
|
||||
}Fields;
|
||||
|
||||
/*!
|
||||
* \brief Serialized radio status
|
||||
*/
|
||||
uint8_t Value;
|
||||
}RadioStatus_t;
|
||||
|
||||
/*!
|
||||
* \brief Structure describing the ranging codes for callback functions
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
IRQ_RANGING_SLAVE_ERROR_CODE = 0x00,
|
||||
IRQ_RANGING_SLAVE_VALID_CODE,
|
||||
IRQ_RANGING_MASTER_ERROR_CODE,
|
||||
IRQ_RANGING_MASTER_VALID_CODE,
|
||||
}IrqRangingCode_t;
|
||||
|
||||
/*!
|
||||
* \brief Structure describing the error codes for callback functions
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
IRQ_HEADER_ERROR_CODE = 0x00,
|
||||
IRQ_SYNCWORD_ERROR_CODE,
|
||||
IRQ_CRC_ERROR_CODE,
|
||||
IRQ_RANGING_ON_LORA_ERROR_CODE,
|
||||
}IrqErrorCode_t;
|
||||
|
||||
/*!
|
||||
* \brief Structure describing the validity codes for callback function rxValid
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
IRQ_HEADER_VALID_CODE = 0x00,
|
||||
IRQ_SYNCWORD_VALID_CODE,
|
||||
}IrqValidCode_t;
|
||||
|
||||
/*!
|
||||
* \brief Represents all possible opcode understood by the radio
|
||||
*/
|
||||
typedef enum RadioCommands_u
|
||||
{
|
||||
RADIO_GET_STATUS = 0xC0,
|
||||
RADIO_WRITE_REGISTER = 0x18,
|
||||
RADIO_READ_REGISTER = 0x19,
|
||||
RADIO_WRITE_BUFFER = 0x1A,
|
||||
RADIO_READ_BUFFER = 0x1B,
|
||||
RADIO_SET_SLEEP = 0x84,
|
||||
RADIO_SET_STANDBY = 0x80,
|
||||
RADIO_SET_FS = 0xC1,
|
||||
RADIO_SET_TX = 0x83,
|
||||
RADIO_SET_RX = 0x82,
|
||||
RADIO_SET_RXDUTYCYCLE = 0x94,
|
||||
RADIO_SET_CAD = 0xC5,
|
||||
RADIO_SET_TXCONTINUOUSWAVE = 0xD1,
|
||||
RADIO_SET_TXCONTINUOUSPREAMBLE = 0xD2,
|
||||
RADIO_SET_PACKETTYPE = 0x8A,
|
||||
RADIO_GET_PACKETTYPE = 0x03,
|
||||
RADIO_SET_RFFREQUENCY = 0x86,
|
||||
RADIO_SET_TXPARAMS = 0x8E,
|
||||
RADIO_SET_CADPARAMS = 0x88,
|
||||
RADIO_SET_BUFFERBASEADDRESS = 0x8F,
|
||||
RADIO_SET_MODULATIONPARAMS = 0x8B,
|
||||
RADIO_SET_PACKETPARAMS = 0x8C,
|
||||
RADIO_GET_RXBUFFERSTATUS = 0x17,
|
||||
RADIO_GET_PACKETSTATUS = 0x1D,
|
||||
RADIO_GET_RSSIINST = 0x1F,
|
||||
RADIO_SET_DIOIRQPARAMS = 0x8D,
|
||||
RADIO_GET_IRQSTATUS = 0x15,
|
||||
RADIO_CLR_IRQSTATUS = 0x97,
|
||||
RADIO_CALIBRATE = 0x89,
|
||||
RADIO_SET_REGULATORMODE = 0x96,
|
||||
RADIO_SET_SAVECONTEXT = 0xD5,
|
||||
RADIO_SET_AUTOTX = 0x98,
|
||||
RADIO_SET_AUTOFS = 0x9E,
|
||||
RADIO_SET_LONGPREAMBLE = 0x9B,
|
||||
RADIO_SET_UARTSPEED = 0x9D,
|
||||
RADIO_SET_RANGING_ROLE = 0xA3,
|
||||
}RadioCommands_t;
|
||||
|
||||
/*!
|
||||
* \brief The radio callbacks structure
|
||||
* Holds function pointers to be called on radio interrupts
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
void ( *txDone )( void ); //!< Pointer to a function run on successful transmission
|
||||
void ( *rxDone )( void ); //!< Pointer to a function run on successful reception
|
||||
void ( *rxSyncWordDone )( void ); //!< Pointer to a function run on successful SyncWord reception
|
||||
void ( *rxHeaderDone )( void ); //!< Pointer to a function run on successful Header reception
|
||||
void ( *txTimeout )( void ); //!< Pointer to a function run on transmission timeout
|
||||
void ( *rxTimeout )( void ); //!< Pointer to a function run on reception timeout
|
||||
void ( *rxError )( IrqErrorCode_t errCode ); //!< Pointer to a function run on reception error
|
||||
void ( *rangingDone )( IrqRangingCode_t val ); //!< Pointer to a function run on ranging terminated
|
||||
void ( *cadDone )( bool cadFlag ); //!< Pointer to a function run on channel activity detected
|
||||
}RadioCallbacks_t;
|
||||
|
||||
/*!
|
||||
* \brief Class holding the basic communications with a radio
|
||||
*
|
||||
* It sets the functions to read/write registers, send commands and read/write
|
||||
* payload.
|
||||
* It also provides functions to run callback functions depending on the
|
||||
* interrupts generated from the radio.
|
||||
*/
|
||||
class Radio
|
||||
{
|
||||
protected:
|
||||
/*!
|
||||
* \brief Callback on Tx done interrupt
|
||||
*/
|
||||
void ( *txDone )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Rx done interrupt
|
||||
*/
|
||||
void ( *rxDone )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Rx SyncWord interrupt
|
||||
*/
|
||||
void ( *rxSyncWordDone )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Rx header received interrupt
|
||||
*/
|
||||
void ( *rxHeaderDone )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Tx timeout interrupt
|
||||
*/
|
||||
void ( *txTimeout )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Rx timeout interrupt
|
||||
*/
|
||||
void ( *rxTimeout )( void );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Rx error interrupt
|
||||
*
|
||||
* \param [out] errCode A code indicating the type of interrupt (SyncWord error or CRC error)
|
||||
*/
|
||||
void ( *rxError )( IrqErrorCode_t errCode );
|
||||
|
||||
/*!
|
||||
* \brief Callback on ranging done interrupt
|
||||
*
|
||||
* \param [out] val A flag indicating the type of interrupt (Master/Slave and Valid/Error)
|
||||
*/
|
||||
void ( *rangingDone )( IrqRangingCode_t val );
|
||||
|
||||
/*!
|
||||
* \brief Callback on Channel Activity Detection done interrupt
|
||||
*
|
||||
* \param [out] cadFlag Flag for channel activity detected or not
|
||||
*/
|
||||
void ( *cadDone )( bool cadFlag );
|
||||
|
||||
public:
|
||||
/*!
|
||||
* \brief Constructor for radio class
|
||||
* Sets the callbacks functions pointers
|
||||
*
|
||||
* \param [in] callbacks The structure of callbacks function pointers
|
||||
* to be called on radio interrupts
|
||||
*
|
||||
*/
|
||||
Radio( RadioCallbacks_t *callbacks )
|
||||
{
|
||||
this->txDone = callbacks->txDone;
|
||||
this->rxDone = callbacks->rxDone;
|
||||
this->rxSyncWordDone = callbacks->rxSyncWordDone;
|
||||
this->rxHeaderDone = callbacks->rxHeaderDone;
|
||||
this->txTimeout = callbacks->txTimeout;
|
||||
this->rxTimeout = callbacks->rxTimeout;
|
||||
this->rxError = callbacks->rxError;
|
||||
this->rangingDone = callbacks->rangingDone;
|
||||
this->cadDone = callbacks->cadDone;
|
||||
}
|
||||
virtual ~Radio( void ){ };
|
||||
|
||||
/*!
|
||||
* \brief Resets the radio
|
||||
*/
|
||||
virtual void Reset( void ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Gets the current radio status
|
||||
*
|
||||
* \retval status Radio status
|
||||
*/
|
||||
virtual RadioStatus_t GetStatus( void ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Writes the given command to the radio
|
||||
*
|
||||
* \param [in] opcode Command opcode
|
||||
* \param [in] buffer Command parameters byte array
|
||||
* \param [in] size Command parameters byte array size
|
||||
*/
|
||||
virtual void WriteCommand( RadioCommands_t opcode, uint8_t *buffer, uint16_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Reads the given command from the radio
|
||||
*
|
||||
* \param [in] opcode Command opcode
|
||||
* \param [in] buffer Command parameters byte array
|
||||
* \param [in] size Command parameters byte array size
|
||||
*/
|
||||
virtual void ReadCommand( RadioCommands_t opcode, uint8_t *buffer, uint16_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Writes multiple radio registers starting at address
|
||||
*
|
||||
* \param [in] address First Radio register address
|
||||
* \param [in] buffer Buffer containing the new register's values
|
||||
* \param [in] size Number of registers to be written
|
||||
*/
|
||||
virtual void WriteRegister( uint16_t address, uint8_t *buffer, uint16_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Writes the radio register at the specified address
|
||||
*
|
||||
* \param [in] address Register address
|
||||
* \param [in] value New register value
|
||||
*/
|
||||
virtual void WriteRegister( uint16_t address, uint8_t value ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Reads multiple radio registers starting at address
|
||||
*
|
||||
* \param [in] address First Radio register address
|
||||
* \param [out] buffer Buffer where to copy the registers data
|
||||
* \param [in] size Number of registers to be read
|
||||
*/
|
||||
virtual void ReadRegister( uint16_t address, uint8_t *buffer, uint16_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Reads the radio register at the specified address
|
||||
*
|
||||
* \param [in] address Register address
|
||||
*
|
||||
* \retval value The register value
|
||||
*/
|
||||
virtual uint8_t ReadRegister( uint16_t address ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Writes Radio Data Buffer with buffer of size starting at offset.
|
||||
*
|
||||
* \param [in] offset Offset where to start writing
|
||||
* \param [in] buffer Buffer pointer
|
||||
* \param [in] size Buffer size
|
||||
*/
|
||||
virtual void WriteBuffer( uint8_t offset, uint8_t *buffer, uint8_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Reads Radio Data Buffer at offset to buffer of size
|
||||
*
|
||||
* \param [in] offset Offset where to start reading
|
||||
* \param [out] buffer Buffer pointer
|
||||
* \param [in] size Buffer size
|
||||
*/
|
||||
virtual void ReadBuffer( uint8_t offset, uint8_t *buffer, uint8_t size ) = 0;
|
||||
|
||||
/*!
|
||||
* \brief Return firmware version
|
||||
*
|
||||
* \retval firmware The firmware version
|
||||
*/
|
||||
virtual uint16_t GetFirmwareVersion( void ) = 0;
|
||||
};
|
||||
|
||||
#endif // __RADIO_H__
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF10BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF10BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF10BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-15.7301,
|
||||
-6.5519,
|
||||
0.81806,
|
||||
-0.18902,
|
||||
3.4731,
|
||||
6.4486,
|
||||
6.0823,
|
||||
5.2355,
|
||||
4.3886,
|
||||
4.1826,
|
||||
4.0682,
|
||||
3.3815,
|
||||
2.8322,
|
||||
3.1527,
|
||||
2.6033,
|
||||
3.1984,
|
||||
3.0153,
|
||||
2.878,
|
||||
2.0998,
|
||||
1.6649,
|
||||
2.1913,
|
||||
2.1913,
|
||||
2.0998,
|
||||
1.7336,
|
||||
1.6878,
|
||||
1.6878,
|
||||
1.8709,
|
||||
2.054,
|
||||
2.0082,
|
||||
1.6878,
|
||||
1.5963,
|
||||
1.5047,
|
||||
1.8251,
|
||||
1.7794,
|
||||
1.7794,
|
||||
1.9167,
|
||||
1.6878,
|
||||
1.7336,
|
||||
2.0082,
|
||||
2.2829,
|
||||
1.9625,
|
||||
1.8709,
|
||||
2.3745,
|
||||
2.054,
|
||||
3.5189,
|
||||
3.4731,
|
||||
3.1984,
|
||||
3.8393,
|
||||
4.3886,
|
||||
3.8393,
|
||||
4.1597,
|
||||
4.3886,
|
||||
4.6633,
|
||||
4.8006,
|
||||
4.5717,
|
||||
4.4802,
|
||||
4.709,
|
||||
4.709,
|
||||
4.709,
|
||||
4.6633,
|
||||
4.8922,
|
||||
6.0823,
|
||||
6.4486,
|
||||
6.4486,
|
||||
7.2725,
|
||||
7.1352,
|
||||
7.2725,
|
||||
7.2267,
|
||||
7.2725,
|
||||
6.9979,
|
||||
7.181,
|
||||
7.4556,
|
||||
7.9134,
|
||||
7.7761,
|
||||
7.7761,
|
||||
8.2338,
|
||||
7.9134,
|
||||
8.2338,
|
||||
8.0965,
|
||||
8.4169,
|
||||
8.9205,
|
||||
8.6916,
|
||||
8.6458,
|
||||
9.6071,
|
||||
9.1494,
|
||||
8.5085,
|
||||
8.1423,
|
||||
8.9205,
|
||||
8.9663,
|
||||
9.0578,
|
||||
9.424,
|
||||
9.2867,
|
||||
9.012,
|
||||
9.6529,
|
||||
9.9733,
|
||||
9.6529,
|
||||
9.6987,
|
||||
10.0191,
|
||||
9.5156,
|
||||
9.2409,
|
||||
9.836,
|
||||
9.5156,
|
||||
9.6529,
|
||||
10.248,
|
||||
9.9733,
|
||||
9.6529,
|
||||
10.2022,
|
||||
10.2022,
|
||||
10.1564,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
7.3183,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF10BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
-2.5249e-10,
|
||||
4.1465e-08,
|
||||
-2.1035e-07,
|
||||
-0.00023649,
|
||||
0.012744,
|
||||
0.64066,
|
||||
0.84731,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF10BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
0.60062,
|
||||
1.4818,
|
||||
3.2328,
|
||||
2.6262,
|
||||
2.054,
|
||||
2.6262,
|
||||
1.5619,
|
||||
1.9281,
|
||||
2.2943,
|
||||
1.4132,
|
||||
1.4589,
|
||||
1.4475,
|
||||
1.9625,
|
||||
1.7565,
|
||||
1.5505,
|
||||
1.8709,
|
||||
1.9167,
|
||||
1.8709,
|
||||
1.6191,
|
||||
1.6649,
|
||||
1.6878,
|
||||
1.5963,
|
||||
1.7794,
|
||||
1.9052,
|
||||
1.8251,
|
||||
1.7336,
|
||||
1.5734,
|
||||
1.5047,
|
||||
1.7336,
|
||||
1.848,
|
||||
1.7107,
|
||||
1.642,
|
||||
1.7107,
|
||||
1.7565,
|
||||
1.5734,
|
||||
1.5963,
|
||||
1.5734,
|
||||
1.7794,
|
||||
1.7336,
|
||||
1.6878,
|
||||
1.6878,
|
||||
1.7107,
|
||||
1.8022,
|
||||
1.7336,
|
||||
2.4431,
|
||||
1.7565,
|
||||
1.7565,
|
||||
3.4044,
|
||||
3.6333,
|
||||
3.8622,
|
||||
3.5646,
|
||||
3.6104,
|
||||
3.5646,
|
||||
3.6333,
|
||||
3.5189,
|
||||
3.6791,
|
||||
3.7935,
|
||||
3.7249,
|
||||
3.7706,
|
||||
3.9537,
|
||||
3.8965,
|
||||
3.6562,
|
||||
3.7706,
|
||||
4.4115,
|
||||
5.4758,
|
||||
6.2654,
|
||||
6.5401,
|
||||
6.563,
|
||||
6.7003,
|
||||
6.8376,
|
||||
6.8148,
|
||||
6.8148,
|
||||
6.8148,
|
||||
7.0436,
|
||||
7.1352,
|
||||
7.3641,
|
||||
7.387,
|
||||
7.4785,
|
||||
7.6158,
|
||||
7.5701,
|
||||
7.593,
|
||||
7.5701,
|
||||
7.7303,
|
||||
7.9134,
|
||||
7.9134,
|
||||
7.9592,
|
||||
8.1194,
|
||||
8.3025,
|
||||
8.3712,
|
||||
8.5543,
|
||||
8.8976,
|
||||
8.8747,
|
||||
9.012,
|
||||
9.1036,
|
||||
9.0578,
|
||||
9.012,
|
||||
9.1494,
|
||||
9.1036,
|
||||
9.218,
|
||||
9.218,
|
||||
9.218,
|
||||
9.2638,
|
||||
9.1951,
|
||||
9.1265,
|
||||
9.3096,
|
||||
9.2638,
|
||||
9.2752,
|
||||
9.2638,
|
||||
9.2409,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
8.9777,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF10BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
4.9932e-11,
|
||||
-5.5685e-08,
|
||||
1.0616e-05,
|
||||
-0.00070018,
|
||||
0.017218,
|
||||
0.70178,
|
||||
0.65429,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF5BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF5BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF5BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
629.5565,
|
||||
-3.5078,
|
||||
-7.8566,
|
||||
-5.2244,
|
||||
1.7336,
|
||||
1.7565,
|
||||
1.7794,
|
||||
2.2829,
|
||||
1.7794,
|
||||
2.0998,
|
||||
1.5047,
|
||||
1.5047,
|
||||
1.6878,
|
||||
1.7336,
|
||||
1.1843,
|
||||
1.7794,
|
||||
0.95539,
|
||||
0.68073,
|
||||
0.40607,
|
||||
0.58918,
|
||||
0.31452,
|
||||
0.36029,
|
||||
0.22296,
|
||||
0.22296,
|
||||
0.22296,
|
||||
-0.09747,
|
||||
0.085636,
|
||||
0.17719,
|
||||
0.13141,
|
||||
-0.051693,
|
||||
-0.14325,
|
||||
-0.005917,
|
||||
-0.051693,
|
||||
0.17719,
|
||||
0.085636,
|
||||
-0.09747,
|
||||
0.085636,
|
||||
0.039859,
|
||||
0.039859,
|
||||
0.86383,
|
||||
1.1843,
|
||||
0.90961,
|
||||
0.40607,
|
||||
1.8251,
|
||||
2.5576,
|
||||
2.3287,
|
||||
2.878,
|
||||
2.6949,
|
||||
2.7407,
|
||||
3.4731,
|
||||
4.709,
|
||||
1.5505,
|
||||
3.3815,
|
||||
1.8709,
|
||||
3.1984,
|
||||
1.7107,
|
||||
3.8393,
|
||||
4.9379,
|
||||
5.3957,
|
||||
5.5559,
|
||||
4.6633,
|
||||
5.9221,
|
||||
5.4186,
|
||||
6.7232,
|
||||
6.3112,
|
||||
6.0366,
|
||||
6.2654,
|
||||
6.5859,
|
||||
5.945,
|
||||
6.1739,
|
||||
6.1739,
|
||||
6.6088,
|
||||
6.9063,
|
||||
6.1281,
|
||||
6.7232,
|
||||
6.0595,
|
||||
6.4028,
|
||||
6.8148,
|
||||
6.7232,
|
||||
7.3183,
|
||||
7.3412,
|
||||
7.4099,
|
||||
7.5472,
|
||||
7.9592,
|
||||
8.5085,
|
||||
8.4398,
|
||||
8.5543,
|
||||
8.7374,
|
||||
9.3325,
|
||||
6.7461,
|
||||
7.3641,
|
||||
9.9276,
|
||||
8.1423,
|
||||
7.6158,
|
||||
8.2338,
|
||||
8.0507,
|
||||
8.1881,
|
||||
8.1881,
|
||||
8.0049,
|
||||
7.9134,
|
||||
8.9205,
|
||||
8.5085,
|
||||
8.394,
|
||||
8.0278,
|
||||
8.0965,
|
||||
7.8218,
|
||||
7.4327,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
7.1581,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF5BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
1.2982e-09,
|
||||
-4.2047e-07,
|
||||
4.7657e-05,
|
||||
-0.002194,
|
||||
0.033782,
|
||||
0.94647,
|
||||
2.0949,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF5BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1406.2441,
|
||||
1117.441,
|
||||
183.2598,
|
||||
7.4327,
|
||||
3.7821,
|
||||
2.9238,
|
||||
2.9467,
|
||||
3.2671,
|
||||
3.0611,
|
||||
2.26,
|
||||
2.5461,
|
||||
2.1913,
|
||||
2.1913,
|
||||
2.1456,
|
||||
2.3745,
|
||||
2.3287,
|
||||
2.2371,
|
||||
2.1685,
|
||||
2.2371,
|
||||
2.1456,
|
||||
2.3058,
|
||||
2.054,
|
||||
2.157,
|
||||
2.2142,
|
||||
2.1685,
|
||||
2.2371,
|
||||
2.2371,
|
||||
2.26,
|
||||
2.2142,
|
||||
2.2371,
|
||||
2.3058,
|
||||
2.1913,
|
||||
2.054,
|
||||
2.0769,
|
||||
2.2829,
|
||||
1.9854,
|
||||
2.0998,
|
||||
2.1913,
|
||||
2.3058,
|
||||
2.8093,
|
||||
3.1069,
|
||||
3.9995,
|
||||
3.8851,
|
||||
4.6862,
|
||||
4.6061,
|
||||
4.2513,
|
||||
4.3199,
|
||||
4.8464,
|
||||
4.6175,
|
||||
4.7319,
|
||||
4.8235,
|
||||
4.7548,
|
||||
5.0066,
|
||||
5.4186,
|
||||
6.151,
|
||||
6.2197,
|
||||
6.6088,
|
||||
7.2039,
|
||||
7.4327,
|
||||
7.6158,
|
||||
7.9134,
|
||||
7.8218,
|
||||
7.6387,
|
||||
7.6845,
|
||||
7.284,
|
||||
7.4327,
|
||||
7.5472,
|
||||
7.593,
|
||||
7.4327,
|
||||
8.0965,
|
||||
7.9134,
|
||||
7.4556,
|
||||
7.7532,
|
||||
7.8905,
|
||||
8.2796,
|
||||
8.4169,
|
||||
8.4398,
|
||||
8.6,
|
||||
8.8289,
|
||||
8.9663,
|
||||
9.6529,
|
||||
9.7902,
|
||||
10.1793,
|
||||
9.6758,
|
||||
9.7902,
|
||||
9.6987,
|
||||
9.5842,
|
||||
9.5156,
|
||||
9.4927,
|
||||
9.4469,
|
||||
9.5842,
|
||||
9.5156,
|
||||
9.5385,
|
||||
9.5156,
|
||||
9.0349,
|
||||
9.0349,
|
||||
9.0349,
|
||||
9.3554,
|
||||
9.1951,
|
||||
9.5385,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
8.7488,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF5BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
5.2651e-10,
|
||||
-2.2875e-07,
|
||||
3.4135e-05,
|
||||
-0.00215,
|
||||
0.056288,
|
||||
0.307,
|
||||
0.86706,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF6BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF6BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF6BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-26.0984,
|
||||
-7.8795,
|
||||
3.9309,
|
||||
1.8709,
|
||||
0.085636,
|
||||
1.7794,
|
||||
1.8938,
|
||||
2.0082,
|
||||
2.6033,
|
||||
2.3516,
|
||||
2.5576,
|
||||
2.6033,
|
||||
1.6878,
|
||||
1.5276,
|
||||
1.7336,
|
||||
1.5963,
|
||||
1.8709,
|
||||
2.054,
|
||||
1.642,
|
||||
1.23,
|
||||
1.0927,
|
||||
1.0927,
|
||||
1.23,
|
||||
1.0012,
|
||||
0.86383,
|
||||
0.86383,
|
||||
0.63495,
|
||||
0.7265,
|
||||
1.1614,
|
||||
1.1385,
|
||||
0.81806,
|
||||
0.70362,
|
||||
0.77228,
|
||||
1.0469,
|
||||
0.95539,
|
||||
1.0927,
|
||||
1.0469,
|
||||
1.0012,
|
||||
0.86383,
|
||||
1.0012,
|
||||
0.86383,
|
||||
1.1385,
|
||||
1.0012,
|
||||
1.3216,
|
||||
2.4202,
|
||||
2.9695,
|
||||
3.1984,
|
||||
3.29,
|
||||
3.0153,
|
||||
2.878,
|
||||
3.1984,
|
||||
3.0153,
|
||||
3.0382,
|
||||
3.1069,
|
||||
2.878,
|
||||
2.878,
|
||||
2.878,
|
||||
3.0153,
|
||||
3.8393,
|
||||
5.4872,
|
||||
5.8992,
|
||||
6.0823,
|
||||
6.0366,
|
||||
6.0366,
|
||||
6.0823,
|
||||
6.0366,
|
||||
6.4486,
|
||||
6.4028,
|
||||
6.2883,
|
||||
6.4028,
|
||||
6.357,
|
||||
6.9521,
|
||||
7.181,
|
||||
7.181,
|
||||
7.0894,
|
||||
7.2267,
|
||||
7.0894,
|
||||
7.181,
|
||||
7.6158,
|
||||
7.8676,
|
||||
7.7303,
|
||||
8.0049,
|
||||
7.9592,
|
||||
8.2796,
|
||||
8.4169,
|
||||
8.5085,
|
||||
8.5543,
|
||||
8.5543,
|
||||
9.2409,
|
||||
9.1494,
|
||||
8.7831,
|
||||
8.6458,
|
||||
8.6,
|
||||
8.6916,
|
||||
8.6458,
|
||||
8.7374,
|
||||
8.7374,
|
||||
8.6458,
|
||||
8.4627,
|
||||
8.4169,
|
||||
8.4398,
|
||||
8.3712,
|
||||
8.4627,
|
||||
8.3254,
|
||||
8.2338,
|
||||
8.0507,
|
||||
8.0049,
|
||||
7.8218,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
5.327,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF6BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
7.332e-10,
|
||||
-2.6601e-07,
|
||||
3.3492e-05,
|
||||
-0.0017251,
|
||||
0.0325,
|
||||
0.75862,
|
||||
0.76234,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF6BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
5.1897,
|
||||
3.4159,
|
||||
1.642,
|
||||
3.29,
|
||||
2.5232,
|
||||
2.3516,
|
||||
2.7178,
|
||||
2.2829,
|
||||
2.363,
|
||||
2.4202,
|
||||
2.6949,
|
||||
2.5576,
|
||||
2.5347,
|
||||
2.3516,
|
||||
2.1456,
|
||||
2.0769,
|
||||
2.0311,
|
||||
2.3058,
|
||||
2.0769,
|
||||
2.054,
|
||||
2.2142,
|
||||
2.1227,
|
||||
2.1913,
|
||||
2.0769,
|
||||
2.0998,
|
||||
2.0998,
|
||||
2.0998,
|
||||
2.1227,
|
||||
2.1227,
|
||||
2.054,
|
||||
2.0998,
|
||||
2.1456,
|
||||
2.1341,
|
||||
2.0998,
|
||||
2.1913,
|
||||
2.5118,
|
||||
2.5576,
|
||||
2.2829,
|
||||
2.1913,
|
||||
2.2371,
|
||||
2.3287,
|
||||
2.3516,
|
||||
3.7706,
|
||||
4.3199,
|
||||
4.2284,
|
||||
4.6633,
|
||||
3.8393,
|
||||
6.1968,
|
||||
4.0453,
|
||||
4.7319,
|
||||
5.4186,
|
||||
6.1052,
|
||||
6.8071,
|
||||
7.509,
|
||||
8.2109,
|
||||
9.7673,
|
||||
10.4311,
|
||||
8.4227,
|
||||
6.4142,
|
||||
6.1739,
|
||||
6.7919,
|
||||
7.0665,
|
||||
7.2725,
|
||||
7.4327,
|
||||
7.2954,
|
||||
7.4556,
|
||||
7.387,
|
||||
7.2954,
|
||||
7.387,
|
||||
7.8905,
|
||||
7.8218,
|
||||
7.799,
|
||||
7.9821,
|
||||
8.0965,
|
||||
8.5085,
|
||||
8.7145,
|
||||
9.4927,
|
||||
10.2709,
|
||||
10.3138,
|
||||
10.3567,
|
||||
10.3996,
|
||||
10.4425,
|
||||
10.4855,
|
||||
10.5284,
|
||||
10.5713,
|
||||
10.6142,
|
||||
9.0578,
|
||||
9.424,
|
||||
9.9047,
|
||||
9.2752,
|
||||
9.1951,
|
||||
9.1722,
|
||||
9.0578,
|
||||
9.1036,
|
||||
9.012,
|
||||
9.0807,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
8.5772,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF6BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
-4.0868e-11,
|
||||
-3.4304e-08,
|
||||
8.0824e-06,
|
||||
-0.00046919,
|
||||
0.0041892,
|
||||
1.0182,
|
||||
0.63995,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF7BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF7BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF7BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
0.81806,
|
||||
-2.2261,
|
||||
1.8251,
|
||||
3.2442,
|
||||
2.5347,
|
||||
3.8851,
|
||||
3.4273,
|
||||
3.0268,
|
||||
2.6262,
|
||||
2.5118,
|
||||
3.4044,
|
||||
2.6949,
|
||||
2.7864,
|
||||
2.5118,
|
||||
2.7178,
|
||||
2.8322,
|
||||
2.8322,
|
||||
2.7864,
|
||||
3.5646,
|
||||
3.0153,
|
||||
3.1069,
|
||||
3.1069,
|
||||
2.9695,
|
||||
2.6949,
|
||||
2.7407,
|
||||
2.6033,
|
||||
2.5118,
|
||||
2.6033,
|
||||
2.1456,
|
||||
2.0082,
|
||||
2.3058,
|
||||
2.054,
|
||||
1.7336,
|
||||
1.8709,
|
||||
1.6878,
|
||||
1.6878,
|
||||
2.0082,
|
||||
2.1456,
|
||||
2.054,
|
||||
2.1913,
|
||||
2.1456,
|
||||
2.2371,
|
||||
2.0998,
|
||||
2.0082,
|
||||
2.0998,
|
||||
2.7864,
|
||||
4.0682,
|
||||
4.114,
|
||||
4.0682,
|
||||
3.9309,
|
||||
4.0224,
|
||||
3.702,
|
||||
3.7477,
|
||||
3.6562,
|
||||
3.6562,
|
||||
3.6104,
|
||||
3.702,
|
||||
3.5646,
|
||||
3.5189,
|
||||
4.1597,
|
||||
5.3728,
|
||||
5.8077,
|
||||
6.0366,
|
||||
5.8992,
|
||||
5.0753,
|
||||
6.6317,
|
||||
6.4943,
|
||||
6.3112,
|
||||
6.2654,
|
||||
6.6774,
|
||||
6.9979,
|
||||
7.0894,
|
||||
7.593,
|
||||
7.8218,
|
||||
7.6158,
|
||||
7.7303,
|
||||
7.2267,
|
||||
7.8218,
|
||||
7.4099,
|
||||
7.7303,
|
||||
7.9134,
|
||||
8.4627,
|
||||
8.7374,
|
||||
8.7831,
|
||||
8.6458,
|
||||
8.6916,
|
||||
8.8747,
|
||||
8.7374,
|
||||
8.6916,
|
||||
8.8747,
|
||||
9.2409,
|
||||
9.4698,
|
||||
9.6071,
|
||||
9.3325,
|
||||
9.218,
|
||||
9.424,
|
||||
9.2409,
|
||||
9.1036,
|
||||
9.2409,
|
||||
9.1951,
|
||||
8.9663,
|
||||
9.1494,
|
||||
9.0578,
|
||||
9.1494,
|
||||
9.1036,
|
||||
9.0578,
|
||||
9.1036,
|
||||
9.2409,
|
||||
9.1036,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
10.2938,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF7BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
1.1319e-09,
|
||||
-4.0746e-07,
|
||||
5.2135e-05,
|
||||
-0.002826,
|
||||
0.060466,
|
||||
0.47938,
|
||||
1.0562,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF7BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-1.7225,
|
||||
-0.94433,
|
||||
0.016971,
|
||||
0.57773,
|
||||
1.1385,
|
||||
1.5047,
|
||||
1.6649,
|
||||
1.6535,
|
||||
1.5963,
|
||||
1.8022,
|
||||
1.5963,
|
||||
1.5161,
|
||||
1.5963,
|
||||
1.4818,
|
||||
1.5963,
|
||||
1.2529,
|
||||
1.4132,
|
||||
1.2987,
|
||||
1.3903,
|
||||
1.3788,
|
||||
1.3674,
|
||||
1.2987,
|
||||
1.4818,
|
||||
1.3903,
|
||||
1.4589,
|
||||
1.3903,
|
||||
1.4818,
|
||||
1.4475,
|
||||
1.5505,
|
||||
1.5505,
|
||||
1.436,
|
||||
1.4818,
|
||||
1.5505,
|
||||
1.6191,
|
||||
1.5276,
|
||||
1.6649,
|
||||
1.7336,
|
||||
1.5734,
|
||||
1.6191,
|
||||
1.7107,
|
||||
1.5734,
|
||||
1.7336,
|
||||
1.5963,
|
||||
1.642,
|
||||
2.2371,
|
||||
3.702,
|
||||
3.6791,
|
||||
3.4731,
|
||||
3.5418,
|
||||
3.4502,
|
||||
3.5189,
|
||||
3.5875,
|
||||
3.5646,
|
||||
3.5418,
|
||||
3.4273,
|
||||
3.4273,
|
||||
3.6562,
|
||||
3.599,
|
||||
3.6333,
|
||||
4.4802,
|
||||
5.2469,
|
||||
5.0981,
|
||||
4.8693,
|
||||
5.4415,
|
||||
6.1968,
|
||||
6.5859,
|
||||
6.6545,
|
||||
6.5172,
|
||||
6.5401,
|
||||
6.769,
|
||||
7.4327,
|
||||
7.0665,
|
||||
7.0894,
|
||||
7.2039,
|
||||
7.0208,
|
||||
7.3412,
|
||||
7.4556,
|
||||
7.387,
|
||||
7.6387,
|
||||
7.9592,
|
||||
8.0164,
|
||||
8.1423,
|
||||
7.8447,
|
||||
8.2796,
|
||||
8.4398,
|
||||
8.5543,
|
||||
8.4398,
|
||||
8.7145,
|
||||
8.9891,
|
||||
8.6458,
|
||||
8.6916,
|
||||
8.6687,
|
||||
8.6229,
|
||||
8.7603,
|
||||
8.8747,
|
||||
8.7374,
|
||||
8.6687,
|
||||
8.5772,
|
||||
8.5543,
|
||||
8.5543,
|
||||
8.4856,
|
||||
8.4627,
|
||||
8.7145,
|
||||
8.806,
|
||||
8.7603,
|
||||
7.3412,
|
||||
8.0965,
|
||||
4.2284,
|
||||
16.3248,
|
||||
16.5422,
|
||||
16.5422,
|
||||
15.9471,
|
||||
16.1989,
|
||||
15.8785,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
15.558,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF7BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
2.8727e-10,
|
||||
-1.3583e-07,
|
||||
1.9766e-05,
|
||||
-0.0010869,
|
||||
0.019294,
|
||||
0.8705,
|
||||
0.64863,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF8BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF8BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF8BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
6.5401,
|
||||
9.0578,
|
||||
8.3254,
|
||||
8.7145,
|
||||
7.9134,
|
||||
5.8535,
|
||||
2.9238,
|
||||
3.3586,
|
||||
3.7935,
|
||||
4.5946,
|
||||
3.3358,
|
||||
3.3815,
|
||||
2.466,
|
||||
2.2829,
|
||||
2.26,
|
||||
2.6949,
|
||||
2.5576,
|
||||
2.6949,
|
||||
2.7407,
|
||||
1.9625,
|
||||
2.6491,
|
||||
2.6262,
|
||||
2.466,
|
||||
2.466,
|
||||
2.6491,
|
||||
2.5118,
|
||||
2.6949,
|
||||
2.6033,
|
||||
2.2371,
|
||||
2.0082,
|
||||
2.4202,
|
||||
2.3745,
|
||||
2.3287,
|
||||
1.2758,
|
||||
2.3745,
|
||||
2.1456,
|
||||
2.4202,
|
||||
2.2371,
|
||||
2.1913,
|
||||
2.1913,
|
||||
2.0998,
|
||||
1.9167,
|
||||
1.7336,
|
||||
1.9625,
|
||||
2.0082,
|
||||
3.1069,
|
||||
3.5646,
|
||||
3.2442,
|
||||
2.6033,
|
||||
2.3287,
|
||||
2.466,
|
||||
3.0153,
|
||||
3.1527,
|
||||
3.5189,
|
||||
3.6562,
|
||||
4.0682,
|
||||
4.3886,
|
||||
3.9309,
|
||||
4.1597,
|
||||
4.5259,
|
||||
4.0682,
|
||||
4.2971,
|
||||
4.4802,
|
||||
6.1739,
|
||||
4.9837,
|
||||
4.8006,
|
||||
5.1668,
|
||||
5.6246,
|
||||
6.5859,
|
||||
5.5788,
|
||||
6.357,
|
||||
6.8605,
|
||||
5.8077,
|
||||
5.533,
|
||||
7.0436,
|
||||
7.2267,
|
||||
7.0436,
|
||||
6.9979,
|
||||
7.6387,
|
||||
7.5014,
|
||||
7.181,
|
||||
7.2267,
|
||||
7.2725,
|
||||
7.0894,
|
||||
7.5014,
|
||||
7.4099,
|
||||
7.181,
|
||||
7.8676,
|
||||
7.8676,
|
||||
7.8218,
|
||||
8.1423,
|
||||
8.6458,
|
||||
8.2796,
|
||||
6.9063,
|
||||
8.1881,
|
||||
8.0049,
|
||||
7.9134,
|
||||
8.8289,
|
||||
9.1951,
|
||||
9.1951,
|
||||
8.8289,
|
||||
8.8289,
|
||||
8.6916,
|
||||
9.012,
|
||||
9.1951,
|
||||
9.2867,
|
||||
9.1494,
|
||||
9.1494,
|
||||
9.1494,
|
||||
9.3782,
|
||||
9.2867,
|
||||
8.9205,
|
||||
9.0578,
|
||||
9.6071,
|
||||
9.6071,
|
||||
9.4698,
|
||||
9.3325,
|
||||
9.1951,
|
||||
8.5543,
|
||||
9.0807,
|
||||
9.6071,
|
||||
8.9205,
|
||||
8.9205,
|
||||
8.9205,
|
||||
8.9205,
|
||||
8.9205,
|
||||
8.9205,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF8BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
1.3734e-09,
|
||||
-4.8827e-07,
|
||||
6.2307e-05,
|
||||
-0.0034244,
|
||||
0.076932,
|
||||
0.31329,
|
||||
0.80983,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF8BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-14.2767,
|
||||
-8.9895,
|
||||
-3.7596,
|
||||
-2.043,
|
||||
-0.57812,
|
||||
2.7521,
|
||||
6.0823,
|
||||
7.0208,
|
||||
5.6017,
|
||||
5.7619,
|
||||
6.5859,
|
||||
6.5973,
|
||||
5.3156,
|
||||
3.4388,
|
||||
2.3859,
|
||||
3.8164,
|
||||
3.5189,
|
||||
3.4845,
|
||||
4.2971,
|
||||
3.7935,
|
||||
3.3815,
|
||||
3.4845,
|
||||
3.5189,
|
||||
3.5875,
|
||||
3.3815,
|
||||
3.1755,
|
||||
2.9581,
|
||||
3.0611,
|
||||
3.0153,
|
||||
2.9009,
|
||||
2.8093,
|
||||
3.5875,
|
||||
3.3815,
|
||||
2.7864,
|
||||
2.7407,
|
||||
2.672,
|
||||
2.7864,
|
||||
2.6949,
|
||||
2.7178,
|
||||
2.6949,
|
||||
2.7407,
|
||||
2.7864,
|
||||
2.7636,
|
||||
2.7864,
|
||||
2.8322,
|
||||
2.878,
|
||||
3.702,
|
||||
3.6562,
|
||||
3.3358,
|
||||
3.702,
|
||||
3.3815,
|
||||
3.6562,
|
||||
3.9309,
|
||||
3.8164,
|
||||
4.0911,
|
||||
4.4229,
|
||||
4.6862,
|
||||
4.6175,
|
||||
4.7548,
|
||||
4.9837,
|
||||
6.5401,
|
||||
6.0366,
|
||||
5.4644,
|
||||
5.9679,
|
||||
7.4671,
|
||||
5.6475,
|
||||
5.121,
|
||||
5.0295,
|
||||
5.9221,
|
||||
7.6845,
|
||||
7.3183,
|
||||
6.7003,
|
||||
7.9363,
|
||||
6.9979,
|
||||
6.8834,
|
||||
8.2338,
|
||||
8.1423,
|
||||
8.5085,
|
||||
8.1194,
|
||||
7.8676,
|
||||
8.0278,
|
||||
7.7761,
|
||||
8.4398,
|
||||
8.2567,
|
||||
8.2338,
|
||||
8.5543,
|
||||
8.6,
|
||||
8.5772,
|
||||
8.8175,
|
||||
9.1036,
|
||||
8.8976,
|
||||
8.8747,
|
||||
9.1722,
|
||||
9.1494,
|
||||
9.63,
|
||||
9.6071,
|
||||
9.836,
|
||||
10.0763,
|
||||
9.7673,
|
||||
9.8818,
|
||||
9.7788,
|
||||
9.7673,
|
||||
9.7444,
|
||||
9.8818,
|
||||
9.9504,
|
||||
9.9962,
|
||||
10.1107,
|
||||
10.042,
|
||||
10.042,
|
||||
10.2137,
|
||||
10.0878,
|
||||
9.9276,
|
||||
10.1107,
|
||||
9.5156,
|
||||
9.0464,
|
||||
9.3296,
|
||||
9.6128,
|
||||
9.8961,
|
||||
10.1793,
|
||||
10.1335,
|
||||
8.2796,
|
||||
8.169,
|
||||
8.0584,
|
||||
7.9477,
|
||||
7.9477,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF8BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
7.2578e-10,
|
||||
-2.8033e-07,
|
||||
3.8153e-05,
|
||||
-0.0022174,
|
||||
0.053196,
|
||||
0.45123,
|
||||
1.0199,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF9BW0400[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-5.8767, // 0
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-5.8767,
|
||||
-2.2375,
|
||||
-1.6080,
|
||||
-0.0631,
|
||||
0.9782,
|
||||
3.1984,
|
||||
3.3014,
|
||||
3.1927,
|
||||
3.4959,
|
||||
3.2842,
|
||||
3.2098,
|
||||
2.9237,
|
||||
2.9123,
|
||||
3.0038,
|
||||
2.9294,
|
||||
2.8722,
|
||||
2.7120,
|
||||
2.6033,
|
||||
2.6548,
|
||||
2.7292,
|
||||
2.5690,
|
||||
2.5575,
|
||||
2.6033,
|
||||
2.5861,
|
||||
2.5575,
|
||||
2.5232,
|
||||
2.5918,
|
||||
2.5804,
|
||||
2.4888,
|
||||
2.5232,
|
||||
2.5346,
|
||||
2.5575,
|
||||
2.5747,
|
||||
2.4774,
|
||||
2.9581,
|
||||
2.6491,
|
||||
2.6548,
|
||||
2.7177,
|
||||
2.8093,
|
||||
2.9924,
|
||||
4.2283,
|
||||
4.7204,
|
||||
4.7319,
|
||||
5.1439,
|
||||
4.9665,
|
||||
5.4557,
|
||||
5.9450,
|
||||
6.4599,
|
||||
6.9749,
|
||||
7.4899,
|
||||
7.3564,
|
||||
7.2229,
|
||||
7.0894,
|
||||
6.9559,
|
||||
6.8223,
|
||||
6.6888,
|
||||
6.5553,
|
||||
6.4218,
|
||||
6.2883,
|
||||
7.6787,
|
||||
7.9591,
|
||||
7.9019,
|
||||
7.9133,
|
||||
8.0736,
|
||||
7.9248,
|
||||
8.0221,
|
||||
8.0163,
|
||||
8.3711,
|
||||
8.3139,
|
||||
8.3597,
|
||||
8.5714,
|
||||
8.6801,
|
||||
9.0692,
|
||||
9.3553,
|
||||
9.0864,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
8.8174,
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF9BW0400 = {
|
||||
.order = 1,
|
||||
.coefficients = {1}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF9BW0800[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
39.6364,
|
||||
-53.2896,
|
||||
-35.4979,
|
||||
-17.7061,
|
||||
0.085636,
|
||||
26.9106,
|
||||
18.8654,
|
||||
10.8202,
|
||||
2.775,
|
||||
-5.2702,
|
||||
-1.6081,
|
||||
0.5434,
|
||||
5.9908,
|
||||
3.0153,
|
||||
2.6491,
|
||||
2.4202,
|
||||
4.3657,
|
||||
4.1368,
|
||||
4.2971,
|
||||
2.8322,
|
||||
3.8393,
|
||||
3.7935,
|
||||
3.4273,
|
||||
3.3358,
|
||||
3.2442,
|
||||
2.9238,
|
||||
3.1069,
|
||||
3.0611,
|
||||
2.8322,
|
||||
2.7864,
|
||||
2.878,
|
||||
2.6949,
|
||||
2.7864,
|
||||
2.8322,
|
||||
2.8322,
|
||||
2.6033,
|
||||
2.7407,
|
||||
2.6949,
|
||||
2.6491,
|
||||
2.3287,
|
||||
2.5576,
|
||||
2.6949,
|
||||
2.5576,
|
||||
2.5576,
|
||||
3.3358,
|
||||
4.1597,
|
||||
3.9309,
|
||||
3.9309,
|
||||
4.0224,
|
||||
4.2513,
|
||||
4.2513,
|
||||
4.2513,
|
||||
4.5259,
|
||||
4.4344,
|
||||
4.6633,
|
||||
4.7548,
|
||||
4.4344,
|
||||
4.6633,
|
||||
4.9379,
|
||||
4.7548,
|
||||
4.6175,
|
||||
5.121,
|
||||
5.1668,
|
||||
5.0753,
|
||||
6.8605,
|
||||
7.0436,
|
||||
7.0436,
|
||||
7.7761,
|
||||
7.6845,
|
||||
7.6845,
|
||||
7.9134,
|
||||
7.7761,
|
||||
7.8218,
|
||||
7.9592,
|
||||
7.7761,
|
||||
7.8218,
|
||||
7.9592,
|
||||
8.0507,
|
||||
8.0049,
|
||||
7.8218,
|
||||
8.0965,
|
||||
8.1881,
|
||||
8.1881,
|
||||
8.3712,
|
||||
8.8747,
|
||||
8.9205,
|
||||
8.8289,
|
||||
8.9205,
|
||||
9.012,
|
||||
9.1494,
|
||||
9.3325,
|
||||
9.2867,
|
||||
9.5156,
|
||||
9.3782,
|
||||
9.2409,
|
||||
9.2867,
|
||||
9.424,
|
||||
9.6987,
|
||||
9.8818,
|
||||
9.7444,
|
||||
9.8818,
|
||||
10.0191,
|
||||
9.9276,
|
||||
9.9733,
|
||||
10.0649,
|
||||
10.0649,
|
||||
10.0649,
|
||||
9.9276,
|
||||
10.0649,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
10.1564,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF9BW0800 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
1.0871e-10,
|
||||
-6.7614e-08,
|
||||
1.1233e-05,
|
||||
-0.00069623,
|
||||
0.016443,
|
||||
0.72006,
|
||||
0.78863,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Generated LUT and Polynomial Values
|
||||
#include "rangingCorrection_defines.h"
|
||||
|
||||
const double RangingCorrectionSF9BW1600[NUMBER_OF_FACTORS_PER_SFBW] =
|
||||
{
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
-2.8555,
|
||||
2.6262,
|
||||
1.0012,
|
||||
-0.074582,
|
||||
1.0241,
|
||||
2.0998,
|
||||
2.4431,
|
||||
2.3058,
|
||||
2.1685,
|
||||
2.6262,
|
||||
2.4202,
|
||||
2.4546,
|
||||
1.8938,
|
||||
2.2829,
|
||||
2.4431,
|
||||
2.672,
|
||||
2.5461,
|
||||
2.8093,
|
||||
2.6033,
|
||||
2.2371,
|
||||
2.26,
|
||||
2.0998,
|
||||
2.3287,
|
||||
2.3516,
|
||||
2.3058,
|
||||
2.466,
|
||||
2.3058,
|
||||
2.157,
|
||||
2.2142,
|
||||
2.3287,
|
||||
2.26,
|
||||
2.3287,
|
||||
2.2715,
|
||||
2.2371,
|
||||
2.2371,
|
||||
2.3745,
|
||||
2.3287,
|
||||
2.3287,
|
||||
2.26,
|
||||
2.1227,
|
||||
2.1227,
|
||||
2.1913,
|
||||
2.2829,
|
||||
2.3973,
|
||||
2.3058,
|
||||
2.1685,
|
||||
2.26,
|
||||
3.4731,
|
||||
4.1368,
|
||||
4.5946,
|
||||
4.3886,
|
||||
4.0911,
|
||||
4.2513,
|
||||
4.0911,
|
||||
4.1826,
|
||||
4.3886,
|
||||
4.0682,
|
||||
4.3657,
|
||||
4.3886,
|
||||
4.3428,
|
||||
4.6175,
|
||||
4.4802,
|
||||
4.4344,
|
||||
4.7777,
|
||||
4.915,
|
||||
5.6475,
|
||||
5.0981,
|
||||
7.3412,
|
||||
7.181,
|
||||
6.8605,
|
||||
7.2954,
|
||||
7.2954,
|
||||
7.2039,
|
||||
7.4785,
|
||||
7.9592,
|
||||
8.0049,
|
||||
7.9134,
|
||||
7.9592,
|
||||
8.0049,
|
||||
8.0049,
|
||||
8.1194,
|
||||
8.1194,
|
||||
8.2567,
|
||||
8.2338,
|
||||
8.1881,
|
||||
8.3712,
|
||||
8.3712,
|
||||
8.4169,
|
||||
8.8518,
|
||||
8.6,
|
||||
8.806,
|
||||
8.909,
|
||||
9.1951,
|
||||
9.4011,
|
||||
9.4469,
|
||||
9.424,
|
||||
9.527,
|
||||
9.4469,
|
||||
9.424,
|
||||
9.5156,
|
||||
9.3782,
|
||||
9.527,
|
||||
9.424,
|
||||
9.5156,
|
||||
9.5156,
|
||||
9.4011,
|
||||
9.5156,
|
||||
9.5156,
|
||||
9.4927,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
9.424,
|
||||
|
||||
};
|
||||
|
||||
const RangingCorrectionPolynomes_t correctionRangingPolynomeSF9BW1600 = {
|
||||
.order = 7,
|
||||
.coefficients = {
|
||||
6.2781e-10,
|
||||
-2.6256e-07,
|
||||
3.7632e-05,
|
||||
-0.0022408,
|
||||
0.05252,
|
||||
0.47936,
|
||||
0.46183,
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
#ifndef __RANGING_CORRECTION_DEFINES_H__
|
||||
#define __RANGING_CORRECTION_DEFINES_H__
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define NUMBER_OF_FACTORS_PER_SFBW 160
|
||||
#define MAX_POLYNOME_ORDER 10
|
||||
|
||||
typedef struct{
|
||||
const uint8_t order;
|
||||
const double coefficients[MAX_POLYNOME_ORDER];
|
||||
}RangingCorrectionPolynomes_t;
|
||||
|
||||
#endif // __RANGING_CORRECTION_DEFINES_H__
|
||||
|
||||
266
Core/Src/Components/SX1280Lib/sx1280-hal.cpp
Normal file
266
Core/Src/Components/SX1280Lib/sx1280-hal.cpp
Normal file
@@ -0,0 +1,266 @@
|
||||
/*
|
||||
______ _
|
||||
/ _____) _ | |
|
||||
( (____ _____ ____ _| |_ _____ ____| |__
|
||||
\____ \| ___ | (_ _) ___ |/ ___) _ \
|
||||
_____) ) ____| | | || |_| ____( (___| | | |
|
||||
(______/|_____)_|_|_| \__)_____)\____)_| |_|
|
||||
(C)2016 Semtech
|
||||
|
||||
Description: Handling of the node configuration protocol
|
||||
|
||||
License: Revised BSD License, see LICENSE.TXT file include in the project
|
||||
|
||||
Maintainer: Miguel Luis, Gregory Cristian and Matthieu Verdy
|
||||
*/
|
||||
#include "sx1280-hal.h"
|
||||
#include <functional>
|
||||
#include <FreeRTOS.h>
|
||||
#include <task.h>
|
||||
#include <cstring>
|
||||
|
||||
/*!
|
||||
* \brief Used to block execution waiting for low state on radio busy pin.
|
||||
* Essentially used in SPI communications
|
||||
*/
|
||||
#define WaitOnBusy( ) for(uint8_t val=0; val != 1; BUSY->read(&val));
|
||||
|
||||
/*!
|
||||
* \brief Macro used to enable and disable callback without disabling IRQ
|
||||
*/
|
||||
|
||||
#define setDioIrqEnabled( enabled ) EXTIHandler::getInstance()->setCallbackEnabled(DIO1, enabled)
|
||||
|
||||
// This code handles cases where assert_param is undefined
|
||||
#ifndef assert_param
|
||||
#define assert_param( ... )
|
||||
#endif
|
||||
|
||||
SX1280Hal::SX1280Hal( SPI_Peripheral* pSpiPeripheral, GPIO_Pin* pNssPin,
|
||||
GPIO_Pin* pBusyPin, GPIO_Pin* pIrqPin, GPIO_Pin* pRstPin,
|
||||
RadioCallbacks_t *callbacks ) :
|
||||
SX1280( callbacks ),
|
||||
RadioSpi(pSpiPeripheral),
|
||||
RadioNss( pNssPin ),
|
||||
RadioReset( pRstPin ),
|
||||
BUSY( pBusyPin ),
|
||||
DIO1( pIrqPin )
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
SX1280Hal::~SX1280Hal( void )
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
void SX1280Hal::SpiInit( void )
|
||||
{
|
||||
RadioNss->set();
|
||||
}
|
||||
|
||||
void SX1280Hal::IoIrqInit( DioIrqHandler irqHandler )
|
||||
{
|
||||
assert_param( RadioSpi != NULL );
|
||||
SpiInit( );
|
||||
|
||||
std::function<void(void*)> callbackFunction = [this, irqHandler](void* ptr){(this->*irqHandler)();};
|
||||
EXTIHandler::getInstance()->registerCallback(callbackFunction, nullptr, DIO1);
|
||||
EXTIHandler::getInstance()->setCallbackEnabled(DIO1, true);
|
||||
}
|
||||
|
||||
void SX1280Hal::Reset( void )
|
||||
{
|
||||
setDioIrqEnabled( false );
|
||||
vTaskDelay( 20 );
|
||||
RadioReset->reset();
|
||||
vTaskDelay( 50 );
|
||||
RadioReset->set();
|
||||
vTaskDelay( 20 );
|
||||
setDioIrqEnabled( true );
|
||||
}
|
||||
|
||||
void SX1280Hal::Wakeup( void )
|
||||
{
|
||||
setDioIrqEnabled( false );
|
||||
|
||||
//Don't wait for BUSY here
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[2] = {RADIO_GET_STATUS, 0};
|
||||
RadioSpi->transmit(txBuffer, 2);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
// Wait for chip to be ready.
|
||||
WaitOnBusy( );
|
||||
|
||||
setDioIrqEnabled( true );
|
||||
}
|
||||
|
||||
void SX1280Hal::WriteCommand( RadioCommands_t command, uint8_t *buffer, uint16_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[size+1];
|
||||
txBuffer[0] = command;
|
||||
memcpy(txBuffer+1, buffer, size);
|
||||
RadioSpi->transmit(txBuffer, size+1);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
if( command != RADIO_SET_SLEEP )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
}
|
||||
}
|
||||
|
||||
void SX1280Hal::ReadCommand( RadioCommands_t command, uint8_t *buffer, uint16_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
if( command == RADIO_GET_STATUS )
|
||||
{
|
||||
uint8_t txBuffer[3] = {RADIO_GET_STATUS, 0, 0};
|
||||
uint8_t rxBuffer[3];
|
||||
RadioSpi->trx(txBuffer, rxBuffer, 3);
|
||||
buffer[0] = rxBuffer[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
uint8_t txBuffer[size+2];
|
||||
uint8_t rxBuffer[size+2];
|
||||
memset(txBuffer, 0, size+2);
|
||||
txBuffer[0] = command;
|
||||
RadioSpi->trx(txBuffer, rxBuffer, size+2);
|
||||
memcpy(buffer, rxBuffer+2, size);
|
||||
}
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
WaitOnBusy( );
|
||||
}
|
||||
|
||||
void SX1280Hal::WriteRegister( uint16_t address, uint8_t *buffer, uint16_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[size+3];
|
||||
txBuffer[0] = RADIO_WRITE_REGISTER;
|
||||
txBuffer[1] = ( address & 0xFF00 ) >> 8;
|
||||
txBuffer[2] = address & 0x00FF;
|
||||
memcpy(txBuffer+3, buffer, size);
|
||||
RadioSpi->transmit(txBuffer, size+3);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
WaitOnBusy( );
|
||||
}
|
||||
|
||||
void SX1280Hal::WriteRegister( uint16_t address, uint8_t value )
|
||||
{
|
||||
WriteRegister( address, &value, 1 );
|
||||
}
|
||||
|
||||
void SX1280Hal::ReadRegister( uint16_t address, uint8_t *buffer, uint16_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[size+4];
|
||||
uint8_t rxBuffer[size+4];
|
||||
txBuffer[0] = RADIO_READ_REGISTER;
|
||||
txBuffer[1] = ( address & 0xFF00 ) >> 8;
|
||||
txBuffer[2] = address & 0x00FF;
|
||||
memset(txBuffer+3, 0, size+1);
|
||||
RadioSpi->trx(txBuffer, rxBuffer, size+4);
|
||||
memcpy(buffer, rxBuffer+4, size);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
WaitOnBusy( );
|
||||
}
|
||||
|
||||
uint8_t SX1280Hal::ReadRegister( uint16_t address )
|
||||
{
|
||||
uint8_t data;
|
||||
|
||||
ReadRegister( address, &data, 1 );
|
||||
return data;
|
||||
}
|
||||
|
||||
void SX1280Hal::WriteBuffer( uint8_t offset, uint8_t *buffer, uint8_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[size+2];
|
||||
txBuffer[0] = RADIO_WRITE_BUFFER;
|
||||
txBuffer[1] = offset;
|
||||
memcpy(txBuffer+2, buffer, size);
|
||||
RadioSpi->transmit(txBuffer, size+2);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
WaitOnBusy( );
|
||||
}
|
||||
|
||||
void SX1280Hal::ReadBuffer( uint8_t offset, uint8_t *buffer, uint8_t size )
|
||||
{
|
||||
WaitOnBusy( );
|
||||
|
||||
if( RadioSpi != NULL )
|
||||
{
|
||||
RadioSpi->take(100);
|
||||
RadioNss->reset();
|
||||
uint8_t txBuffer[size+3];
|
||||
uint8_t rxBuffer[size+3];
|
||||
txBuffer[0] = RADIO_READ_BUFFER;
|
||||
txBuffer[1] = offset;
|
||||
memset(txBuffer+2, 0, size+1);
|
||||
RadioSpi->trx(txBuffer, rxBuffer, size+3);
|
||||
memcpy(buffer, rxBuffer+3, size);
|
||||
RadioNss->set();
|
||||
RadioSpi->give();
|
||||
}
|
||||
|
||||
WaitOnBusy( );
|
||||
}
|
||||
|
||||
uint8_t SX1280Hal::GetDioStatus( void )
|
||||
{
|
||||
uint8_t inter =0;
|
||||
uint8_t retval = 0;
|
||||
DIO1->read(&retval);
|
||||
retval = retval<<1;
|
||||
BUSY->read(&inter);
|
||||
retval += inter;
|
||||
return retval;
|
||||
}
|
||||
162
Core/Src/Components/SX1280Lib/sx1280-hal.h
Normal file
162
Core/Src/Components/SX1280Lib/sx1280-hal.h
Normal file
@@ -0,0 +1,162 @@
|
||||
/*
|
||||
______ _
|
||||
/ _____) _ | |
|
||||
( (____ _____ ____ _| |_ _____ ____| |__
|
||||
\____ \| ___ | (_ _) ___ |/ ___) _ \
|
||||
_____) ) ____| | | || |_| ____( (___| | | |
|
||||
(______/|_____)_|_|_| \__)_____)\____)_| |_|
|
||||
(C)2015 Semtech
|
||||
|
||||
Description: Handling of the node configuration protocol
|
||||
|
||||
License: Revised BSD License, see LICENSE.TXT file include in the project
|
||||
|
||||
Maintainer: Miguel Luis and Gregory Cristian
|
||||
*/
|
||||
#ifndef __SX1280_HAL_H__
|
||||
#define __SX1280_HAL_H__
|
||||
|
||||
#include "sx1280.h"
|
||||
#include "../GPIO_Pin.hpp"
|
||||
#include "../SPI_Peripheral.hpp"
|
||||
#include "../EXTIHandler.hpp"
|
||||
|
||||
/*!
|
||||
* \brief Actual implementation of a SX1280 radio
|
||||
*/
|
||||
class SX1280Hal : public SX1280
|
||||
{
|
||||
public:
|
||||
/*!
|
||||
* \brief Constructor for SX1280Hal with SPI support
|
||||
*
|
||||
* Represents the physical connectivity with the radio and set callback functions on radio interrupts
|
||||
*/
|
||||
SX1280Hal( SPI_Peripheral* pSpiPeripheral, GPIO_Pin* pNssPin,
|
||||
GPIO_Pin* pBusyPin, GPIO_Pin* pIrqPin, GPIO_Pin* pRstPin,
|
||||
RadioCallbacks_t *callbacks );
|
||||
|
||||
/*!
|
||||
* \brief Destructor for SX1280Hal with UART support
|
||||
*
|
||||
* Take care of the correct destruction of the communication objects
|
||||
*/
|
||||
virtual ~SX1280Hal( void );
|
||||
|
||||
/*!
|
||||
* \brief Soft resets the radio
|
||||
*/
|
||||
virtual void Reset( void );
|
||||
|
||||
/*!
|
||||
* \brief Wakes up the radio
|
||||
*/
|
||||
virtual void Wakeup( void );
|
||||
|
||||
/*!
|
||||
* \brief Send a command that write data to the radio
|
||||
*
|
||||
* \param [in] opcode Opcode of the command
|
||||
* \param [in] buffer Buffer to be send to the radio
|
||||
* \param [in] size Size of the buffer to send
|
||||
*/
|
||||
virtual void WriteCommand( RadioCommands_t opcode, uint8_t *buffer, uint16_t size );
|
||||
|
||||
/*!
|
||||
* \brief Send a command that read data from the radio
|
||||
*
|
||||
* \param [in] opcode Opcode of the command
|
||||
* \param [out] buffer Buffer holding data from the radio
|
||||
* \param [in] size Size of the buffer
|
||||
*/
|
||||
virtual void ReadCommand( RadioCommands_t opcode, uint8_t *buffer, uint16_t size );
|
||||
|
||||
/*!
|
||||
* \brief Write data to the radio memory
|
||||
*
|
||||
* \param [in] address The address of the first byte to write in the radio
|
||||
* \param [in] buffer The data to be written in radio's memory
|
||||
* \param [in] size The number of bytes to write in radio's memory
|
||||
*/
|
||||
virtual void WriteRegister( uint16_t address, uint8_t *buffer, uint16_t size );
|
||||
|
||||
/*!
|
||||
* \brief Write a single byte of data to the radio memory
|
||||
*
|
||||
* \param [in] address The address of the first byte to write in the radio
|
||||
* \param [in] value The data to be written in radio's memory
|
||||
*/
|
||||
virtual void WriteRegister( uint16_t address, uint8_t value );
|
||||
|
||||
/*!
|
||||
* \brief Read data from the radio memory
|
||||
*
|
||||
* \param [in] address The address of the first byte to read from the radio
|
||||
* \param [out] buffer The buffer that holds data read from radio
|
||||
* \param [in] size The number of bytes to read from radio's memory
|
||||
*/
|
||||
virtual void ReadRegister( uint16_t address, uint8_t *buffer, uint16_t size );
|
||||
|
||||
/*!
|
||||
* \brief Read a single byte of data from the radio memory
|
||||
*
|
||||
* \param [in] address The address of the first byte to write in the
|
||||
* radio
|
||||
*
|
||||
* \retval value The value of the byte at the given address in
|
||||
* radio's memory
|
||||
*/
|
||||
virtual uint8_t ReadRegister( uint16_t address );
|
||||
|
||||
/*!
|
||||
* \brief Write data to the buffer holding the payload in the radio
|
||||
*
|
||||
* \param [in] offset The offset to start writing the payload
|
||||
* \param [in] buffer The data to be written (the payload)
|
||||
* \param [in] size The number of byte to be written
|
||||
*/
|
||||
virtual void WriteBuffer( uint8_t offset, uint8_t *buffer, uint8_t size );
|
||||
|
||||
/*!
|
||||
* \brief Read data from the buffer holding the payload in the radio
|
||||
*
|
||||
* \param [in] offset The offset to start reading the payload
|
||||
* \param [out] buffer A pointer to a buffer holding the data from the radio
|
||||
* \param [in] size The number of byte to be read
|
||||
*/
|
||||
virtual void ReadBuffer( uint8_t offset, uint8_t *buffer, uint8_t size );
|
||||
|
||||
/*!
|
||||
* \brief Returns the status of DIOs pins
|
||||
*
|
||||
* \retval dioStatus A byte where each bit represents a DIO state:
|
||||
* [ DIO3 | DIO2 | DIO1 | BUSY ]
|
||||
*/
|
||||
virtual uint8_t GetDioStatus( void );
|
||||
|
||||
protected:
|
||||
|
||||
SPI_Peripheral* RadioSpi; //!< The SPI object used to communicate with the radio
|
||||
GPIO_Pin* RadioNss; //!< The pin connected to Radio chip select (active low)
|
||||
GPIO_Pin* RadioReset; //!< The reset pin connected to the radio
|
||||
GPIO_Pin* RadioCtsn; //!< The Clear To Send radio pin (active low)
|
||||
|
||||
GPIO_Pin* BUSY; //!< The pin connected to BUSY
|
||||
GPIO_Pin* DIO1; //!< The pin connected to DIO1
|
||||
GPIO_Pin* DIO2; //!< The pin connected to DIO2
|
||||
GPIO_Pin* DIO3; //!< The pin connected to DIO3
|
||||
|
||||
/*!
|
||||
* \brief Initializes SPI object used to communicate with the radio
|
||||
*/
|
||||
virtual void SpiInit( void );
|
||||
|
||||
/*!
|
||||
* \brief Sets the callback functions to be run on DIO1..3 interrupt
|
||||
*
|
||||
* \param [in] irqHandler A function pointer of the function to be run on every DIO interrupt
|
||||
*/
|
||||
virtual void IoIrqInit( DioIrqHandler irqHandler );
|
||||
};
|
||||
|
||||
#endif // __SX1280_HAL_H__
|
||||
1236
Core/Src/Components/SX1280Lib/sx1280.cpp
Normal file
1236
Core/Src/Components/SX1280Lib/sx1280.cpp
Normal file
File diff suppressed because it is too large
Load Diff
1683
Core/Src/Components/SX1280Lib/sx1280.h
Normal file
1683
Core/Src/Components/SX1280Lib/sx1280.h
Normal file
File diff suppressed because it is too large
Load Diff
@@ -9,6 +9,7 @@
|
||||
#include "GPIO_Pin_STM32.hpp"
|
||||
#include "SPI_Peripheral_STM32.hpp"
|
||||
#include "BinLeds.hpp"
|
||||
#include "SSL_Comms.hpp"
|
||||
|
||||
extern SPI_HandleTypeDef hspi2;
|
||||
|
||||
@@ -20,6 +21,10 @@ BinLeds discoveryLeds((GPIO_Pin*[]){&ledOrange, &ledGreen, &ledRed, &ledBlue}, 4
|
||||
|
||||
SPI_Peripheral_STM32 spiRadio(&hspi2, 1000);
|
||||
|
||||
GPIO_Pin_STM32 blueButton(B1_GPIO_Port, B1_Pin);
|
||||
SSL_Comms radio0(&blueButton);
|
||||
|
||||
void start(){
|
||||
spiRadio.init();
|
||||
radio0.init();
|
||||
}
|
||||
|
||||
@@ -95,8 +95,8 @@ void MX_GPIO_Init(void)
|
||||
|
||||
/*Configure GPIO pin : PtPin */
|
||||
GPIO_InitStruct.Pin = B1_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_EVT_RISING;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
|
||||
GPIO_InitStruct.Pull = GPIO_PULLDOWN;
|
||||
HAL_GPIO_Init(B1_GPIO_Port, &GPIO_InitStruct);
|
||||
|
||||
/*Configure GPIO pin : PtPin */
|
||||
@@ -123,7 +123,7 @@ void MX_GPIO_Init(void)
|
||||
/*Configure GPIO pins : PDPin PDPin */
|
||||
GPIO_InitStruct.Pin = RADIO_BUSY_Pin|RADIO_IRQ_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
GPIO_InitStruct.Pull = GPIO_PULLDOWN;
|
||||
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
|
||||
|
||||
/*Configure GPIO pins : PDPin PDPin PDPin PDPin
|
||||
@@ -161,6 +161,13 @@ void MX_GPIO_Init(void)
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
HAL_GPIO_Init(MEMS_INT2_GPIO_Port, &GPIO_InitStruct);
|
||||
|
||||
/* EXTI interrupt init*/
|
||||
HAL_NVIC_SetPriority(EXTI0_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(EXTI0_IRQn);
|
||||
|
||||
HAL_NVIC_SetPriority(EXTI9_5_IRQn, 5, 0);
|
||||
HAL_NVIC_EnableIRQ(EXTI9_5_IRQn);
|
||||
|
||||
}
|
||||
|
||||
/* USER CODE BEGIN 2 */
|
||||
|
||||
@@ -161,6 +161,20 @@ void DebugMon_Handler(void)
|
||||
/* please refer to the startup file (startup_stm32f4xx.s). */
|
||||
/******************************************************************************/
|
||||
|
||||
/**
|
||||
* @brief This function handles EXTI line0 interrupt.
|
||||
*/
|
||||
void EXTI0_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN EXTI0_IRQn 0 */
|
||||
|
||||
/* USER CODE END EXTI0_IRQn 0 */
|
||||
HAL_GPIO_EXTI_IRQHandler(B1_Pin);
|
||||
/* USER CODE BEGIN EXTI0_IRQn 1 */
|
||||
|
||||
/* USER CODE END EXTI0_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles DMA1 stream3 global interrupt.
|
||||
*/
|
||||
@@ -189,6 +203,21 @@ void DMA1_Stream4_IRQHandler(void)
|
||||
/* USER CODE END DMA1_Stream4_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles EXTI line[9:5] interrupts.
|
||||
*/
|
||||
void EXTI9_5_IRQHandler(void)
|
||||
{
|
||||
/* USER CODE BEGIN EXTI9_5_IRQn 0 */
|
||||
|
||||
/* USER CODE END EXTI9_5_IRQn 0 */
|
||||
HAL_GPIO_EXTI_IRQHandler(RADIO_BUSY_Pin);
|
||||
HAL_GPIO_EXTI_IRQHandler(RADIO_IRQ_Pin);
|
||||
/* USER CODE BEGIN EXTI9_5_IRQn 1 */
|
||||
|
||||
/* USER CODE END EXTI9_5_IRQn 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function handles TIM7 global interrupt.
|
||||
*/
|
||||
|
||||
83
F407-SX1280-FreeRTOS Debug.launch
Normal file
83
F407-SX1280-FreeRTOS Debug.launch
Normal file
@@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.st.stm32cube.ide.mcu.debug.launch.launchConfigurationType">
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.access_port_id" value="0"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.cubeprog_external_loaders" value="[]"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.debug_auth_certif_path" value=""/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.debug_auth_check_enable" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.debug_auth_key_path" value=""/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.debug_auth_permission" value="debug_non_secure_L3"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.enable_live_expr" value="true"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.enable_swv" value="true"/>
|
||||
<intAttribute key="com.st.stm32cube.ide.mcu.debug.launch.formatVersion" value="2"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.ip_address_local" value="localhost"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.limit_swo_clock.enabled" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.limit_swo_clock.value" value=""/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.loadList" value="{"fItems":[{"fIsFromMainTab":true,"fPath":"Debug/F407-SX1280-FreeRTOS.elf","fProjectName":"F407-SX1280-FreeRTOS","fPerformBuild":true,"fDownload":true,"fLoadSymbols":true}]}"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.override_start_address_mode" value="default"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.remoteCommand" value="target remote"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.startServer" value="true"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.startuptab.exception.divby0" value="true"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.startuptab.exception.unaligned" value="false"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.startuptab.haltonexception" value="true"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.swd_mode" value="true"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.swv_port" value="61235"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.swv_trace_hclk" value="168000000"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.useRemoteTarget" value="true"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.launch.vector_table" value=""/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.launch.verify_flash_download" value="true"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.cti_allow_halt" value="false"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.cti_signal_halt" value="false"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.enable_logging" value="false"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.enable_max_halt_delay" value="false"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.enable_shared_stlink" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.frequency" value="0"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.halt_all_on_reset" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.log_file" value="/home/gabriel/STM32CubeIDE/workspace_1.14.0/F407-SX1280-FreeRTOS/Debug/st-link_gdbserver_log.txt"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.low_power_debug" value="disable"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.max_halt_delay" value="2"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.reset_strategy" value="connect_under_reset"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_check_serial_number" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.stlink_txt_serial_number" value=""/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlink.watchdog_config" value="none"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.debug.stlinkenable_rtos" value="true"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.debug.stlinkrestart_configurations" value="{"fVersion":1,"fItems":[{"fDisplayName":"Reset","fIsSuppressible":false,"fResetAttribute":"Software system reset","fResetStrategies":[{"fDisplayName":"Software system reset","fLaunchAttribute":"system_reset","fGdbCommands":["monitor reset\n"],"fCmdOptions":["-g"]},{"fDisplayName":"Hardware reset","fLaunchAttribute":"hardware_reset","fGdbCommands":["monitor reset hardware\n"],"fCmdOptions":["-g"]},{"fDisplayName":"Core reset","fLaunchAttribute":"core_reset","fGdbCommands":["monitor reset core\n"],"fCmdOptions":["-g"]},{"fDisplayName":"None","fLaunchAttribute":"no_reset","fGdbCommands":[],"fCmdOptions":["-g"]}],"fGdbCommandGroup":{"name":"Additional commands","commands":[]},"fStartApplication":true}]}"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.enableRtosProxy" value="true"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.rtosProxyCustomProperties" value=""/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.rtosProxyDriver" value="freertos"/>
|
||||
<booleanAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.rtosProxyDriverAuto" value="false"/>
|
||||
<stringAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.rtosProxyDriverPort" value="ARM_CM4F"/>
|
||||
<intAttribute key="com.st.stm32cube.ide.mcu.rtosproxy.rtosProxyPort" value="60000"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doHalt" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doReset" value="false"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.initCommands" value=""/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.ipAddress" value="localhost"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.jtagDeviceId" value="com.st.stm32cube.ide.mcu.debug.stlink"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.pcRegister" value=""/>
|
||||
<intAttribute key="org.eclipse.cdt.debug.gdbjtag.core.portNumber" value="61234"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.runCommands" value=""/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setPcRegister" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setResume" value="true"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setStopAt" value="true"/>
|
||||
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.stopAt" value="main"/>
|
||||
<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="arm-none-eabi-gdb"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.dsf.gdb.NON_STOP" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.dsf.gdb.UPDATE_THREADLIST_ON_SUSPEND" value="false"/>
|
||||
<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.COREFILE_PATH" value=""/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_START_MODE" value="remote"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN_SYMBOL" value="main"/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/F407-SX1280-FreeRTOS.elf"/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="F407-SX1280-FreeRTOS"/>
|
||||
<booleanAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_AUTO_ATTR" value="true"/>
|
||||
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1716726688"/>
|
||||
<booleanAttribute key="org.eclipse.debug.core.ATTR_FORCE_SYSTEM_CONSOLE_ENCODING" value="false"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/F407-SX1280-FreeRTOS"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?><memoryBlockExpressionList context="reserved-for-future-use"/>"/>
|
||||
<stringAttribute key="process_factory_id" value="com.st.stm32cube.ide.mcu.debug.launch.HardwareDebugProcessFactory"/>
|
||||
</launchConfiguration>
|
||||
@@ -29,6 +29,7 @@ FREERTOS.IPParameters=Tasks01,configUSE_NEWLIB_REENTRANT
|
||||
FREERTOS.Tasks01=defaultTask,24,128,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL
|
||||
FREERTOS.configUSE_NEWLIB_REENTRANT=1
|
||||
File.Version=6
|
||||
GPIO.groupedBy=Group By Peripherals
|
||||
I2S3.AudioFreq-Half_Duplex_Master=I2S_AUDIOFREQ_96K
|
||||
I2S3.ErrorAudioFreq=-2.34 %
|
||||
I2S3.ErrorAudioFreq-Half_Duplex_Master=0.8 %
|
||||
@@ -107,6 +108,8 @@ NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false\:false
|
||||
NVIC.DMA1_Stream3_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DMA1_Stream4_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false\:false
|
||||
NVIC.EXTI0_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.EXTI9_5_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||
NVIC.ForceEnableDMAVector=true
|
||||
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false\:false
|
||||
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false\:false
|
||||
@@ -124,8 +127,8 @@ NVIC.TimeBaseIP=TIM7
|
||||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false\:false
|
||||
PA0-WKUP.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI
|
||||
PA0-WKUP.GPIO_Label=B1 [Blue PushButton]
|
||||
PA0-WKUP.GPIO_ModeDefaultEXTI=GPIO_MODE_EVT_RISING
|
||||
PA0-WKUP.GPIO_PuPd=GPIO_NOPULL
|
||||
PA0-WKUP.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING
|
||||
PA0-WKUP.GPIO_PuPd=GPIO_PULLDOWN
|
||||
PA0-WKUP.Locked=true
|
||||
PA0-WKUP.Signal=GPXTI0
|
||||
PA10.GPIOParameters=GPIO_Speed,GPIO_PuPd,GPIO_Label,GPIO_Mode
|
||||
@@ -342,12 +345,14 @@ PD5.GPIO_Mode=GPIO_MODE_INPUT
|
||||
PD5.GPIO_PuPd=GPIO_NOPULL
|
||||
PD5.Locked=true
|
||||
PD5.Signal=GPIO_Input
|
||||
PD8.GPIOParameters=GPIO_Label
|
||||
PD8.GPIOParameters=GPIO_PuPd,GPIO_Label
|
||||
PD8.GPIO_Label=RADIO_BUSY
|
||||
PD8.GPIO_PuPd=GPIO_PULLDOWN
|
||||
PD8.Locked=true
|
||||
PD8.Signal=GPXTI8
|
||||
PD9.GPIOParameters=GPIO_Label
|
||||
PD9.GPIOParameters=GPIO_PuPd,GPIO_Label
|
||||
PD9.GPIO_Label=RADIO_IRQ
|
||||
PD9.GPIO_PuPd=GPIO_PULLDOWN
|
||||
PD9.Locked=true
|
||||
PD9.Signal=GPXTI9
|
||||
PE1.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI
|
||||
@@ -464,4 +469,5 @@ VP_SYS_VS_tim7.Mode=TIM7
|
||||
VP_SYS_VS_tim7.Signal=SYS_VS_tim7
|
||||
board=STM32F407G-DISC1
|
||||
boardIOC=true
|
||||
rtos.0.ip=FREERTOS
|
||||
isbadioc=false
|
||||
|
||||
Reference in New Issue
Block a user