Compare commits
47 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a2e4540e93 | |||
| 01c5c06494 | |||
| 59a4d9dafe | |||
| 1d8d987d22 | |||
| 5538e13e69 | |||
| 1b75ccb056 | |||
| 131051e227 | |||
| e0e116b1d1 | |||
| 9a9cf40c74 | |||
| 246052bf9c | |||
| 66229c2821 | |||
| 347259fe7e | |||
| d1b3aa9506 | |||
| 6cdecd9e87 | |||
| 56937a0780 | |||
| cb1ca49985 | |||
| 7e9dfbc4c2 | |||
| d86b008bb1 | |||
| ceac955327 | |||
| 64effd5a02 | |||
| c7d531f0a5 | |||
| 37caa92565 | |||
| 4c04c57728 | |||
| 9bc16f7687 | |||
| e11eae5302 | |||
| 2269a2b4d7 | |||
| 3ffa567f1b | |||
| de4d766ed5 | |||
| 7b5d46edff | |||
| 7399ddce01 | |||
| 7e16a54533 | |||
| 778495a07a | |||
| 527a90f732 | |||
| 4e01c27e8e | |||
| a71e456e81 | |||
| df1c1f9f7e | |||
| 06584e7d1c | |||
| 5ea5b16d89 | |||
| 10e2d12bc2 | |||
| 857388b204 | |||
| 78d788cab2 | |||
| 02185083f5 | |||
| aeca114c5f | |||
| 7b4f2b5828 | |||
| 7b075f40a3 | |||
| 6c68c67f0e | |||
| fd9f0ef321 |
+24
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="configuration_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
<instance XML_version="1.2" desc="CC2640F128" href="devices/cc2640f128.xml" id="CC2640F128" xml="cc2640f128.xml" xmlpath="devices"/>
|
||||
</platform>
|
||||
</connection>
|
||||
</configuration>
|
||||
</configurations>
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
The 'targetConfigs' folder contains target-configuration (.ccxml) files, automatically generated based
|
||||
on the device and connection settings specified in your project on the Properties > General page.
|
||||
|
||||
Please note that in automatic target-configuration management, changes to the project's device and/or
|
||||
connection settings will either modify an existing or generate a new target-configuration file. Thus,
|
||||
if you manually edit these auto-generated files, you may need to re-apply your changes. Alternatively,
|
||||
you may create your own target-configuration file for this project and manage it manually. You can
|
||||
always switch back to automatic target-configuration management by checking the "Manage the project's
|
||||
target-configuration automatically" checkbox on the project's Properties > General page.
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="configuration_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
<instance XML_version="1.2" desc="CC2640F128" href="devices/cc2640f128.xml" id="CC2640F128" xml="cc2640f128.xml" xmlpath="devices"/>
|
||||
</platform>
|
||||
</connection>
|
||||
</configuration>
|
||||
</configurations>
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
The 'targetConfigs' folder contains target-configuration (.ccxml) files, automatically generated based
|
||||
on the device and connection settings specified in your project on the Properties > General page.
|
||||
|
||||
Please note that in automatic target-configuration management, changes to the project's device and/or
|
||||
connection settings will either modify an existing or generate a new target-configuration file. Thus,
|
||||
if you manually edit these auto-generated files, you may need to re-apply your changes. Alternatively,
|
||||
you may create your own target-configuration file for this project and manage it manually. You can
|
||||
always switch back to automatic target-configuration management by checking the "Manage the project's
|
||||
target-configuration automatically" checkbox on the project's Properties > General page.
|
||||
+1
-1
@@ -9,6 +9,6 @@
|
||||
<linkerCommandFile value="cc26x0f128.cmd"/>
|
||||
<rts value="libc.a"/>
|
||||
<createSlaveProjects value=""/>
|
||||
<connection value="common/targetdb/connections/TIXDS110_Connection.xml"/>
|
||||
<connection value="common/targetdb/connections/TIXDS100v3_Dot7_Connection.xml"/>
|
||||
<isTargetManual value="false"/>
|
||||
</projectOptions>
|
||||
|
||||
+55
-55
@@ -18,8 +18,8 @@
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.rtsc.XDCtools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser;org.eclipse.cdt.core.GmakeErrorParser" id="com.ti.ccstudio.buildDefinitions.TMS470.Default.67178137" name="FlashROM" parent="com.ti.ccstudio.buildDefinitions.TMS470.Default" postbuildStep="${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out" prebuildStep="">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Default.67178137." name="/" resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.1369151231" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.223507680">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.732777020" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain.687113732" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1175214904">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1766090240" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.CC2650F128"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
@@ -34,17 +34,17 @@
|
||||
<listOptionValue builtIn="false" value="LINK_ORDER=TOOLS/ccs_linker_defines.cmd;TOOLS/cc26xx_app.cmd;"/>
|
||||
<listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.579299287" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="18.1.4.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.2112816025" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.1418617668" name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.1368914557" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.872349905" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.1023813954" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.1674413144" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.184317276" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.1068578615" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.1943600764" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.644525479" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1440160666" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="18.1.4.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug.1899549400" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug.1290729302" name="GNU Make.FlashROM" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug.721499569" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.748175460" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.SILICON_VERSION.7M3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.626419827" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CODE_STATE.16" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.647015929" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.ABI.eabi" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN.289941614" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.1253275540" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_LEVEL.4" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.728465942" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.OPT_FOR_SPEED.0" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH.1083748399" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
<listOptionValue builtIn="false" value="C:\ti\simplelink\ble_sdk_2_02_02_25\src\examples\simple_peripheral\cc26xx\app\headstage"/>
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/examples/simple_peripheral/cc26xx/app"/>
|
||||
@@ -70,7 +70,7 @@
|
||||
<listOptionValue builtIn="false" value="${SRC_BLE_CORE}/rom"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.1330623088" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE.1126030229" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="BOARD_DISPLAY_EXCLUDE_UART"/>
|
||||
<listOptionValue builtIn="false" value="POWER_SAVING"/>
|
||||
<listOptionValue builtIn="false" value="BOOSTXL_CC2650MA"/>
|
||||
@@ -86,71 +86,71 @@
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Assert_DISABLE_ALL"/>
|
||||
<listOptionValue builtIn="false" value="xdc_runtime_Log_DISABLE_ALL"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.1308360247" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.504235202" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC.105967788" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.698913237" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.1162837514" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.2135753083" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.C_DIALECT.C99" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC.710476155" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GCC" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS.1054015944" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="48"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.1399241416" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING" valueType="stringList">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING.323133680" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WARNING" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="225"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.867926379" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.980626282" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.374992114" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1890491357" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE" valueType="stringList">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.827786109" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER.1167890580" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.2012181802" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE.1145821475" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compilerID.CMD_FILE" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${SRC_EX}/config/build_components.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/build_config.opt"/>
|
||||
<listOptionValue builtIn="false" value="${ORG_PROJ_DIR}/../../ccs/config/ccs_compiler_defines.bcfg"/>
|
||||
</option>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.263445006" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1235873701" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.207268648" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.1068957263" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS.984631123" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS.1536412064" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS.955203011" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS.534126004" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.223507680" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.698430423" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE" value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.402182782" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE" value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.1628689699" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.2141951901" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE" value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.679112687" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY" valueType="libs">
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug.1175214904" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE.195741240" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.STACK_SIZE" value="256" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE.600159013" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.HEAP_SIZE" value="0" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE.1574331605" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE.664332972" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.OUTPUT_FILE" value="${ProjName}.out" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY.25625621" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.LIBRARY" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
<listOptionValue builtIn="false" value="${CC26XXWARE}/driverlib/bin/ccs/driverlib.lib"/>
|
||||
<listOptionValue builtIn="false" value="${ROM}/common_rom_releases/03282014/common_rom.symbols"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.650613345" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH.5851816" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/include"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.782343525" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS.972853444" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_SUPPRESS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="10247-D"/>
|
||||
<listOptionValue builtIn="false" value="16002-D"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.1555270082" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.16105060" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.1713299511" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.68776981" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1860389255" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on" valueType="enumerated"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.152379533" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.158095632" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.978853236" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.749876507" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER.1386058179" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO.699248925" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.1864268761" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.COMPRESS_DWARF.on" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.1562698794" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.linkerID.UNUSED_SECTION_ELIMINATION.on" valueType="enumerated"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS.1077744726" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS.198307799" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS.1247173115" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.2015106526" name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.1270425102" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.16813235" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.318851558" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL" valueType="enumerated"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.2020593432" name="ARM Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH.855423016" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.ROMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH.793625032" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.MEMWIDTH" value="8" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.395278084" superClass="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT" value="com.ti.ccstudio.buildDefinitions.TMS470_18.1.hex.OUTPUT_FORMAT.INTEL" valueType="enumerated"/>
|
||||
</tool>
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.927640565" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1908494509" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
|
||||
<tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.311958009" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.825400340" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSCC13XX_CC26XX_REPOS}"/>
|
||||
<listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/>
|
||||
</option>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.1746187707" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.884959194" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.943624305" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1521167272" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.1901654533" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value="${CG_TOOL_ROOT}" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.138005453" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.602562416" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M3" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.596219144" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.341519465" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.simplelink:CC2640F128" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1369908851" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="release" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.1800641556" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value="${CG_TOOL_ROOT}" valueType="string"/>
|
||||
<option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.2138808751" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS}"" valueType="string"/>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
|
||||
+14
-15
@@ -1,20 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<configurations XML_version="1.2" id="configurations_0">
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS110 USB Debug Probe_0" href="connections/TIXDS110_Connection.xml" id="Texas Instruments XDS110 USB Debug Probe_0" xml="TIXDS110_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds510icepick_c.xml" id="drivers" xml="tixds510icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cs_dap.xml" id="drivers" xml="tixds510cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds510cortexM.xml" id="drivers" xml="tixds510cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="1" id="Power Selection">
|
||||
<choice Name="Probe supplied power" value="1">
|
||||
<property Type="stringfield" Value="3.3" id="Voltage Level"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="0" id="JTAG Signal Isolation"/>
|
||||
<property Type="choicelist" Value="4" id="SWD Mode Settings">
|
||||
<choice Name="cJTAG (1149.7) 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="XDS110 Aux Port"/>
|
||||
<configuration XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" desc="Texas Instruments XDS100v3 USB Debug Probe_0" href="connections/TIXDS100v3_Dot7_Connection.xml" id="Texas Instruments XDS100v3 USB Debug Probe_0" xml="TIXDS100v3_Dot7_Connection.xml" xmlpath="connections"/>
|
||||
<connection XML_version="1.2" id="Texas Instruments XDS100v3 USB Debug Probe_0">
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/>
|
||||
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/>
|
||||
<property Type="choicelist" Value="2" id="The Converter Usage">
|
||||
<choice Name="Generate 1149.7 2-pin advanced modes" value="enable">
|
||||
<property Type="choicelist" Value="1" id="The Converter 1149.7 Frequency">
|
||||
<choice Name="Overclock with user specified value" value="unused">
|
||||
<property Type="choicelist" Value="5" id="-- Choose a value from 1.0MHz to 50.0MHz"/>
|
||||
</choice>
|
||||
</property>
|
||||
<property Type="choicelist" Value="5" id="The Target Scan Format"/>
|
||||
</choice>
|
||||
</property>
|
||||
<platform XML_version="1.2" id="platform_0">
|
||||
|
||||
+138
-20
@@ -137,6 +137,17 @@ static void ReadVolt(uint8_t *buf){
|
||||
ADC_read(buf);
|
||||
}
|
||||
|
||||
static void ReadVoutVolt(uint8_t *buf){
|
||||
// Read data twice since the first data we get is previous data
|
||||
ADCChannelSelect(ADC_CH_DAC);
|
||||
CPUdelay(10);
|
||||
ADC_read(buf);
|
||||
|
||||
ADCChannelSelect(ADC_CH_DAC);
|
||||
CPUdelay(10);
|
||||
ADC_read(buf);
|
||||
}
|
||||
|
||||
static void ReadCurrent(uint8_t *buf){
|
||||
// Read data twice since the first data we get is previous data
|
||||
ADCGainControl(INSTRUCTION.ADCGainLevel);
|
||||
@@ -149,17 +160,34 @@ static void ReadCurrent(uint8_t *buf){
|
||||
ADC_read(buf);
|
||||
}
|
||||
|
||||
static void ReadBatVolt(uint8_t *buf){
|
||||
// Read data twice since the first data we get is previous data
|
||||
ADCChannelSelect(ADC_CH_BAT);
|
||||
CPUdelay(10);
|
||||
ADC_read(buf);
|
||||
|
||||
ADCChannelSelect(ADC_CH_BAT);
|
||||
CPUdelay(10);
|
||||
ADC_read(buf);
|
||||
}
|
||||
|
||||
// theoretical boundary <20, 10~500, >100 (uA)
|
||||
#define GAIN_SMALL_BOUNDARY 40000 // 40 uA = 40,000,000 pA
|
||||
#define GAIN_MID_BOUNDARY1 20000 // 20 uA = 20,000,000 pA
|
||||
#define GAIN_MID_BOUNDARY2 400000 // 400 uA = 400,000,000 pA
|
||||
#define GAIN_LARGE_BOUNDARY 200000 // 200 uA = 200,000 nA
|
||||
//#define GAIN_SMALL_BOUNDARY 40000 // 40 uA = 40,000,000 pA
|
||||
//#define GAIN_MID_BOUNDARY1 20000 // 20 uA = 20,000,000 pA
|
||||
//#define GAIN_MID_BOUNDARY2 400000 // 400 uA = 400,000,000 pA
|
||||
//#define GAIN_LARGE_BOUNDARY 200000 // 200 uA = 200,000 nA
|
||||
|
||||
//#define GAIN_SMALL_BOUNDARY 8000 // 8 uA = 8,000,000 pA
|
||||
//#define GAIN_MID_BOUNDARY1 3000 // 3 uA = 3,000,000 pA
|
||||
//#define GAIN_MID_BOUNDARY2 90000 // 90 uA = 90,000,000 pA
|
||||
//#define GAIN_LARGE_BOUNDARY 70000 // 70 uA = 70,000 nA
|
||||
|
||||
/* for Elite1.4-re which 6.3kohm replaced by 10kohm */
|
||||
// theoretical boundary <40, 30~1350, >1000 (uA)
|
||||
#define GAIN_SMALL_BOUNDARY 40000 // 40 uA = 40,000,000 pA
|
||||
#define GAIN_MID_BOUNDARY1 30000 // 30 uA = 30,000,000 pA
|
||||
#define GAIN_MID_BOUNDARY2 1350000 // 1350 uA = 1350,000,000 pA
|
||||
#define GAIN_LARGE_BOUNDARY 1000000 // 1000 uA = 1000,000 nA
|
||||
|
||||
static int32_t AutoGainReadCurrent(uint8_t *buf){
|
||||
int32_t Real_Current = 0;
|
||||
@@ -169,14 +197,46 @@ static int32_t AutoGainReadCurrent(uint8_t *buf){
|
||||
}
|
||||
|
||||
if(INSTRUCTION.ADCGainLevel == GAIN_200R){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
uint8_t CurrentCount1 = 0;
|
||||
while(CurrentCount1 < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount1++;
|
||||
if(CurrentCount1 == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// switch to mid range current
|
||||
if(Real_Current < GAIN_LARGE_BOUNDARY && Real_Current > -1*GAIN_LARGE_BOUNDARY){
|
||||
INSTRUCTION.ADCGainLevel = GAIN_10K;
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
uint8_t CurrentCount = 0;
|
||||
// switch to small range current
|
||||
if (Real_Current < GAIN_MID_BOUNDARY1 && Real_Current > -1*GAIN_MID_BOUNDARY1){
|
||||
INSTRUCTION.ADCGainLevel = GAIN_200K;
|
||||
while(CurrentCount < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}else{
|
||||
CurrentCount = 0;
|
||||
INSTRUCTION.ADCGainLevel = GAIN_10K;
|
||||
while(CurrentCount < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// LED_color(DARKLED, 0x00, 0xFF, 0x00);
|
||||
|
||||
// // switch to small range current
|
||||
@@ -189,32 +249,90 @@ static int32_t AutoGainReadCurrent(uint8_t *buf){
|
||||
}
|
||||
}
|
||||
else if(INSTRUCTION.ADCGainLevel == GAIN_10K){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
uint8_t CurrentCount1 = 0;
|
||||
while(CurrentCount1 < 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount1++;
|
||||
if(CurrentCount1 == 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// switch to large range current
|
||||
if(Real_Current > GAIN_MID_BOUNDARY2 || Real_Current < -1*GAIN_MID_BOUNDARY2){
|
||||
uint8_t CurrentCount = 0;
|
||||
INSTRUCTION.ADCGainLevel = GAIN_200R;
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
while(CurrentCount < 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// switch to small range current
|
||||
else if (Real_Current < GAIN_MID_BOUNDARY1 && Real_Current > -1*GAIN_MID_BOUNDARY1){
|
||||
uint8_t CurrentCount = 0;
|
||||
INSTRUCTION.ADCGainLevel = GAIN_200K;
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
while(CurrentCount < 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 3){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(INSTRUCTION.ADCGainLevel == GAIN_200K){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
uint8_t CurrentCount1 = 0;
|
||||
while(CurrentCount1 < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount1++;
|
||||
if(CurrentCount1 == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
|
||||
// switch to mid range current
|
||||
if(Real_Current > GAIN_SMALL_BOUNDARY || Real_Current < -1*GAIN_SMALL_BOUNDARY){
|
||||
INSTRUCTION.ADCGainLevel = GAIN_10K;
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
uint8_t CurrentCount = 0;
|
||||
// switch to large range current
|
||||
if(Real_Current > GAIN_MID_BOUNDARY2 || Real_Current < -1*GAIN_MID_BOUNDARY2){
|
||||
INSTRUCTION.ADCGainLevel = GAIN_200R;
|
||||
while(CurrentCount < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}else{
|
||||
CurrentCount = 0;
|
||||
INSTRUCTION.ADCGainLevel = GAIN_10K;
|
||||
while(CurrentCount < 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
CurrentCount++;
|
||||
if(CurrentCount == 5){
|
||||
ReadCurrent(spi_ADC_rxbuf);
|
||||
Real_Current = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_CURRENT, spi_ADC_rxbuf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// switch to large range current
|
||||
// if(Real_Current > GAIN_MID_BOUNDARY2 || Real_Current < -1*GAIN_MID_BOUNDARY2){
|
||||
// INSTRUCTION.ADCGainLevel = GAIN_200R;
|
||||
|
||||
+274
-75
@@ -136,10 +136,10 @@ static uint16_t CVCurve(CVMode *CV) {
|
||||
static uint16_t DACOutCode;
|
||||
static bool direction_up; // direction_up = true, if Vfinal > Vorigin
|
||||
static bool current_direction_up; // current_direction_up = true, Vstep => positive. vice versa
|
||||
|
||||
static bool firstADCData; //firstADCdata=true,when min<x<max,cyclenumber--
|
||||
// reset origin volt at the begin
|
||||
if (DACReset) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
if (CV->_VStop > CV->_VOrigin) {
|
||||
direction_up = true;
|
||||
current_direction_up = true;
|
||||
@@ -148,125 +148,245 @@ static uint16_t CVCurve(CVMode *CV) {
|
||||
current_direction_up = false;
|
||||
}
|
||||
|
||||
DACOutCode = Usercode_Correction_to_DAC(DACUserCode);
|
||||
DACOutCode = Usercode_Correction_to_DAC(INSTRUCTION.VoltConstant);
|
||||
DAC_outputV(DACOutCode); // output VOLT_ORIGIN
|
||||
DACReset = false;
|
||||
|
||||
firstADCData = true;
|
||||
return DACOutCode;
|
||||
}
|
||||
|
||||
if (CT.StepTimeCounter == CV->_StepTime) {
|
||||
|
||||
// Decide next direction
|
||||
if (CV->_VoVi_Switch == 0x00){ //user see Vout
|
||||
if (direction_up) {
|
||||
if (DACUserCode >= CV->_VStop) {
|
||||
if (INSTRUCTION.VoltConstant >= CV->_VStop) {
|
||||
current_direction_up = false; // problem occurs when origin == 0000 final == ffff!!!!!!
|
||||
} else if (DACUserCode <= CV->_VOrigin) {
|
||||
firstADCData = false;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant <= CV->_VOrigin) {
|
||||
current_direction_up = true;
|
||||
firstADCData = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
|
||||
|
||||
else if(current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant + CV->_Step > CV->_VStop){
|
||||
current_direction_up = false;
|
||||
}
|
||||
}
|
||||
else if(!current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant - CV->_Step < CV->_VOrigin){
|
||||
current_direction_up = true;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
if (firstADCData){
|
||||
CV->_CycleNumber--;
|
||||
firstADCData = false;
|
||||
}
|
||||
|
||||
} else {
|
||||
if (DACUserCode <= CV->_VStop) {
|
||||
if (INSTRUCTION.VoltConstant < CV->_VStop) {
|
||||
current_direction_up = true; // problem occurs when origin == 0000 final == ffff!!!!!!
|
||||
} else if (DACUserCode >= CV->_VOrigin) {
|
||||
firstADCData = false;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant > CV->_VOrigin) {
|
||||
current_direction_up = false;
|
||||
firstADCData = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
else if(current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant + CV->_Step > CV->_VOrigin){
|
||||
current_direction_up = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
else if(!current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant - CV->_Step < CV->_VStop){
|
||||
current_direction_up = true;
|
||||
}
|
||||
}
|
||||
if (firstADCData){//first data =2899mv,CV->_CycleNumber--;
|
||||
CV->_CycleNumber--;
|
||||
firstADCData = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (CV->_VoVi_Switch == 0x01){ //user see Vin
|
||||
if (direction_up) {
|
||||
if (CV->MeasureVolt >= ((int32_t)(CV->_VStop) - DAC_ZERO)/5) {
|
||||
if (INSTRUCTION.VoltConstant >= CV->_VStop) {
|
||||
current_direction_up = false; // problem occurs when origin == 0000 final == ffff!!!!!!
|
||||
} else if (CV->MeasureVolt <= ((int32_t)(CV->_VOrigin) - DAC_ZERO)/5) {
|
||||
firstADCData = false;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant <= CV->_VOrigin) {
|
||||
current_direction_up = true;
|
||||
firstADCData = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
|
||||
|
||||
else if(current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant + CV->_Step > CV->_VStop){
|
||||
current_direction_up = false;
|
||||
}
|
||||
}
|
||||
else if(!current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant - CV->_Step < CV->_VOrigin){
|
||||
current_direction_up = true;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
if (firstADCData){
|
||||
CV->_CycleNumber--;
|
||||
firstADCData = false;
|
||||
}
|
||||
|
||||
} else {
|
||||
if (CV->MeasureVolt <= ((int32_t)(CV->_VStop) - DAC_ZERO)/5) {
|
||||
if (INSTRUCTION.VoltConstant < CV->_VStop) {
|
||||
current_direction_up = true; // problem occurs when origin == 0000 final == ffff!!!!!!
|
||||
} else if (CV->MeasureVolt >= ((int32_t)(CV->_VOrigin) - DAC_ZERO)/5){
|
||||
firstADCData = false;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant > CV->_VOrigin){
|
||||
current_direction_up = false;
|
||||
firstADCData = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
else if(current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant + CV->_Step > CV->_VOrigin){
|
||||
current_direction_up = false;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
else if(!current_direction_up){
|
||||
if(INSTRUCTION.VoltConstant - CV->_Step < CV->_VStop){
|
||||
current_direction_up = true;
|
||||
}
|
||||
}
|
||||
if (firstADCData){//first data =2899mv,CV->_CycleNumber--;
|
||||
CV->_CycleNumber--;
|
||||
firstADCData = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (current_direction_up == true){
|
||||
LED_color(DARKLED, 255, 0, 0);
|
||||
}
|
||||
else if (current_direction_up == false){
|
||||
LED_color(DARKLED, 255, 0, 255);
|
||||
}
|
||||
// if (current_direction_up == true){
|
||||
// LED_color(DARKLED, 255, 0, 0);
|
||||
// }
|
||||
// else if (current_direction_up == false){
|
||||
// LED_color(DARKLED, 255, 0, 255);
|
||||
// }
|
||||
|
||||
// Next output voltage
|
||||
if (CV->_VoVi_Switch == 0x00){
|
||||
if (direction_up) {
|
||||
if (current_direction_up) {
|
||||
// DACUserCode overflow ?
|
||||
if (DACUserCode + CV->_Step < DACUserCode) {
|
||||
DACUserCode = CV->_VStop;
|
||||
if (INSTRUCTION.VoltConstant + CV->_Step < INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
// reach Vfinal ?
|
||||
else if (DACUserCode + CV->_Step > CV->_VStop) {
|
||||
DACUserCode =CV->_VStop;
|
||||
else if (INSTRUCTION.VoltConstant + CV->_Step > CV->_VStop) {
|
||||
INSTRUCTION.VoltConstant =CV->_VStop;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant >= CV->_VStop){
|
||||
INSTRUCTION.VoltConstant =CV->_VStop;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode + CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant + CV->_Step;
|
||||
}
|
||||
}
|
||||
else {
|
||||
// DACUserCode underflow ?
|
||||
if (DACUserCode - CV->_Step > DACUserCode) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
if (INSTRUCTION.VoltConstant - CV->_Step > INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
|
||||
// reach Vorigin ?
|
||||
else if (DACUserCode - CV->_Step < CV->_VOrigin) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
else if (INSTRUCTION.VoltConstant - CV->_Step < CV->_VOrigin) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant <= CV->_VOrigin){
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode - CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant - CV->_Step;
|
||||
if(INSTRUCTION.VoltConstant > 60000){
|
||||
INSTRUCTION.VoltConstant = 0;
|
||||
current_direction_up = true;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (current_direction_up) {
|
||||
if (DACUserCode + CV->_Step < DACUserCode) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
|
||||
if (INSTRUCTION.VoltConstant + CV->_Step < INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (DACUserCode + CV->_Step > CV->_VOrigin) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
|
||||
else if (INSTRUCTION.VoltConstant + CV->_Step > CV->_VOrigin) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant >= CV->_VOrigin){
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode + CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant + CV->_Step;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (DACUserCode - CV->_Step > DACUserCode) {
|
||||
DACUserCode = CV->_VStop ;
|
||||
if (INSTRUCTION.VoltConstant - CV->_Step > INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop ;
|
||||
}
|
||||
else if (DACUserCode - CV->_Step < CV->_VStop) {
|
||||
DACUserCode = CV->_VStop;
|
||||
else if (INSTRUCTION.VoltConstant - CV->_Step < CV->_VStop) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
else if(INSTRUCTION.VoltConstant <= CV->_VStop){
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode - CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant - CV->_Step;
|
||||
|
||||
if(INSTRUCTION.VoltConstant > 60000){
|
||||
INSTRUCTION.VoltConstant = 0;
|
||||
current_direction_up = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -275,59 +395,92 @@ static uint16_t CVCurve(CVMode *CV) {
|
||||
if (direction_up) {
|
||||
if (current_direction_up) {
|
||||
// DACUserCode overflow ?
|
||||
if (DACUserCode + CV->_Step < DACUserCode) {
|
||||
DACUserCode = CV->_VStop;
|
||||
if (INSTRUCTION.VoltConstant + CV->_Step < INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
// reach Vfinal ?
|
||||
else if (CV->MeasureVolt + ((int32_t)(CV->_Step) - DAC_ZERO)/5 > ((int32_t)(CV->_VStop) - DAC_ZERO)/5) {
|
||||
DACUserCode =CV->_VStop;
|
||||
else if (INSTRUCTION.VoltConstant + CV->_Step > CV->_VStop) {
|
||||
INSTRUCTION.VoltConstant =CV->_VStop;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant >= CV->_VStop){
|
||||
INSTRUCTION.VoltConstant =CV->_VStop;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode + CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant + CV->_Step;
|
||||
}
|
||||
}
|
||||
else {
|
||||
// DACUserCode underflow ?
|
||||
if (DACUserCode - CV->_Step > DACUserCode) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
if (INSTRUCTION.VoltConstant - CV->_Step > INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
|
||||
// reach Vorigin ?
|
||||
else if (CV->MeasureVolt - ((int32_t)(CV->_Step) - DAC_ZERO)/5 < ((int32_t)(CV->_VOrigin) - DAC_ZERO)/5) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
else if (INSTRUCTION.VoltConstant - CV->_Step < CV->_VOrigin) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant <= CV->_VOrigin){
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode - CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant - CV->_Step;
|
||||
if(INSTRUCTION.VoltConstant > 60000){
|
||||
INSTRUCTION.VoltConstant = 0;
|
||||
current_direction_up = true;
|
||||
if (CV->_CycleNumber == 0) {
|
||||
PeriodicEvent = false; // periodic event end
|
||||
DACReset = true;
|
||||
}
|
||||
CV->_CycleNumber--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (current_direction_up) {
|
||||
if (DACUserCode + CV->_Step < DACUserCode) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
// DACUserCode overflow ?
|
||||
if (INSTRUCTION.VoltConstant + CV->_Step < INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (CV->MeasureVolt + ((int32_t)(CV->_Step) - DAC_ZERO)/5 > ((int32_t)(CV->_VOrigin) - DAC_ZERO)/5) {
|
||||
DACUserCode = CV->_VOrigin;
|
||||
// ex:command 3->1V ,when 1 to 3V, 2.99+0.1 > 3V
|
||||
else if (INSTRUCTION.VoltConstant + CV->_Step > CV->_VOrigin) {
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else if (INSTRUCTION.VoltConstant >= CV->_VOrigin){
|
||||
INSTRUCTION.VoltConstant = CV->_VOrigin;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode + CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant + CV->_Step;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (DACUserCode - CV->_Step > DACUserCode) {
|
||||
DACUserCode = CV->_VStop ;
|
||||
if (INSTRUCTION.VoltConstant - CV->_Step > INSTRUCTION.VoltConstant) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop ;
|
||||
}
|
||||
else if (CV->MeasureVolt - ((int32_t)(CV->_Step) - DAC_ZERO)/5 < ((int32_t)(CV->_VStop) - DAC_ZERO)/5) {
|
||||
DACUserCode = CV->_VStop;
|
||||
else if (INSTRUCTION.VoltConstant - CV->_Step < CV->_VStop) {
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
else if(INSTRUCTION.VoltConstant <= CV->_VStop){
|
||||
INSTRUCTION.VoltConstant = CV->_VStop;
|
||||
}
|
||||
else {
|
||||
DACUserCode = DACUserCode - CV->_Step;
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant - CV->_Step;
|
||||
|
||||
if(INSTRUCTION.VoltConstant > 60000){
|
||||
INSTRUCTION.VoltConstant = 0;
|
||||
current_direction_up = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
DACOutCode = Usercode_Correction_to_DAC(DACUserCode);
|
||||
|
||||
// NotifyImpedance[0] = 0x00;
|
||||
// NotifyImpedance[1] = 0x00;
|
||||
// NotifyImpedance[2] = (uint8_t)((DACOutCode & 0xFF00) >> 8);
|
||||
// NotifyImpedance[3] = (uint8_t)(DACOutCode & 0x00FF);
|
||||
|
||||
|
||||
DACOutCode = Usercode_Correction_to_DAC(INSTRUCTION.VoltConstant);
|
||||
DAC_outputV(DACOutCode);
|
||||
}
|
||||
return DACOutCode;
|
||||
@@ -365,19 +518,56 @@ static void CV_Plot(CVMode *CV){
|
||||
}
|
||||
VoltCurrentSwitch ++;
|
||||
}
|
||||
// else if(VoltCurrentSwitch < 9){
|
||||
// // read volt
|
||||
// ReadVolt(spi_ADC_rxbuf);
|
||||
// VoltCurrentSwitch++;
|
||||
// }
|
||||
// else if(VoltCurrentSwitch == 9){
|
||||
// /** read battery voltage **/
|
||||
// ReadVolt(spi_ADC_rxbuf);
|
||||
// ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
// //CV->MeasureVolt = 20000;
|
||||
// CV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
// VoltCurrentSwitch++;
|
||||
// }
|
||||
else if(VoltCurrentSwitch < 9){
|
||||
// read volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
if(CV->_VoVi_Switch == 0x01){
|
||||
// read vin volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
}else if(CV->_VoVi_Switch == 0x00){
|
||||
// read vout volt
|
||||
ReadVoutVolt(spi_ADC_rxbuf);
|
||||
}
|
||||
VoltCurrentSwitch++;
|
||||
}
|
||||
else if(VoltCurrentSwitch == 9){
|
||||
/** read battery voltage **/
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
//CV->MeasureVolt = 20000;
|
||||
CV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
if(CV->_VoVi_Switch == 0x01){
|
||||
// read vin volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
//CV->MeasureVolt = 20000;
|
||||
CV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
}else if(CV->_VoVi_Switch == 0x00){
|
||||
// read vout volt
|
||||
ReadVoutVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
CV->MeasureVolt = DecodeADCVoutVolt(ADC_measure);
|
||||
}
|
||||
VoltCurrentSwitch++;
|
||||
}
|
||||
// else if (VoltCurrentSwitch < 13){
|
||||
// ReadBatVolt(spi_ADC_rxbuf);
|
||||
// VoltCurrentSwitch ++;
|
||||
// }
|
||||
// else if (VoltCurrentSwitch == 13){
|
||||
// // read battery volt
|
||||
// ReadBatVolt(spi_ADC_rxbuf);
|
||||
// ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
// CV->_MeasureBatvolt = DecodeADCBatVolt(ADC_measure);
|
||||
// CV->_MeasureBatvolt = CV->_MeasureBatvolt/10 - 250; // (5.00V) 5000->250 usercode
|
||||
// VoltCurrentSwitch ++;
|
||||
// }
|
||||
else{
|
||||
VoltCurrentSwitch = 0;
|
||||
}
|
||||
@@ -387,12 +577,21 @@ static void CV_Plot(CVMode *CV){
|
||||
NotifyCurrent[2] = (uint8_t) ((CV->_MeasureData & 0x0000FF00) >> 8);
|
||||
NotifyCurrent[3] = (uint8_t) (CV->_MeasureData & 0x000000FF);
|
||||
|
||||
if (CV->_VoVi_Switch == 0x01){ //user see Vin
|
||||
NotifyVolt[0] = (uint8_t) (CV->MeasureVolt >> 24);
|
||||
NotifyVolt[1] = (uint8_t) ((CV->MeasureVolt & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t) ((CV->MeasureVolt & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t) (CV->MeasureVolt & 0x000000FF);
|
||||
if ((CV->_VoVi_Switch == 0x01) || (CV->_VoVi_Switch == 0x00)){ //user see Vin || user see Vout
|
||||
// NotifyVolt[0] = (uint8_t) (CV->MeasureVolt >> 24);
|
||||
// NotifyVolt[1] = (uint8_t) ((CV->MeasureVolt & 0x00FF0000) >> 16);
|
||||
// NotifyVolt[2] = (uint8_t) ((CV->MeasureVolt & 0x0000FF00) >> 8);
|
||||
// NotifyVolt[3] = (uint8_t) (CV->MeasureVolt & 0x000000FF);
|
||||
|
||||
int32_t RealV;
|
||||
RealV = (int32_t)(INSTRUCTION.VoltConstant - 25000)*1000/5;
|
||||
NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
}
|
||||
|
||||
// NotifyBatVolt = (uint8_t) (CV->_MeasureBatvolt & 0x000000FF);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+770
-33
@@ -29,7 +29,7 @@
|
||||
*/
|
||||
|
||||
|
||||
#define BOARD_SATURN
|
||||
#define BOARD_517
|
||||
|
||||
typedef struct _formula{
|
||||
|
||||
@@ -313,23 +313,23 @@ struct _correction{
|
||||
|
||||
#ifdef BOARD_517
|
||||
{
|
||||
.ADC_volt.coeff = (-6244769),
|
||||
.ADC_volt.offset = 101714685687,
|
||||
.ADC_volt.coeff = (-6242316),
|
||||
.ADC_volt.offset = 101695491616,
|
||||
|
||||
.ADC_current[0].coeff = 30919726,
|
||||
.ADC_current[0].offset = (-503489101786),
|
||||
.ADC_current[0].coeff = 31209406,
|
||||
.ADC_current[0].offset = (-508124232673),
|
||||
|
||||
.ADC_current[1].coeff = 654824495,
|
||||
.ADC_current[1].offset = (-10660542778914),
|
||||
.ADC_current[1].coeff = 1043627413,
|
||||
.ADC_current[1].offset = (-16990954291421),
|
||||
|
||||
.ADC_current[2].coeff = 31376265,
|
||||
.ADC_current[2].offset = (-510797752348),
|
||||
.ADC_current[2].coeff = 31222625869,
|
||||
.ADC_current[2].offset = (-508366282638261),
|
||||
|
||||
.DAC2RealV.coeff = (-18690126),
|
||||
.DAC2RealV.offset = 564319610294 ,
|
||||
|
||||
.Usercode2DAC.coeff = (-10500774),
|
||||
.Usercode2DAC.offset = 560779455904,
|
||||
.Usercode2DAC.coeff = (-10498485),
|
||||
.Usercode2DAC.offset = 560797798529,
|
||||
|
||||
.Gain0Boundary[0] = 0x5E2F,
|
||||
.Gain0Boundary[1] = 0x5E96,
|
||||
@@ -537,23 +537,23 @@ struct _correction{
|
||||
|
||||
#ifdef BOARD_VENUS
|
||||
{
|
||||
.ADC_volt.coeff = (-6268996),
|
||||
.ADC_volt.offset = 102204055818,
|
||||
.ADC_volt.coeff = (-6269185),
|
||||
.ADC_volt.offset = 102228792306,
|
||||
|
||||
.ADC_current[0].coeff = 31131930,
|
||||
.ADC_current[0].offset = (-507382432547),
|
||||
.ADC_current[0].coeff = 31229744,
|
||||
.ADC_current[0].offset = (-509240005160),
|
||||
|
||||
.ADC_current[1].coeff = 654620883,
|
||||
.ADC_current[1].offset = (-10668953588943),
|
||||
.ADC_current[1].coeff = 671245720,
|
||||
.ADC_current[1].offset = (-10939750446252),
|
||||
|
||||
.ADC_current[2].coeff = 31245260000,
|
||||
.ADC_current[2].offset = (-509181085054000),
|
||||
.ADC_current[2].coeff = 35220821945,
|
||||
.ADC_current[2].offset = (-574099564362474),
|
||||
|
||||
.DAC2RealV.coeff = (-19009388),
|
||||
.DAC2RealV.offset = 567032653061,
|
||||
|
||||
.Usercode2DAC.coeff = (-10521117),
|
||||
.Usercode2DAC.offset = 561308254899,
|
||||
.Usercode2DAC.coeff = (-10524891),
|
||||
.Usercode2DAC.offset = 561393946495,
|
||||
|
||||
.Gain0Boundary[0] = 0x5D96,
|
||||
.Gain0Boundary[1] = 0x5DD9,
|
||||
@@ -621,8 +621,8 @@ struct _correction{
|
||||
|
||||
#ifdef BOARD_SATURN
|
||||
{
|
||||
.ADC_volt.coeff = (-6262993),
|
||||
.ADC_volt.offset = 101996256499,
|
||||
.ADC_volt.coeff = (-6262258),
|
||||
.ADC_volt.offset = 101986379869,
|
||||
|
||||
.ADC_current[0].coeff = 31482854,
|
||||
.ADC_current[0].offset = (-513080696050),
|
||||
@@ -630,14 +630,14 @@ struct _correction{
|
||||
.ADC_current[1].coeff = 660069824,
|
||||
.ADC_current[1].offset = (-10757047907091),
|
||||
|
||||
.ADC_current[2].coeff = 31599480301,
|
||||
.ADC_current[2].offset = (-514997796786064),
|
||||
.ADC_current[2].coeff = 31692010534,
|
||||
.ADC_current[2].offset = (-516553361701835),
|
||||
|
||||
.DAC2RealV.coeff = (-19009388),
|
||||
.DAC2RealV.offset = 567032653061,
|
||||
|
||||
.Usercode2DAC.coeff = (-10482326),
|
||||
.Usercode2DAC.offset = 558931155711,
|
||||
.Usercode2DAC.coeff = (-10484502),
|
||||
.Usercode2DAC.offset = 558944670693,
|
||||
|
||||
.Gain0Boundary[0] = 0x5D96,
|
||||
.Gain0Boundary[1] = 0x5DD9,
|
||||
@@ -731,17 +731,740 @@ struct _correction{
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_BIGBROTHER
|
||||
{
|
||||
.ADC_volt.coeff = (-6249254),
|
||||
.ADC_volt.offset = 101825967151,
|
||||
|
||||
.ADC_current[0].coeff = 31064047,
|
||||
.ADC_current[0].offset = -506320666330,
|
||||
|
||||
.ADC_current[1].coeff = 656820055,
|
||||
.ADC_current[1].offset = -10700912340162,
|
||||
|
||||
.ADC_current[2].coeff = 31424358846,
|
||||
.ADC_current[2].offset = -511986603889918,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10484132),
|
||||
.Usercode2DAC.offset = 559642619397,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_KUMA
|
||||
{
|
||||
.ADC_volt.coeff = (-6284116),
|
||||
.ADC_volt.offset = 102151354839,
|
||||
|
||||
.ADC_current[0].coeff = 31222344,
|
||||
.ADC_current[0].offset = -507425541248,
|
||||
|
||||
.ADC_current[1].coeff = 657422161,
|
||||
.ADC_current[1].offset = -10654143756362,
|
||||
|
||||
.ADC_current[2].coeff = 31221776879,
|
||||
.ADC_current[2].offset = -506123984398184,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10541828),
|
||||
.Usercode2DAC.offset = 559483550210,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_MINO
|
||||
{
|
||||
.ADC_volt.coeff = (-6242774),
|
||||
.ADC_volt.offset = 101201319007,
|
||||
|
||||
.ADC_current[0].coeff = 31462554,
|
||||
.ADC_current[0].offset = -509881330352,
|
||||
|
||||
.ADC_current[1].coeff = 659514123,
|
||||
.ADC_current[1].offset = -10687831492393,
|
||||
|
||||
.ADC_current[2].coeff = 31535570993,
|
||||
.ADC_current[2].offset = -511116189463173,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10529707),
|
||||
.Usercode2DAC.offset = 560289198229,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_ANGUS
|
||||
{
|
||||
.ADC_volt.coeff = (-6243800),
|
||||
.ADC_volt.offset = 101198174953,
|
||||
|
||||
.ADC_current[0].coeff = 31174733,
|
||||
.ADC_current[0].offset = -505246715963,
|
||||
|
||||
.ADC_current[1].coeff = 655540713,
|
||||
.ADC_current[1].offset = -10622652066340,
|
||||
|
||||
.ADC_current[2].coeff = 31416986708,
|
||||
.ADC_current[2].offset = -509094727775962,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10556932),
|
||||
.Usercode2DAC.offset = 561269201380,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C5F3
|
||||
{
|
||||
.ADC_volt.coeff = (-6249801),
|
||||
.ADC_volt.offset = 101577560497,
|
||||
|
||||
.ADC_current[0].coeff = 31333145,
|
||||
.ADC_current[0].offset = -509202021996,
|
||||
|
||||
.ADC_current[1].coeff = 655056917,
|
||||
.ADC_current[1].offset = -10647726030826,
|
||||
|
||||
.ADC_current[2].coeff = 31407894492,
|
||||
.ADC_current[2].offset = -510516121023653,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10489696),
|
||||
.Usercode2DAC.offset = 559743808452,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C7A7
|
||||
{
|
||||
.ADC_volt.coeff = (-6260414),
|
||||
.ADC_volt.offset = 101368153805,
|
||||
|
||||
.ADC_current[0].coeff = 31152640,
|
||||
.ADC_current[0].offset = -506323045036,
|
||||
|
||||
.ADC_current[1].coeff = 653922673,
|
||||
.ADC_current[1].offset = -10628474486965,
|
||||
|
||||
.ADC_current[2].coeff = 31393868429,
|
||||
.ADC_current[2].offset = -510314295937946,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10547274),
|
||||
.Usercode2DAC.offset = 561050097141,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_POCA
|
||||
{
|
||||
.ADC_volt.coeff = (-6241861),
|
||||
.ADC_volt.offset = 101629864562,
|
||||
|
||||
.ADC_current[0].coeff = 31256579,
|
||||
.ADC_current[0].offset = -508530535142,
|
||||
|
||||
.ADC_current[1].coeff = 658820355,
|
||||
.ADC_current[1].offset = -10720633637013,
|
||||
|
||||
.ADC_current[2].coeff = 31445401561,
|
||||
.ADC_current[2].offset = -511730149870324,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10572079),
|
||||
.Usercode2DAC.offset = 564222895808,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_D429
|
||||
{
|
||||
.ADC_volt.coeff = (-6238779),
|
||||
.ADC_volt.offset = 101605334434,
|
||||
|
||||
.ADC_current[0].coeff = 31071846,
|
||||
.ADC_current[0].offset = -505811219439,
|
||||
|
||||
.ADC_current[1].coeff = 656609367,
|
||||
.ADC_current[1].offset = -10692060258062,
|
||||
|
||||
.ADC_current[2].coeff = 31524582021,
|
||||
.ADC_current[2].offset = -513367397453127,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10507806),
|
||||
.Usercode2DAC.offset = 562068643815,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C60D
|
||||
{
|
||||
.ADC_volt.coeff = (-6257164),
|
||||
.ADC_volt.offset = 102239515470,
|
||||
|
||||
.ADC_current[0].coeff = 31270905,
|
||||
.ADC_current[0].offset = -510840730706,
|
||||
|
||||
.ADC_current[1].coeff = 654407812,
|
||||
.ADC_current[1].offset = -10691708695136,
|
||||
|
||||
.ADC_current[2].coeff = 31370764564,
|
||||
.ADC_current[2].offset = -512563422208737,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10505677),
|
||||
.Usercode2DAC.offset = 561896606772,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_MILKY
|
||||
{
|
||||
.ADC_volt.coeff = (-6245296),
|
||||
.ADC_volt.offset = 101930135585,
|
||||
|
||||
.ADC_current[0].coeff = 31234538,
|
||||
.ADC_current[0].offset = -510079528824,
|
||||
|
||||
.ADC_current[1].coeff = 655637591,
|
||||
.ADC_current[1].offset = -10704987805680,
|
||||
|
||||
.ADC_current[2].coeff = 31674775010,
|
||||
.ADC_current[2].offset = -517270192436237,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10537872),
|
||||
.Usercode2DAC.offset = 562523723374,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C673
|
||||
{
|
||||
.ADC_volt.coeff = (-6250835),
|
||||
.ADC_volt.offset = 102137137483,
|
||||
|
||||
.ADC_current[0].coeff = 31377840,
|
||||
.ADC_current[0].offset = -513157633310,
|
||||
|
||||
.ADC_current[1].coeff = 656775773,
|
||||
.ADC_current[1].offset = -10735818498628,
|
||||
|
||||
.ADC_current[2].coeff = 31564418269,
|
||||
.ADC_current[2].offset = -515846860363218,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10589134),
|
||||
.Usercode2DAC.offset = 566193811359,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C5E0
|
||||
{
|
||||
.ADC_volt.coeff = (-6245327),
|
||||
.ADC_volt.offset = 101307483012,
|
||||
|
||||
.ADC_current[0].coeff = 31354974,
|
||||
.ADC_current[0].offset = -507194879524,
|
||||
|
||||
.ADC_current[1].coeff = 658451900,
|
||||
.ADC_current[1].offset = -10677456008545,
|
||||
|
||||
.ADC_current[2].coeff = 31568312650,
|
||||
.ADC_current[2].offset = -511943326243316,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-21557794),
|
||||
.Usercode2DAC.offset = 1122382223883,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C64C
|
||||
{
|
||||
.ADC_volt.coeff = (-6260844),
|
||||
.ADC_volt.offset = 101746271485,
|
||||
|
||||
|
||||
.ADC_current[0].coeff = 31234762,
|
||||
.ADC_current[0].offset = -509025107922,
|
||||
|
||||
.ADC_current[1].coeff = 660737512,
|
||||
.ADC_current[1].offset = -10739681096143,
|
||||
|
||||
.ADC_current[2].coeff = 31446881444,
|
||||
.ADC_current[2].offset = -511179540163754,
|
||||
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10547083),
|
||||
.Usercode2DAC.offset = 562398595911,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C6F1
|
||||
{
|
||||
.ADC_volt.coeff = (-6247180),
|
||||
.ADC_volt.offset = 102054272790,
|
||||
|
||||
.ADC_current[0].coeff = 30976281,
|
||||
.ADC_current[0].offset = -505757488419,
|
||||
|
||||
.ADC_current[1].coeff = 655631961,
|
||||
.ADC_current[1].offset = -10714280118989,
|
||||
|
||||
.ADC_current[2].coeff = 31377993512,
|
||||
.ADC_current[2].offset = -512826236956373,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10535141),
|
||||
.Usercode2DAC.offset = 562486477211,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
#ifdef BOARD_C5A7
|
||||
{
|
||||
.ADC_volt.coeff = (-6261077),
|
||||
.ADC_volt.offset = 101626420148,
|
||||
|
||||
.ADC_current[0].coeff = 31238670,
|
||||
.ADC_current[0].offset = -508954779962,
|
||||
|
||||
.ADC_current[1].coeff = 655018286,
|
||||
.ADC_current[1].offset = -10624775781189,
|
||||
|
||||
.ADC_current[2].coeff = 31254713545,
|
||||
.ADC_current[2].offset = -506913323208609,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10486554),
|
||||
.Usercode2DAC.offset = 558961930417,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C5BC
|
||||
{
|
||||
.ADC_volt.coeff = (-6247591),
|
||||
.ADC_volt.offset = 101907211036,
|
||||
|
||||
.ADC_current[0].coeff = 31127907,
|
||||
.ADC_current[0].offset = -509404424258,
|
||||
|
||||
.ADC_current[1].coeff = 657090640,
|
||||
.ADC_current[1].offset = -10708439489521,
|
||||
|
||||
.ADC_current[2].coeff = 31323762927,
|
||||
.ADC_current[2].offset = -510639983237350,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10500262),
|
||||
.Usercode2DAC.offset = 561352279115,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C61B
|
||||
{
|
||||
.ADC_volt.coeff = (-6240181),
|
||||
.ADC_volt.offset = 101555032590,
|
||||
|
||||
.ADC_current[0].coeff = 31453336,
|
||||
.ADC_current[0].offset = -512480994335,
|
||||
|
||||
.ADC_current[1].coeff = 655791462,
|
||||
.ADC_current[1].offset = -10674697458906,
|
||||
|
||||
.ADC_current[2].coeff = 31308254406,
|
||||
.ADC_current[2].offset = -509597572256835,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10647081),
|
||||
.Usercode2DAC.offset = 565878482890,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef BOARD_C73D
|
||||
{
|
||||
.ADC_volt.coeff = (-6295524),
|
||||
.ADC_volt.offset = 102674817855,
|
||||
|
||||
.ADC_current[0].coeff = 31655210,
|
||||
.ADC_current[0].offset = -516217345046,
|
||||
|
||||
.ADC_current[1].coeff = 657366554,
|
||||
.ADC_current[1].offset = -10730794522132,
|
||||
|
||||
.ADC_current[2].coeff = 31455150257,
|
||||
.ADC_current[2].offset = -513437175114578,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10572307),
|
||||
.Usercode2DAC.offset = 565374291147,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef BOARD_C635
|
||||
{
|
||||
.ADC_volt.coeff = (-6253221),
|
||||
.ADC_volt.offset = 101809981406,
|
||||
|
||||
.ADC_current[0].coeff = 31341845,
|
||||
.ADC_current[0].offset = -510459459634,
|
||||
|
||||
.ADC_current[1].coeff = 658436945,
|
||||
.ADC_current[1].offset = -10717869924356,
|
||||
|
||||
.ADC_current[2].coeff = 31308250447,
|
||||
.ADC_current[2].offset = -509649688240631,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10515473),
|
||||
.Usercode2DAC.offset = 561702427427,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C682
|
||||
{
|
||||
.ADC_volt.coeff = (-6255881),
|
||||
.ADC_volt.offset = 101770749912,
|
||||
|
||||
.ADC_current[0].coeff = 31201404,
|
||||
.ADC_current[0].offset = -508138266998,
|
||||
|
||||
.ADC_current[1].coeff = 656614595,
|
||||
.ADC_current[1].offset = -10686126424043,
|
||||
|
||||
.ADC_current[2].coeff = 31414681873,
|
||||
.ADC_current[2].offset = -511205882335203,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10526542),
|
||||
.Usercode2DAC.offset = 561504215196,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C688
|
||||
{
|
||||
.ADC_volt.coeff = (-6258215),
|
||||
.ADC_volt.offset = 102154138920,
|
||||
|
||||
.ADC_current[0].coeff = 31341184,
|
||||
.ADC_current[0].offset = -510715097964,
|
||||
|
||||
.ADC_current[1].coeff = 659789967,
|
||||
.ADC_current[1].offset = -10771124472519,
|
||||
|
||||
.ADC_current[2].coeff = 31519139222,
|
||||
.ADC_current[2].offset = -514534188233139,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10537634),
|
||||
.Usercode2DAC.offset = 562780854012,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C758
|
||||
{
|
||||
.ADC_volt.coeff = (-6243164),
|
||||
.ADC_volt.offset = 101637253844,
|
||||
|
||||
.ADC_current[0].coeff = 30911246,
|
||||
.ADC_current[0].offset = -503647274606,
|
||||
|
||||
.ADC_current[1].coeff = 653825342,
|
||||
.ADC_current[1].offset = -10648468733909,
|
||||
|
||||
.ADC_current[2].coeff = 31170419731,
|
||||
.ADC_current[2].offset = -507639789070676,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10486554),
|
||||
.Usercode2DAC.offset = 558961930417,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C5F1
|
||||
{
|
||||
.ADC_volt.coeff = (-6253958),
|
||||
.ADC_volt.offset = 101452368461,
|
||||
|
||||
.ADC_current[0].coeff = 30744013,
|
||||
.ADC_current[0].offset = -498179836930,
|
||||
|
||||
.ADC_current[1].coeff = 654390794,
|
||||
.ADC_current[1].offset = -10613673358566,
|
||||
|
||||
.ADC_current[2].coeff = 31298803888,
|
||||
.ADC_current[2].offset = -507656332800484,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10518181),
|
||||
.Usercode2DAC.offset = 560301589307,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C6D5
|
||||
{
|
||||
.ADC_volt.coeff = (-6237534),
|
||||
.ADC_volt.offset = 101605935716,
|
||||
|
||||
.ADC_current[0].coeff = 31115458,
|
||||
.ADC_current[0].offset = -507263643623,
|
||||
|
||||
.ADC_current[1].coeff = 658403575,
|
||||
.ADC_current[1].offset = -10732526947976,
|
||||
|
||||
.ADC_current[2].coeff = 31390460797,
|
||||
.ADC_current[2].offset = -511690836380334,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10584982),
|
||||
.Usercode2DAC.offset = 563383734482,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef BOARD_C706
|
||||
{
|
||||
.ADC_volt.coeff = (-6265060),
|
||||
.ADC_volt.offset = 101304934795,
|
||||
|
||||
.ADC_current[0].coeff = 31017413,
|
||||
.ADC_current[0].offset = -501641612769,
|
||||
|
||||
.ADC_current[1].coeff = 657630384,
|
||||
.ADC_current[1].offset = -10633992921166,
|
||||
|
||||
.ADC_current[2].coeff = 31013727410,
|
||||
.ADC_current[2].offset = -501507479075525,
|
||||
|
||||
.DAC2RealV.coeff = (-19007867),
|
||||
.DAC2RealV.offset = 646316924837,
|
||||
|
||||
.Usercode2DAC.coeff = (-10557808),
|
||||
.Usercode2DAC.offset = 560287506126,
|
||||
|
||||
.Gain0Boundary[0] = 0x5ECD,
|
||||
.Gain0Boundary[1] = 0x5F0D,
|
||||
|
||||
.Gain1Boundary[0] = 0x5900,
|
||||
.Gain1Boundary[1] = 0x64DD
|
||||
};
|
||||
#endif
|
||||
|
||||
// this function turn ADC measure value (0xXXXX) into real voltage
|
||||
// unit should be mV
|
||||
// unit should be uV
|
||||
static int32_t DecodeADCVolt(uint16_t ADC_measure){
|
||||
long long ADCRealVolt = 0;
|
||||
|
||||
ADCRealVolt = (Correction.ADC_volt.coeff * ADC_measure + Correction.ADC_volt.offset);
|
||||
ADCRealVolt = ADCRealVolt / 1e7;
|
||||
ADCRealVolt = ADCRealVolt / 1e4;
|
||||
|
||||
return (int32_t) (ADCRealVolt);
|
||||
}
|
||||
|
||||
// this function turn ADC measure value (0xXXXX) into Vout voltage
|
||||
// unit should be mV
|
||||
static int32_t DecodeADCVoutVolt(uint16_t ADC_measure){
|
||||
long long ADCVoutVolt = 0;
|
||||
|
||||
ADCVoutVolt = ((-62658782380) * ADC_measure + 1020118014900000);
|
||||
ADCVoutVolt = ADCVoutVolt / 1e11;
|
||||
return (int32_t) (ADCVoutVolt);
|
||||
}
|
||||
|
||||
// this function turn ADC measure value (0xXXXX) into Battery voltage
|
||||
// unit should be mV
|
||||
static int32_t DecodeADCBatVolt(uint16_t ADC_measure){
|
||||
long long ADCBatVolt = 0;
|
||||
|
||||
ADCBatVolt = (12571991860 * ADC_measure + 3314058604700);
|
||||
ADCBatVolt = ADCBatVolt / 1e11;
|
||||
return (int32_t) (ADCBatVolt);
|
||||
}
|
||||
|
||||
// this function turn ADC measure value (0xXXXX) into real current
|
||||
// unit should be pA
|
||||
static int32_t DecodeADCCurrent(uint8_t ADCGain, uint16_t ADC_measure){
|
||||
@@ -798,7 +1521,8 @@ static int32_t DecodeResister(uint8_t ADCGainLevel, uint16_t CurrentMeasure, uin
|
||||
static int32_t DecodeADCValue(uint8_t ADCGain, uint8_t ADCChannel, uint8_t *ADC_raw){
|
||||
|
||||
uint16_t ADC_measure = (uint16_t) (ADC_raw[0] << 8) | (uint16_t) (ADC_raw[1]);
|
||||
int32_t ADCRealVolt = 0, ret = 0, ADCRealCurrent = 0;
|
||||
int32_t ADCRealVolt = 0, ret = 0, ADCRealCurrent = 0, ADCVoutVolt = 0, ADCBatVolt = 0;
|
||||
|
||||
|
||||
// return real volt to controller
|
||||
if(ADCChannel == ADC_CH_VOLT){
|
||||
@@ -816,6 +1540,19 @@ static int32_t DecodeADCValue(uint8_t ADCGain, uint8_t ADCChannel, uint8_t *ADC_
|
||||
ret = ADCRealCurrent;
|
||||
}
|
||||
|
||||
// return real VoutVolt to controller
|
||||
else if(ADCChannel == ADC_CH_DAC){
|
||||
ADCVoutVolt = DecodeADCVoutVolt(ADC_measure);
|
||||
ret = ADCVoutVolt;
|
||||
}
|
||||
|
||||
// return real Battery Volt to controller
|
||||
else if(ADCChannel == ADC_CH_BAT){
|
||||
ADCBatVolt = DecodeADCBatVolt(ADC_measure);
|
||||
ret = ADCBatVolt;
|
||||
}
|
||||
|
||||
|
||||
// if ( (INSTRUCTION.eliteFxn == IV_CURVE) || (INSTRUCTION.eliteFxn == CV_CURVE)) {
|
||||
// if ( (INSTRUCTION.eliteFxn == CV_CURVE)) {
|
||||
// // wait 0.1 sec until circuit stable => discard first data means wait 0.1 sec
|
||||
@@ -923,9 +1660,9 @@ static int32_t DAC_to_realV(uint16_t DACcode)
|
||||
|
||||
usercode_32 = ((DACcode * 1e7) - Correction.Usercode2DAC.offset) / Correction.Usercode2DAC.coeff;
|
||||
|
||||
RealV = (int32_t) (usercode_32 / 5) - 5000;
|
||||
|
||||
// return mV
|
||||
RealV = (int32_t) ((usercode_32 / 5) - 5000) * 1000;
|
||||
// RealV = (int32_t) usercode_32;
|
||||
// return nV
|
||||
return RealV;
|
||||
}
|
||||
|
||||
|
||||
+115
-35
@@ -41,7 +41,7 @@ static uint16_t OneWayVoltScan(IVMode *IV) {
|
||||
}
|
||||
|
||||
if (CT.StepTimeCounter == IV->_StepTime){
|
||||
if (IV->_VOrigin < IV->_VStop) {
|
||||
if (IV->_VOrigin < IV->_VStop) {//4~5V
|
||||
// output the next output volt
|
||||
INSTRUCTION.VoltConstant = INSTRUCTION.VoltConstant + IV->_Step;
|
||||
// Only used in two-wire IV
|
||||
@@ -76,27 +76,42 @@ static uint16_t OneWayVoltScan(IVMode *IV) {
|
||||
//// reset();
|
||||
// }
|
||||
}
|
||||
if (IV->_VoVi_Switch == 0x00){ //user see Vout
|
||||
if (IV->_VOrigin < IV->_VStop) {
|
||||
if(INSTRUCTION.VoltConstant >= IV->_VStop){
|
||||
PeriodicEvent = false;
|
||||
DACReset = true;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(INSTRUCTION.VoltConstant <= IV->_VStop){
|
||||
PeriodicEvent = false;
|
||||
DACReset = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int32_t RealV;
|
||||
RealV = DAC_to_realV(DACOutCode);
|
||||
NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
// if (IV->_VoVi_Switch == 0x00 || IV->_VoVi_Switch == 0x01){ //user see Vout/user see Vin
|
||||
// if (IV->_VOrigin < IV->_VStop) {
|
||||
// if(INSTRUCTION.VoltConstant >= IV->_VStop){
|
||||
// PeriodicEvent = false;
|
||||
// DACReset = true;
|
||||
// }
|
||||
// }
|
||||
// else{
|
||||
// if(INSTRUCTION.VoltConstant <= IV->_VStop){
|
||||
// PeriodicEvent = false;
|
||||
// DACReset = true;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// int32_t RealV;
|
||||
// RealV = DAC_to_realV(DACOutCode);
|
||||
// NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
// NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
// NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
// NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
|
||||
// int32_t RealV;
|
||||
// RealV = (int32_t)(INSTRUCTION.VoltConstant - 25000)/5*1000;
|
||||
// NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
// NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
// NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
// NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
|
||||
|
||||
// NotifyImpedance[0] = 0x00;
|
||||
// NotifyImpedance[1] = 0x00;
|
||||
// NotifyImpedance[2] = (uint8_t)((INSTRUCTION.VoltConstant & 0xFF00) >> 8);
|
||||
// NotifyImpedance[3] = (uint8_t)(INSTRUCTION.VoltConstant & 0x00FF);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -134,18 +149,54 @@ static void IV_Plot(IVMode *IV) {
|
||||
}
|
||||
VoltCurrentSwitch ++;
|
||||
}
|
||||
// else if(VoltCurrentSwitch < 9){
|
||||
// // read volt
|
||||
// ReadVolt(spi_ADC_rxbuf);
|
||||
// VoltCurrentSwitch++;
|
||||
// }
|
||||
// else if(VoltCurrentSwitch == 9){
|
||||
// /** read battery voltage **/
|
||||
// ReadVolt(spi_ADC_rxbuf);
|
||||
// ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
// IV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
// VoltCurrentSwitch++;
|
||||
// }
|
||||
else if(VoltCurrentSwitch < 9){
|
||||
// read volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
if(IV->_VoVi_Switch == 0x01){
|
||||
// read vin volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
}else if(IV->_VoVi_Switch == 0x00){
|
||||
// read vout volt
|
||||
ReadVoutVolt(spi_ADC_rxbuf);
|
||||
}
|
||||
VoltCurrentSwitch++;
|
||||
}
|
||||
else if(VoltCurrentSwitch == 9){
|
||||
/** read battery voltage **/
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
IV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
if(IV->_VoVi_Switch == 0x01){
|
||||
// read vin volt
|
||||
ReadVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
IV->MeasureVolt = DecodeADCVolt(ADC_measure);
|
||||
}else if(IV->_VoVi_Switch == 0x00){
|
||||
// read vout volt
|
||||
ReadVoutVolt(spi_ADC_rxbuf);
|
||||
ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
IV->MeasureVolt = DecodeADCVoutVolt(ADC_measure);
|
||||
}
|
||||
VoltCurrentSwitch++;
|
||||
}
|
||||
// else if (VoltCurrentSwitch < 13){
|
||||
// ReadBatVolt(spi_ADC_rxbuf);
|
||||
// VoltCurrentSwitch ++;
|
||||
// }
|
||||
// else if (VoltCurrentSwitch == 13){
|
||||
// // read battery volt
|
||||
// ReadBatVolt(spi_ADC_rxbuf);
|
||||
// ADC_measure = (uint16_t) (spi_ADC_rxbuf[0] << 8) | (uint16_t) (spi_ADC_rxbuf[1]);
|
||||
// IV->_MeasureBatvolt = DecodeADCBatVolt(ADC_measure);
|
||||
// IV->_MeasureBatvolt = IV->_MeasureBatvolt/10 - 250; // (5.00V) 5000->250 usercode
|
||||
// VoltCurrentSwitch ++;
|
||||
// }
|
||||
else{
|
||||
VoltCurrentSwitch = 0;
|
||||
}
|
||||
@@ -157,26 +208,55 @@ static void IV_Plot(IVMode *IV) {
|
||||
NotifyCurrent[2] = (uint8_t) ((IV->_MeasureData & 0x0000FF00) >> 8);
|
||||
NotifyCurrent[3] = (uint8_t) (IV->_MeasureData & 0x000000FF);
|
||||
|
||||
if (IV->_VoVi_Switch == 0x01){ //user see Vin
|
||||
NotifyVolt[0] = (uint8_t) (IV->MeasureVolt >> 24);
|
||||
NotifyVolt[1] = (uint8_t) ((IV->MeasureVolt & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t) ((IV->MeasureVolt & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t) (IV->MeasureVolt & 0x000000FF);
|
||||
// if((IV->_VoVi_Switch == 0x01) || (IV->_VoVi_Switch == 0x00)){ //user see Vin || user see Vout
|
||||
//// NotifyVolt[0] = (uint8_t) (IV->MeasureVolt >> 24);
|
||||
//// NotifyVolt[1] = (uint8_t) ((IV->MeasureVolt & 0x00FF0000) >> 16);
|
||||
//// NotifyVolt[2] = (uint8_t) ((IV->MeasureVolt & 0x0000FF00) >> 8);
|
||||
//// NotifyVolt[3] = (uint8_t) (IV->MeasureVolt & 0x000000FF);
|
||||
// int32_t RealV;
|
||||
// RealV = (int32_t)(INSTRUCTION.VoltConstant - 25000)/5*1000;
|
||||
// NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
// NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
// NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
// NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
//
|
||||
// if (IV->_VOrigin < IV->_VStop) {
|
||||
// if((IV->MeasureVolt/1000) >= ((int32_t) (IV->_VStop) - DAC_ZERO)/5){
|
||||
// PeriodicEvent = false;
|
||||
// DACReset = true;
|
||||
// }
|
||||
// }
|
||||
// else{
|
||||
// if((IV->MeasureVolt/1000) <= ((int32_t) (IV->_VStop) - DAC_ZERO)/5){
|
||||
// PeriodicEvent = false;
|
||||
// DACReset = true;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
if (IV->_VoVi_Switch == 0x00 || IV->_VoVi_Switch == 0x01){ //user see Vout/user see Vin
|
||||
int32_t RealV;
|
||||
RealV = (int32_t)(INSTRUCTION.VoltConstant - 25000)*1000/5;
|
||||
NotifyVolt[0] = (uint8_t)((RealV & 0xFF000000) >> 24);
|
||||
NotifyVolt[1] = (uint8_t)((RealV & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t)((RealV & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t)(RealV & 0x000000FF);
|
||||
|
||||
if (IV->_VOrigin < IV->_VStop) {
|
||||
if(IV->MeasureVolt >= ((int32_t) (IV->_VStop) - DAC_ZERO)/5){
|
||||
if(INSTRUCTION.VoltConstant >= IV->_VStop){
|
||||
PeriodicEvent = false;
|
||||
DACReset = true;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(IV->MeasureVolt <= ((int32_t) (IV->_VStop) - DAC_ZERO)/5){
|
||||
if(INSTRUCTION.VoltConstant <= IV->_VStop){
|
||||
PeriodicEvent = false;
|
||||
DACReset = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// NotifyBatVolt = (uint8_t) (IV->_MeasureBatvolt & 0x000000FF);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+4
@@ -69,6 +69,10 @@ static void WorkModeLED() {
|
||||
WORKLED();
|
||||
break;
|
||||
}
|
||||
case READ_VOUT_VALUE: {
|
||||
WORKLED();
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
LEDPowerON();
|
||||
|
||||
+7
@@ -24,6 +24,7 @@ static uint32_t not_time_stamp;
|
||||
static uint8_t NotifyCurrent[4] = {0};
|
||||
static uint8_t NotifyVolt[4] = {0};
|
||||
static uint8_t NotifyImpedance[4] = {0};
|
||||
static uint8_t NotifyBatVolt = 0;
|
||||
|
||||
/**
|
||||
* counter of notify send.
|
||||
@@ -106,6 +107,9 @@ static void SendNotify() {
|
||||
// cyclic voltametry cycle number
|
||||
not_buf[17] = INSTRUCTION.CycleNumber;
|
||||
|
||||
//battery volt
|
||||
not_buf[18] = NotifyBatVolt;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_DAT_BUFF_CHAR, BLE_DAT_BUFF_SIZE, not_buf);
|
||||
}
|
||||
|
||||
@@ -129,6 +133,9 @@ static void FlushNotify(){
|
||||
// cyclic voltametry cycle number
|
||||
not_buf[17] = 0x00;
|
||||
|
||||
//battery volt
|
||||
not_buf[18] = 0x00;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_DAT_BUFF_CHAR, BLE_DAT_BUFF_SIZE, not_buf);
|
||||
}
|
||||
|
||||
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
|
||||
#ifndef ELITERVout
|
||||
#define ELITERVout
|
||||
|
||||
static void RVout_Plot(RVoutMode *RVout) {
|
||||
// ADC gain is don't care when measuring voltage
|
||||
INSTRUCTION.ADCGainLevel = GAIN_200R;
|
||||
ADCGainControl(INSTRUCTION.ADCGainLevel);
|
||||
|
||||
// read ADC VoutVolt
|
||||
ReadVoutVolt(spi_ADC_rxbuf);
|
||||
|
||||
// decode ADC value and put it into notify buffer
|
||||
RVout->_MeasureData = DecodeADCValue(INSTRUCTION.ADCGainLevel, ADC_CH_DAC, spi_ADC_rxbuf);
|
||||
|
||||
NotifyVolt[0] = (uint8_t) (RVout->_MeasureData >> 24);
|
||||
NotifyVolt[1] = (uint8_t) ((RVout->_MeasureData & 0x00FF0000) >> 16);
|
||||
NotifyVolt[2] = (uint8_t) ((RVout->_MeasureData & 0x0000FF00) >> 8);
|
||||
NotifyVolt[3] = (uint8_t) (RVout->_MeasureData & 0x000000FF);
|
||||
}
|
||||
|
||||
#endif
|
||||
+34
-3
@@ -51,7 +51,7 @@
|
||||
#define SQUARE_WAVE_VOLTAMMETRY 0b10110000
|
||||
#define POTENTIAL_STATE 0b11000000
|
||||
#define CONSTANT_CURRENT 0b11010000
|
||||
#define SET_RESISTER_LEVEL 0b11100000
|
||||
#define READ_VOUT_VALUE 0b11100000
|
||||
|
||||
static bool Free_Work_Mode = false;
|
||||
typedef void (*InitWorkData) ();
|
||||
@@ -189,6 +189,20 @@ VTMode * InitVTMode(){
|
||||
return ret;
|
||||
}
|
||||
/* End of VT Mode Data */
|
||||
|
||||
/* ReadVOut Mode Data */
|
||||
typedef struct _RVoutMode{
|
||||
MEASURE;
|
||||
}RVoutMode;
|
||||
|
||||
RVoutMode * InitRVoutMode(){
|
||||
RVoutMode *ret = malloc(sizeof(RVoutMode));
|
||||
ret->_MeasureData = 0;
|
||||
// ret->SetMeasureData = &_SetMeasureData;
|
||||
// ret->GetMeasureData = &_GetMeasureData;
|
||||
return ret;
|
||||
}
|
||||
/* End of ReadVOut Mode Data */
|
||||
/***** End of Measure Only Mode *****/
|
||||
|
||||
|
||||
@@ -281,6 +295,7 @@ typedef struct _IVMode{
|
||||
int32_t MeasureVolt;
|
||||
VOUT_PARA;
|
||||
LIMIT;
|
||||
int32_t _MeasureBatvolt;
|
||||
}IVMode;
|
||||
|
||||
IVMode *InitIVMode(){
|
||||
@@ -295,7 +310,8 @@ IVMode *InitIVMode(){
|
||||
ret->_Step = INSTRUCTION.Step;
|
||||
ret->_StepTime = INSTRUCTION.StepTime;
|
||||
ret->_CycleNumber = 1;
|
||||
|
||||
ret->_MeasureBatvolt = 0;
|
||||
|
||||
|
||||
// ret->SetVoltOut = &_SetVoltOut;
|
||||
// ret->GetVoltOut = &_GetVoltOut;
|
||||
@@ -358,6 +374,7 @@ typedef struct _CVMode{
|
||||
MEASURE;
|
||||
int32_t MeasureVolt;
|
||||
VOUT_PARA;
|
||||
int32_t _MeasureBatvolt;
|
||||
}CVMode;
|
||||
|
||||
CVMode * InitCVMode(){
|
||||
@@ -374,7 +391,7 @@ CVMode * InitCVMode(){
|
||||
ret->_StepTime = INSTRUCTION.StepTime; // STEPTIME_ONE_SEC
|
||||
ret->_CycleNumber = INSTRUCTION.CycleNumber;
|
||||
ret->_VoVi_Switch = INSTRUCTION.VoVi_Switch;
|
||||
|
||||
ret->_MeasureBatvolt = 0;
|
||||
// ret->SetVoltOut = &_SetVoltOut;
|
||||
// ret->GetVoltOut = &_GetVoltOut;
|
||||
// ret->SetVOrigin = &_SetVOrigin;
|
||||
@@ -522,6 +539,9 @@ typedef union _WorkMode{
|
||||
CCMode *CC;
|
||||
// CCCMode *CCC;
|
||||
PSMode *PS;
|
||||
|
||||
//test mode
|
||||
RVoutMode *RVout;
|
||||
}WorkMode;
|
||||
|
||||
WorkMode *CreateWorkMode(){
|
||||
@@ -555,6 +575,9 @@ void InitWorkMode(WorkMode *WM){
|
||||
// case CYCLE_CONSTANT_CURRENT:
|
||||
// WM->CCC = InitCCCMode();
|
||||
// break;
|
||||
case READ_VOUT_VALUE:
|
||||
WM->RVout = InitRVoutMode();
|
||||
break;
|
||||
default:
|
||||
WM->VT = InitVTMode();
|
||||
break;
|
||||
@@ -605,6 +628,14 @@ void FreeWorkMode(WorkMode *WM){
|
||||
WM->CC = NULL;
|
||||
}
|
||||
break;
|
||||
case READ_VOUT_VALUE:
|
||||
if(WM->RVout != NULL){
|
||||
free(WM->RVout);
|
||||
WM->RVout = NULL;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
// case CYCLE_CONSTANT_CURRENT:
|
||||
// if(WM->CCC != NULL){
|
||||
// free(WM->CCC);
|
||||
|
||||
+2
-2
@@ -28,12 +28,12 @@ static void ZT_Plot(RTMode *RT) {
|
||||
}
|
||||
|
||||
|
||||
volt_32 = User2Real(INSTRUCTION.VoltConstant)*1e4;
|
||||
volt_32 = User2Real(INSTRUCTION.VoltConstant)*1e5;
|
||||
// ReadVolt(SPIVolt);
|
||||
// VoltMeasure = (uint16_t) (SPIVolt[0] << 8) | (uint16_t) (SPIVolt[1]);
|
||||
// volt_32 = DecodeADCVolt(VoltMeasure)*1e4;
|
||||
resister_32 = volt_32 / current_32;
|
||||
volt_32 = volt_32 / 1e4;
|
||||
volt_32 = volt_32 / 1e2; //uV
|
||||
|
||||
NotifyVolt[0] = (uint8_t) (volt_32 >> 24);
|
||||
NotifyVolt[1] = (uint8_t) ((volt_32 & 0x00FF0000) >> 16);
|
||||
|
||||
+63
-8
@@ -375,10 +375,11 @@ characteristic change event
|
||||
|
||||
// product information
|
||||
#define DEVICE_NAME "Elite-ZM-v1.4-re"
|
||||
#define MAJOR_PRODUCT_NUMBER 0
|
||||
#define MINOR_PRODUCT_NUMBER 2
|
||||
#define MAJOR_VERSION_NUMBER 1
|
||||
#define MINOR_VERSION_NUMBER 2
|
||||
#define MAJOR_PRODUCT_NUMBER 0 //0:Elite ,1:Neulive
|
||||
#define MINOR_PRODUCT_NUMBER 2 //1:Elite_legacy(Ori_Neulive) 2:Elite_zm 3:Elite_bat
|
||||
#define MAJOR_VERSION_NUMBER 1 //1
|
||||
#define MINOR_VERSION_NUMBER 2 //2 (1.2:support 1.2~1.4-re)
|
||||
//0310 //bat1.0
|
||||
|
||||
#define ELITE_VERSION_1_4
|
||||
//#define ELITE_VERSION_1_3
|
||||
@@ -492,6 +493,7 @@ static uint8 channel_table[CHANNEL_COUNT] = {0};
|
||||
*/
|
||||
static int8 channel_pointer = -1;
|
||||
static uint8_t not_buf[BLE_DAT_BUFF_SIZE] = {0};
|
||||
static uint8_t cis_buf[BLE_CIS_BUFF_SIZE] = {0};
|
||||
|
||||
/*=====================================
|
||||
==== headstage function prototype ====
|
||||
@@ -536,6 +538,7 @@ static void ADC_test_read(uint8_t *ADCdata); // for auto shifting
|
||||
static void ADCGainControl(uint8_t ADCLevel);
|
||||
static void ADCChannelSelect(uint8_t ADCChannel);
|
||||
static int32_t DecodeADCVolt(uint16_t ADC_measure);
|
||||
static int32_t DecodeADCVoutVolt(uint16_t ADC_measure);
|
||||
static int32_t DecodeADCCurrent(uint8_t ADCGain, uint16_t ADC_measure);
|
||||
static void Impedance_Calculate(uint16_t Voltage, int32_t Current);
|
||||
static int32_t DecodeADCValue(uint8_t ADCGain, uint8_t ADCChannel, uint8_t *ADC_raw);
|
||||
@@ -577,6 +580,8 @@ static void set_update_instruction_callback(update_instruction_callback_type cal
|
||||
#define VIS_SHIFT_200K 0b10100000
|
||||
#define VIS_SHIFT_10K 0b11100000
|
||||
#define VIS_SHIFT_200R 0b10000000
|
||||
#define VIS_DEVICE_SHINY 0b00010000
|
||||
#define VIS_SHINY_DIS 0b00100000
|
||||
|
||||
// real instruction
|
||||
#define IV_CURVE 0b00010000
|
||||
@@ -591,10 +596,11 @@ static void set_update_instruction_callback(update_instruction_callback_type cal
|
||||
#define SQUARE_WAVE_VOLTAMMETRY 0b10110000
|
||||
#define POTENTIAL_STATE 0b11000000
|
||||
#define CONSTANT_CURRENT 0b11010000
|
||||
#define SET_RESISTER_LEVEL 0b11100000
|
||||
#define READ_VOUT_VALUE 0b11100000
|
||||
#define CYCLE_CONSTANT_CURRENT 0b11110000
|
||||
|
||||
// CIS instruction
|
||||
#define CIS_VERSION 0x40
|
||||
|
||||
// test instruction
|
||||
#define ADC_TEST 0b10010000
|
||||
@@ -646,6 +652,7 @@ static void DACCode2Real2Notify(uint16_t DACcode); // send notify voltage a
|
||||
static void ZT_Plot(RTMode *RT);
|
||||
static void VT_Plot(VTMode *VT);
|
||||
static int32_t IT_PlotIT_Plot(WorkMode *WorkModeData);
|
||||
static void RVout_Plot(RVoutMode *RVout);
|
||||
|
||||
// the following fxn do the same thing
|
||||
// IVCurve_T is called if Vorigin > Vfinal, vice versa
|
||||
@@ -695,6 +702,8 @@ static void TurnOn10V();
|
||||
#include "EliteZTCurve.h"
|
||||
#include "EliteCCCMode.h"
|
||||
#include "impedance_meter.h"
|
||||
#include "EliteReadVout.h"
|
||||
#include "headstage_version.h"
|
||||
|
||||
// update instruction for Z meter
|
||||
static void update_ZM_instruction(uint8 *ins) {
|
||||
@@ -730,6 +739,8 @@ static void update_ZM_instruction(uint8 *ins) {
|
||||
|
||||
if (ins[7] | ins[8]) {
|
||||
INSTRUCTION.Step = ((uint16_t)(ins[7]) << 8) | (uint16_t)(ins[8]);
|
||||
// NotifyImpedance[2] = (uint8_t)((INSTRUCTION.Step & 0xFF00)>>8);
|
||||
// NotifyImpedance[3] = (uint8_t)(INSTRUCTION.Step & 0x00FF);
|
||||
INSTRUCTION.Step = StepCode2DACcode(INSTRUCTION.Step);
|
||||
}
|
||||
// if (ins[9]) {
|
||||
@@ -819,7 +830,7 @@ static void update_ZM_instruction(uint8 *ins) {
|
||||
// CleanBuffer();
|
||||
INSTRUCTION.eliteFxn = CV_CURVE;
|
||||
DACReset = true;
|
||||
INSTRUCTION.SampleRate = 500;
|
||||
INSTRUCTION.SampleRate = 100;
|
||||
|
||||
// if (ins[3] | ins[4]) {
|
||||
INSTRUCTION.VoltOrigin = ((uint16_t)(ins[3]) << 8) | (uint16_t)(ins[4]);
|
||||
@@ -935,8 +946,14 @@ static void update_ZM_instruction(uint8 *ins) {
|
||||
break;
|
||||
}
|
||||
|
||||
case SET_RESISTER_LEVEL:{
|
||||
INSTRUCTION.ResisterMeter = ins[3];
|
||||
case READ_VOUT_VALUE:{
|
||||
// INSTRUCTION.ResisterMeter = ins[3];
|
||||
INSTRUCTION.eliteFxn = READ_VOUT_VALUE;
|
||||
/*uint8_t ReadVoutBuf[2] = {0};
|
||||
|
||||
ADC_write(0xA4);
|
||||
ADC_read(ReadVoutBuf);
|
||||
SimpleProfile_SetParameter(BLE_DAT_BUFF_CHAR, 2, ReadVoutBuf);*/
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1067,6 +1084,31 @@ static void update_ZM_instruction(uint8 *ins) {
|
||||
break;
|
||||
}
|
||||
|
||||
case VIS_DEVICE_SHINY:{
|
||||
LED_color(DARKLED, 0xFF, 0x00, 0xFF);
|
||||
// uint8_t deviceShinySwitch = (ins[2] & 0b11110000) >> 4;//1:open 0:close
|
||||
// if(deviceShinySwitch == 1){
|
||||
// LED_color(DARKLED, 0xFF, 0x00, 0xFF);
|
||||
// }else if(deviceShinySwitch == 0){
|
||||
// if(PeriodicEvent){
|
||||
// WORKLED();
|
||||
// }else if(!PeriodicEvent){
|
||||
// LEDPowerON();
|
||||
// }
|
||||
// }
|
||||
break;
|
||||
}
|
||||
|
||||
case VIS_SHINY_DIS:{
|
||||
if(PeriodicEvent){
|
||||
WORKLED();
|
||||
}else if(!PeriodicEvent){
|
||||
LEDPowerON();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
@@ -1080,6 +1122,19 @@ static void update_ZM_instruction(uint8 *ins) {
|
||||
I2CWrite(0x01, 0xAB);
|
||||
break;
|
||||
}
|
||||
|
||||
case CIS_VERSION:{
|
||||
cis_buf[0] = VERSION_DATE_YEAR;
|
||||
cis_buf[1] = VERSION_DATE_MONTH;
|
||||
cis_buf[2] = VERSION_DATE_DAY;
|
||||
cis_buf[3] = VERSION_DATE_HOUR;
|
||||
cis_buf[4] = VERSION_DATE_MINUTE;
|
||||
|
||||
SimpleProfile_SetParameter(BLE_CIS_BUFF_CHAR, BLE_CIS_BUFF_SIZE, cis_buf);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
|
||||
#ifndef VERSION_DATE
|
||||
#define VERSION_DATE
|
||||
|
||||
#define VERSION_DATE_YEAR 20
|
||||
#define VERSION_DATE_MONTH 2
|
||||
#define VERSION_DATE_DAY 25
|
||||
#define VERSION_DATE_HOUR 18
|
||||
#define VERSION_DATE_MINUTE 32
|
||||
|
||||
#endif
|
||||
+13
-2
@@ -78,7 +78,8 @@ static void DACCode2Real2Notify(uint16_t DACcode) {
|
||||
(INSTRUCTION.eliteFxn == IT_CURVE) || \
|
||||
(INSTRUCTION.eliteFxn == VT_CURVE) || \
|
||||
(INSTRUCTION.eliteFxn == ZT_CURVE) || \
|
||||
(INSTRUCTION.eliteFxn == CONSTANT_CURRENT) \
|
||||
(INSTRUCTION.eliteFxn == CONSTANT_CURRENT) || \
|
||||
(INSTRUCTION.eliteFxn == READ_VOUT_VALUE) \
|
||||
)
|
||||
|
||||
/*********************************************************************
|
||||
@@ -235,6 +236,16 @@ static void EliteADCControl(WorkMode *WorkModeData) {
|
||||
// CCModeReverseCurrent(WorkModeData->CC);
|
||||
break;
|
||||
}
|
||||
case READ_VOUT_VALUE:{
|
||||
RVout_Plot(WorkModeData->RVout);
|
||||
|
||||
/*uint8_t ReadVoutBuf[2] = {0};
|
||||
|
||||
ADC_write(0xA4);
|
||||
ADC_read(ReadVoutBuf);
|
||||
SimpleProfile_SetParameter(BLE_DAT_BUFF_CHAR, 2, ReadVoutBuf);*/
|
||||
break;
|
||||
}
|
||||
default:{
|
||||
IT_Plot(WorkModeData);
|
||||
// NotifyReady = true;
|
||||
@@ -266,7 +277,7 @@ static void EliteNotifyControl() {
|
||||
|
||||
|
||||
static uint16_t StepCode2DACcode(uint16_t StepCode){
|
||||
return (StepCode * 0x0005);
|
||||
return (StepCode * 0x0005 / 10);
|
||||
}
|
||||
|
||||
static uint16_t OldStep2NewStepTime(uint8_t StepTime) {
|
||||
|
||||
+5
@@ -632,6 +632,7 @@ static void SimpleBLEPeripheral_taskFxn(UArg a0, UArg a1) {
|
||||
InitEliteInstruction();
|
||||
ADCGainControl(INSTRUCTION.ADCGainLevel);
|
||||
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoltConstant));
|
||||
|
||||
Free_Work_Mode = false;
|
||||
}
|
||||
} else {
|
||||
@@ -648,8 +649,12 @@ static void SimpleBLEPeripheral_taskFxn(UArg a0, UArg a1) {
|
||||
// Perform periodic application task
|
||||
SimpleBLEPeripheral_performPeriodicTask(WorkModeData);
|
||||
|
||||
// Turn off Elite if battery voltage < 3V
|
||||
// ReadBatVolt(spi_ADC_rxbuf);
|
||||
|
||||
key = PIN_getInputValue(switch_on);
|
||||
EliteKeyPress(key); // onPress=> key = 0; 1.lighten LED 2.long press shut down 2650
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user