From 129bb6b1c3b74b52a1b168cbe0bfe9eef44cc007 Mon Sep 17 00:00:00 2001 From: Deomid Ryabkov <rojer@cesanta.com> Date: Tue, 12 Apr 2016 09:40:07 +0300 Subject: [PATCH] Add MSP432 lib and example PUBLISHED_FROM=57ff02457269938feae805f2972b96b15931d41a --- examples/CC3200/Makefile | 3 - examples/CC3200/ccs/MG_sensor_demo/.cproject | 4 +- .../org.eclipse.cdt.codan.core.prefs | 3 - .../.settings/org.eclipse.cdt.core.prefs | 3 - .../org.eclipse.cdt.debug.core.prefs | 2 - .../org.eclipse.core.resources.prefs | 11 - examples/CC3200/ccs/Makefile | 2 + examples/CC3200/ccs/Mongoose/.cproject | 4 +- .../org.eclipse.cdt.codan.core.prefs | 3 - .../org.eclipse.cdt.debug.core.prefs | 2 - .../org.eclipse.core.resources.prefs | 11 - examples/CC3200/main.c | 4 +- examples/MSP432/ccs/MG_hello/.ccsproject | 15 + examples/MSP432/ccs/MG_hello/.cproject | 267 +++++++ examples/MSP432/ccs/MG_hello/.project | 29 + examples/MSP432/ccs/MG_hello/Board.h | 99 +++ examples/MSP432/ccs/MG_hello/MG_hello.cfg | 540 +++++++++++++++ .../MSP432/ccs/MG_hello/MSP_EXP432P401R.c | 653 ++++++++++++++++++ .../MSP432/ccs/MG_hello/MSP_EXP432P401R.cmd | 61 ++ .../MSP432/ccs/MG_hello/MSP_EXP432P401R.h | 252 +++++++ examples/MSP432/ccs/MG_hello/main.c | 154 +++++ .../MG_hello/targetConfigs/MSP432P401R.ccxml | 13 + .../ccs/MG_hello/targetConfigs/readme.txt | 9 + examples/MSP432/ccs/MG_hello/wifi.c | 116 ++++ examples/MSP432/ccs/MG_hello/wifi.h | 14 + examples/MSP432/ccs/Makefile | 2 + examples/MSP432/ccs/Mongoose/.ccsproject | 13 + examples/MSP432/ccs/Mongoose/.cproject | 190 +++++ examples/MSP432/ccs/Mongoose/.project | 40 ++ examples/MSP432/ccs/Mongoose/Mongoose.cfg | 1 + examples/Makefile | 2 +- 31 files changed, 2477 insertions(+), 45 deletions(-) delete mode 100644 examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.codan.core.prefs delete mode 100755 examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.core.prefs delete mode 100644 examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.debug.core.prefs delete mode 100644 examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.core.resources.prefs create mode 100644 examples/CC3200/ccs/Makefile delete mode 100644 examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.codan.core.prefs delete mode 100644 examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.debug.core.prefs delete mode 100644 examples/CC3200/ccs/Mongoose/.settings/org.eclipse.core.resources.prefs create mode 100644 examples/MSP432/ccs/MG_hello/.ccsproject create mode 100644 examples/MSP432/ccs/MG_hello/.cproject create mode 100644 examples/MSP432/ccs/MG_hello/.project create mode 100644 examples/MSP432/ccs/MG_hello/Board.h create mode 100644 examples/MSP432/ccs/MG_hello/MG_hello.cfg create mode 100644 examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.c create mode 100644 examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.cmd create mode 100644 examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.h create mode 100644 examples/MSP432/ccs/MG_hello/main.c create mode 100644 examples/MSP432/ccs/MG_hello/targetConfigs/MSP432P401R.ccxml create mode 100644 examples/MSP432/ccs/MG_hello/targetConfigs/readme.txt create mode 100644 examples/MSP432/ccs/MG_hello/wifi.c create mode 100644 examples/MSP432/ccs/MG_hello/wifi.h create mode 100644 examples/MSP432/ccs/Makefile create mode 100644 examples/MSP432/ccs/Mongoose/.ccsproject create mode 100644 examples/MSP432/ccs/Mongoose/.cproject create mode 100644 examples/MSP432/ccs/Mongoose/.project create mode 100644 examples/MSP432/ccs/Mongoose/Mongoose.cfg diff --git a/examples/CC3200/Makefile b/examples/CC3200/Makefile index cbb9fe4e7..227bc70b6 100644 --- a/examples/CC3200/Makefile +++ b/examples/CC3200/Makefile @@ -7,9 +7,6 @@ PORT ?= auto MAKEFLAGS += w all clean: - rm -rf ccs/*/Debug - rm -rf ccs/*/Release - rm -rf ccs/*/.launches docker run --rm -i -v $(SRC_DIR):/src $(SDK) \ /bin/bash -c "\ make -C /src/mongoose mongoose.c mongoose.h && \ diff --git a/examples/CC3200/ccs/MG_sensor_demo/.cproject b/examples/CC3200/ccs/MG_sensor_demo/.cproject index 1cf62a468..c1fd08c51 100644 --- a/examples/CC3200/ccs/MG_sensor_demo/.cproject +++ b/examples/CC3200/ccs/MG_sensor_demo/.cproject @@ -31,7 +31,7 @@ <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE.1334773591" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE" valueType="definedSymbols"> <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> <listOptionValue builtIn="false" value="SL_PLATFORM_MULTI_THREADED=1"/> - <listOptionValue builtIn="false" value="CC3200_FS_SLFS=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> <listOptionValue builtIn="false" value="USE_FREERTOS"/> <listOptionValue builtIn="false" value="cc3200"/> </option> @@ -126,7 +126,7 @@ <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE.709446512" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE" valueType="definedSymbols"> <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> <listOptionValue builtIn="false" value="SL_PLATFORM_MULTI_THREADED=1"/> - <listOptionValue builtIn="false" value="CC3200_FS_SLFS=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> <listOptionValue builtIn="false" value="USE_FREERTOS"/> <listOptionValue builtIn="false" value="cc3200"/> </option> diff --git a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.codan.core.prefs b/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.codan.core.prefs deleted file mode 100644 index f653028c5..000000000 --- a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.codan.core.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -inEditor=false -onBuild=false diff --git a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.core.prefs b/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.core.prefs deleted file mode 100755 index b22c31ed4..000000000 --- a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.core.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -environment/project/com.ti.ccstudio.buildDefinitions.TMS470.Release.2030896039/append=true -environment/project/com.ti.ccstudio.buildDefinitions.TMS470.Release.2030896039/appendContributed=true diff --git a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.debug.core.prefs b/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.debug.core.prefs deleted file mode 100644 index 2adc7b1dd..000000000 --- a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.cdt.debug.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker diff --git a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.core.resources.prefs b/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 37af36743..000000000 --- a/examples/CC3200/ccs/MG_sensor_demo/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -encoding//Debug/makefile=UTF-8 -encoding//Debug/objects.mk=UTF-8 -encoding//Debug/sources.mk=UTF-8 -encoding//Debug/subdir_rules.mk=UTF-8 -encoding//Debug/subdir_vars.mk=UTF-8 -encoding//Release/makefile=UTF-8 -encoding//Release/objects.mk=UTF-8 -encoding//Release/sources.mk=UTF-8 -encoding//Release/subdir_rules.mk=UTF-8 -encoding//Release/subdir_vars.mk=UTF-8 diff --git a/examples/CC3200/ccs/Makefile b/examples/CC3200/ccs/Makefile new file mode 100644 index 000000000..85279a195 --- /dev/null +++ b/examples/CC3200/ccs/Makefile @@ -0,0 +1,2 @@ +clean: + rm -rf */Debug */Release */.launches */.settings */.xdchelp */src diff --git a/examples/CC3200/ccs/Mongoose/.cproject b/examples/CC3200/ccs/Mongoose/.cproject index f601d79bb..814c770f3 100644 --- a/examples/CC3200/ccs/Mongoose/.cproject +++ b/examples/CC3200/ccs/Mongoose/.cproject @@ -29,7 +29,7 @@ <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE.2068422510" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE" valueType="definedSymbols"> <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> <listOptionValue builtIn="false" value="SL_PLATFORM_MULTI_THREADED=1"/> - <listOptionValue builtIn="false" value="CC3200_FS_SLFS=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> <listOptionValue builtIn="false" value="cc3200"/> </option> <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.1338331575" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> @@ -94,7 +94,7 @@ <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE.1633469996" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.DEFINE" valueType="definedSymbols"> <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> <listOptionValue builtIn="false" value="SL_PLATFORM_MULTI_THREADED=1"/> - <listOptionValue builtIn="false" value="CC3200_FS_SLFS=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> <listOptionValue builtIn="false" value="cc3200"/> </option> <option id="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.627114921" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> diff --git a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.codan.core.prefs b/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.codan.core.prefs deleted file mode 100644 index f653028c5..000000000 --- a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.codan.core.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -inEditor=false -onBuild=false diff --git a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.debug.core.prefs b/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.debug.core.prefs deleted file mode 100644 index 2adc7b1dd..000000000 --- a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.cdt.debug.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker diff --git a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.core.resources.prefs b/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 37af36743..000000000 --- a/examples/CC3200/ccs/Mongoose/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -encoding//Debug/makefile=UTF-8 -encoding//Debug/objects.mk=UTF-8 -encoding//Debug/sources.mk=UTF-8 -encoding//Debug/subdir_rules.mk=UTF-8 -encoding//Debug/subdir_vars.mk=UTF-8 -encoding//Release/makefile=UTF-8 -encoding//Release/objects.mk=UTF-8 -encoding//Release/sources.mk=UTF-8 -encoding//Release/subdir_rules.mk=UTF-8 -encoding//Release/subdir_vars.mk=UTF-8 diff --git a/examples/CC3200/main.c b/examples/CC3200/main.c index 81770c819..31f2211be 100644 --- a/examples/CC3200/main.c +++ b/examples/CC3200/main.c @@ -228,6 +228,6 @@ void SimpleLinkSockEventHandler(SlSockEvent_t *e) { } void SimpleLinkGeneralEventHandler(SlDeviceEvent_t *e) { - LOG(LL_INFO, ("status %d sender %d", e->EventData.deviceEvent.status, - e->EventData.deviceEvent.sender)); + LOG(LL_ERROR, ("status %d sender %d", e->EventData.deviceEvent.status, + e->EventData.deviceEvent.sender)); } diff --git a/examples/MSP432/ccs/MG_hello/.ccsproject b/examples/MSP432/ccs/MG_hello/.ccsproject new file mode 100644 index 000000000..723a2dd4a --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/.ccsproject @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<?ccsproject version="1.0"?> +<projectOptions> + <deviceVariant value="MSP432P401R"/> + <deviceFamily value="MSP432"/> + <deviceEndianness value="little"/> + <codegenToolVersion value="5.2.7"/> + <isElfFormat value="true"/> + <rts value="libc.a"/> + <createSlaveProjects value=""/> + <origin value="/home/rojer/cesanta/ti/tirtos_msp43x_2_16_00_08/resources/msp_exp432P401RLaunchpad/networkExamples/tiNetworkExamples/wiFiExamples/com_ti_rtsc_tirtosmsp430_example_101.projectspec"/> + <templateProperties value="id=com_ti_rtsc_tirtosmsp430_example_101.projectspec.tcpEchoCC3X00_MSP_EXP432P401R_TI_MSP432P401R,type=rtsc,products=com.ti.rtsc.TIRTOSmsp430,xdcToolsVersion=3_32_00_06_core,target=ti.targets.arm.elf.M4F,platform=ti.platforms.msp432:MSP432P401R,buildProfile=release,isHybrid=true,configuroOptions= --compileOptions "${COMPILER_FLAGS} ","/> + <connection value="common/targetdb/connections/TIXDS110_Connection.xml"/> + <isTargetManual value="false"/> +</projectOptions> diff --git a/examples/MSP432/ccs/MG_hello/.cproject b/examples/MSP432/ccs/MG_hello/.cproject new file mode 100644 index 000000000..1d39d5a46 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/.cproject @@ -0,0 +1,267 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> + <storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings"> + <cconfiguration id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.638648210"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.638648210" moduleId="org.eclipse.cdt.core.settings" name="Debug"> + <externalSettings/> + <extensions> + <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/> + </extensions> + </storageModule> + <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.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.638648210" name="Debug" parent="com.ti.ccstudio.buildDefinitions.MSP432.Debug" postbuildStep="" prebuildStep=""> + <folderInfo id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.638648210." name="/" resourcePath=""> + <toolChain id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.DebugToolchain.1076366966" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerDebug.1079317900"> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.276624783" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> + <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=MSP432P401R"/> + <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> + <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/> + <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/> + <listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/> + <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> + <listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/> + <listOptionValue builtIn="false" value="XDC_VERSION=3.31.1.33_core"/> + <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSmsp430:2.16.0.08;"/> + <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.138822681" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="5.2.7" valueType="string"/> + <targetPlatform id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.targetPlatformDebug.1618410608" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.targetPlatformDebug"/> + <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.builderDebug.736457078" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.builderDebug"/> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.compilerDebug.736356176" name="MSP432 Compiler" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.compilerDebug"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC.1591032819" name="Enable support for GCC extensions (DEPRECATED) (--gcc)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.1284806631" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.1019484696" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.1019163630" name="Application binary interface. [See 'General' page to edit] (--abi)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.eabi" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.1936183167" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.FPv4SPD16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE.938644212" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE" valueType="definedSymbols"> + <listOptionValue builtIn="false" value="__MSP432P401R__"/> + <listOptionValue builtIn="false" value="TARGET_IS_MSP432P4XX"/> + <listOptionValue builtIn="false" value="MSP432WARE"/> + <listOptionValue builtIn="false" value="ccs"/> + <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH.1321802084" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH" valueType="includePath"> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../Mongoose""/> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../../../..""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include/CMSIS""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00/oslib""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00/simplelink/include""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/inc/CMSIS""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/inc""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/driverlib/MSP432P4xx""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.802231855" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER.976177344" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER" value=""all"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING.612029411" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING" valueType="stringList"> + <listOptionValue builtIn="false" value="225"/> + <listOptionValue builtIn="false" value="255"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER.1754878942" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.1689634884" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN.1189300180" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.1104211376" name="Set error category for ULP power rules (--advice:power_severity)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.suppress" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS.716853038" name="Place each function in a separate subsection (--gen_func_subsections, -ms)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT.1816905062" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT.C99" valueType="enumerated"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS.1163073582" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS.147603670" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS.145022476" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS.879075933" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerDebug.1079317900" name="MSP432 Linker" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerDebug"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.MAP_FILE.846990062" name="Link information (map) listed into <file> (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.STACK_SIZE.34022886" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.STACK_SIZE" value="512" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.HEAP_SIZE.1014126637" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.HEAP_SIZE" value="1024" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.OUTPUT_FILE.1315814966" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.OUTPUT_FILE" value=""${ProjName}.out"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.XML_LINK_INFO.603154510" name="Detailed link information data-base into <file> (--xml_link_info, -xml_link_info)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DISPLAY_ERROR_NUMBER.950980130" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP.259050193" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.SEARCH_PATH.926931707" name="Add <dir> to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.SEARCH_PATH" valueType="libPaths"> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/lib""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.LIBRARY.710098937" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.LIBRARY" valueType="libs"> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/driverlib/MSP432P4xx/ccs/msp432p4xx_driverlib.lib""/> + <listOptionValue builtIn="false" value=""libc.a""/> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../Mongoose/Debug/Mongoose.lib""/> + </option> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD_SRCS.1725215293" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD2_SRCS.1216891169" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD2_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__GEN_CMDS.981400465" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__GEN_CMDS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.966033321" name="MSP432 Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.ROMWIDTH.574665258" name="Specify rom width (--romwidth, -romwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.ROMWIDTH" value="8" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.MEMWIDTH.173244956" name="Specify memory width (--memwidth, -memwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.MEMWIDTH" value="8" valueType="string"/> + </tool> + <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.1889527785" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool"> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.1674391127" name="Compiler tools directory (-c)" 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.TARGET.654422520" name="Target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M4F" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.1998131485" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.2023234812" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1112795975" name="Build-profile (-r)" 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.XDC_PATH.1944781751" name="Package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList"> + <listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSMSP430_REPOS}"/> + <listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/> + </option> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.1553318971" name="Additional compiler options (--compileOptions)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS} "" valueType="string"/> + </tool> + </toolChain> + </folderInfo> + <sourceEntries> + <entry excluding="src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> + </sourceEntries> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"> + <externalSettings containerId="Mongoose;com.ti.ccstudio.buildDefinitions.MSP432.Debug.242205865" factoryId="org.eclipse.cdt.core.cfg.export.settings.sipplier"/> + </storageModule> + </cconfiguration> + <cconfiguration id="com.ti.ccstudio.buildDefinitions.MSP432.Release.436397866"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.MSP432.Release.436397866" moduleId="org.eclipse.cdt.core.settings" name="Release"> + <externalSettings/> + <extensions> + <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/> + </extensions> + </storageModule> + <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.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.MSP432.Release.436397866" name="Release" parent="com.ti.ccstudio.buildDefinitions.MSP432.Release" postbuildStep="" prebuildStep=""> + <folderInfo id="com.ti.ccstudio.buildDefinitions.MSP432.Release.436397866." name="/" resourcePath=""> + <toolChain id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.ReleaseToolchain.374423190" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.ReleaseToolchain" targetTool="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerRelease.260367345"> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1649672422" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> + <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=MSP432P401R"/> + <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> + <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/> + <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/> + <listOptionValue builtIn="false" value="LINKER_COMMAND_FILE="/> + <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> + <listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/> + <listOptionValue builtIn="false" value="XDC_VERSION=3.31.1.33_core"/> + <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSmsp430:2.16.0.08;"/> + <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.927265857" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="5.2.7" valueType="string"/> + <targetPlatform id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.targetPlatformRelease.1835040420" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.targetPlatformRelease"/> + <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.builderRelease.1977190713" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.builderRelease"/> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.compilerRelease.1200593934" name="MSP432 Compiler" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.compilerRelease"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC.1457348870" name="Enable support for GCC extensions (DEPRECATED) (--gcc)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.280776704" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.2145418987" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.1836019986" name="Application binary interface. [See 'General' page to edit] (--abi)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.eabi" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.2113274796" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.FPv4SPD16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE.531247366" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE" valueType="definedSymbols"> + <listOptionValue builtIn="false" value="__MSP432P401R__"/> + <listOptionValue builtIn="false" value="TARGET_IS_MSP432P4XX"/> + <listOptionValue builtIn="false" value="MSP432WARE"/> + <listOptionValue builtIn="false" value="ccs"/> + <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH.881229545" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH" valueType="includePath"> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../Mongoose""/> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../../../..""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include/CMSIS""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00/oslib""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00/simplelink/include""/> + <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/inc/CMSIS""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/inc""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/driverlib/MSP432P4xx""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER.1564386250" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER" value="all" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING.708184392" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING" valueType="stringList"> + <listOptionValue builtIn="false" value="225"/> + <listOptionValue builtIn="false" value="255"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER.536483130" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.239547499" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN.968480652" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.350731145" name="Set error category for ULP power rules (--advice:power_severity)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.suppress" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.1651881817" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS.1299449598" name="Place each function in a separate subsection (--gen_func_subsections, -ms)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GEN_FUNC_SUBSECTIONS.on" valueType="enumerated"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS.1687182342" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS.1421282679" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS.1396461343" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS.651013519" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerRelease.260367345" name="MSP432 Linker" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exe.linkerRelease"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.MAP_FILE.1948445835" name="Link information (map) listed into <file> (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.MAP_FILE" value=""${ProjName}.map"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.STACK_SIZE.2067652312" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.STACK_SIZE" value="512" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.HEAP_SIZE.612962133" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.HEAP_SIZE" value="1024" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.OUTPUT_FILE.2095976499" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.OUTPUT_FILE" value=""${ProjName}.out"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.XML_LINK_INFO.712616529" name="Detailed link information data-base into <file> (--xml_link_info, -xml_link_info)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.XML_LINK_INFO" value=""${ProjName}_linkInfo.xml"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DISPLAY_ERROR_NUMBER.1224501479" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP.418234384" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.SEARCH_PATH.137176329" name="Add <dir> to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.SEARCH_PATH" valueType="libPaths"> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/lib""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.LIBRARY.818310635" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.linkerID.LIBRARY" valueType="libs"> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/msp432_driverlib_3_10_00_09/driverlib/MSP432P4xx/ccs/msp432p4xx_driverlib.lib""/> + <listOptionValue builtIn="false" value=""libc.a""/> + <listOptionValue builtIn="false" value=""${PROJECT_LOC}/../Mongoose/Release/Mongoose.lib""/> + </option> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD_SRCS.1894656966" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD2_SRCS.762446262" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__CMD2_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__GEN_CMDS.1931644627" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.exeLinker.inputType__GEN_CMDS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.263181790" name="MSP432 Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.ROMWIDTH.505552603" name="Specify rom width (--romwidth, -romwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.ROMWIDTH" value="8" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.MEMWIDTH.748071088" name="Specify memory width (--memwidth, -memwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.hex.MEMWIDTH" value="8" valueType="string"/> + </tool> + <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.1631621958" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool"> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.432148205" name="Compiler tools directory (-c)" 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.TARGET.1198814330" name="Target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M4F" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.1903385455" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.2126022150" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1194372441" name="Build-profile (-r)" 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.XDC_PATH.1407213349" name="Package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList"> + <listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSMSP430_REPOS}"/> + <listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/> + </option> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS.1959987883" name="Additional compiler options (--compileOptions)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.COMPILE_OPTIONS" value=""${COMPILER_FLAGS} "" valueType="string"/> + </tool> + </toolChain> + </folderInfo> + <sourceEntries> + <entry excluding="src|msp432p401r.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> + </sourceEntries> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"> + <externalSettings containerId="Mongoose;com.ti.ccstudio.buildDefinitions.MSP432.Release.1544782967" factoryId="org.eclipse.cdt.core.cfg.export.settings.sipplier"/> + </storageModule> + </cconfiguration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <project id="tcpEchoCC3X00_MSP_EXP432P401R_TI_MSP432P401R.com.ti.ccstudio.buildDefinitions.MSP432.ProjectType.382106642" name="MSP432" projectType="com.ti.ccstudio.buildDefinitions.MSP432.ProjectType"/> + </storageModule> + <storageModule moduleId="scannerConfiguration"/> + <storageModule moduleId="org.eclipse.cdt.core.language.mapping"> + <project-mappings> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.asmSource" language="com.ti.ccstudio.core.TIASMLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.ti.ccstudio.core.TIGCCLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.ti.ccstudio.core.TIGCCLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.ti.ccstudio.core.TIGPPLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.ti.ccstudio.core.TIGPPLanguage"/> + </project-mappings> + </storageModule> + <storageModule moduleId="refreshScope"/> +</cproject> diff --git a/examples/MSP432/ccs/MG_hello/.project b/examples/MSP432/ccs/MG_hello/.project new file mode 100644 index 000000000..6a90575db --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/.project @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>MG_hello</name> + <comment></comment> + <projects> + <project>Mongoose</project> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <triggers>full,incremental,</triggers> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature> + <nature>com.ti.ccstudio.core.ccsNature</nature> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.core.ccnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> +</projectDescription> diff --git a/examples/MSP432/ccs/MG_hello/Board.h b/examples/MSP432/ccs/MG_hello/Board.h new file mode 100644 index 000000000..312526897 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/Board.h @@ -0,0 +1,99 @@ +/* + * Copyright (c) 2015, Texas Instruments Incorporated + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of Texas Instruments Incorporated nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __BOARD_H +#define __BOARD_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "MSP_EXP432P401R.h" + +#define Board_initGeneral MSP_EXP432P401R_initGeneral +#define Board_initGPIO MSP_EXP432P401R_initGPIO +#define Board_initI2C MSP_EXP432P401R_initI2C +#define Board_initPWM MSP_EXP432P401R_initPWM +#define Board_initSDSPI MSP_EXP432P401R_initSDSPI +#define Board_initSPI MSP_EXP432P401R_initSPI +#define Board_initUART MSP_EXP432P401R_initUART +#define Board_initWatchdog MSP_EXP432P401R_initWatchdog +#define Board_initWiFi MSP_EXP432P401R_initWiFi + +#define Board_LED_ON MSP_EXP432P401R_LED_ON +#define Board_LED_OFF MSP_EXP432P401R_LED_OFF + +#define Board_BUTTON0 MSP_EXP432P401R_S1 +#define Board_BUTTON1 MSP_EXP432P401R_S2 +#define Board_LED0 MSP_EXP432P401R_LED1 +#define Board_LED1 MSP_EXP432P401R_LED_RED +#define Board_LED2 MSP_EXP432P401R_LED_RED + +/* + * MSP_EXP432P401R_LED_GREEN & MSP_EXP432P401R_LED_BLUE are used for + * PWM examples. Uncomment the following lines if you would like to control + * the LEDs with the GPIO driver. + */ +//#define Board_LED2 MSP_EXP432P401R_LED_GREEN +//#define Board_LED3 MSP_EXP432P401R_LED_BLUE + +#define Board_I2C0 MSP_EXP432P401R_I2CB0 +#define Board_I2C_TMP MSP_EXP432P401R_I2CB0 +#define Board_I2C_NFC MSP_EXP432P401R_I2CB0 +#define Board_I2C_TPL0401 MSP_EXP432P401R_I2CB0 + +#define Board_PWM0 MSP_EXP432P401R_PWM_TA1_1 +#define Board_PWM1 MSP_EXP432P401R_PWM_TA1_2 + +#define Board_SDSPI0 MSP_EXP432P401R_SDSPIB0 + +#define Board_SPI0 MSP_EXP432P401R_SPIB0 +#define Board_SPI1 MSP_EXP432P401R_SPIB2 + +#define Board_UART0 MSP_EXP432P401R_UARTA0 +#define Board_UART1 MSP_EXP432P401R_UARTA2 + +#define Board_WATCHDOG0 MSP_EXP432P401R_WATCHDOG + +#define Board_WIFI MSP_EXP432P401R_WIFI +#define Board_WIFI_SPI MSP_EXP432P401R_SPIB0 + +/* Board specific I2C addresses */ +#define Board_TMP006_ADDR (0x40) +#define Board_RF430CL330_ADDR (0x28) +#define Board_TPL0401_ADDR (0x40) + +#ifdef __cplusplus +} +#endif + +#endif /* __BOARD_H */ diff --git a/examples/MSP432/ccs/MG_hello/MG_hello.cfg b/examples/MSP432/ccs/MG_hello/MG_hello.cfg new file mode 100644 index 000000000..96f218787 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/MG_hello.cfg @@ -0,0 +1,540 @@ +/* + * Copyright (c) 2015-2016, Texas Instruments Incorporated + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of Texas Instruments Incorporated nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + + +/* ================ Clock configuration ================ */ +var Clock = xdc.useModule('ti.sysbios.knl.Clock'); +/* + * Default value is family dependent. For example, Linux systems often only + * support a minimum period of 10000 us and multiples of 10000 us. + * TI platforms have a default of 1000 us. + */ +Clock.tickPeriod = 1000; + + + +/* ================ Defaults (module) configuration ================ */ +var Defaults = xdc.useModule('xdc.runtime.Defaults'); +/* + * A flag to allow module names to be loaded on the target. Module name + * strings are placed in the .const section for debugging purposes. + * + * Pick one: + * - true (default) + * Setting this parameter to true will include name strings in the .const + * section so that Errors and Asserts are easier to debug. + * - false + * Setting this parameter to false will reduce footprint in the .const + * section. As a result, Error and Assert messages will contain an + * "unknown module" prefix instead of the actual module name. + */ +Defaults.common$.namedModule = true; +//Defaults.common$.namedModule = false; + + + +/* ================ Error configuration ================ */ +var Error = xdc.useModule('xdc.runtime.Error'); +/* + * This function is called to handle all raised errors, but unlike + * Error.raiseHook, this function is responsible for completely handling the + * error with an appropriately initialized Error_Block. + * + * Pick one: + * - Error.policyDefault (default) + * Calls Error.raiseHook with an initialized Error_Block structure and logs + * the error using the module's logger. + * - Error.policySpin + * Simple alternative that traps on a while(1) loop for minimized target + * footprint. + * Using Error.policySpin, the Error.raiseHook will NOT called. + */ +Error.policyFxn = Error.policyDefault; +//Error.policyFxn = Error.policySpin; + +/* + * If Error.policyFxn is set to Error.policyDefault, this function is called + * whenever an error is raised by the Error module. + * + * Pick one: + * - Error.print (default) + * Errors are formatted and output via System_printf() for easier + * debugging. + * - null + * Errors are not formatted or logged. This option reduces code footprint. + * - non-null function + * Errors invoke custom user function. See the Error module documentation + * for more details. + */ +Error.raiseHook = Error.print; +//Error.raiseHook = null; +//Error.raiseHook = "&myErrorFxn"; + +/* + * If Error.policyFxn is set to Error.policyDefault, this option applies to the + * maximum number of times the Error.raiseHook function can be recursively + * invoked. This option limits the possibility of an infinite recursion that + * could lead to a stack overflow. + * The default value is 16. + */ +Error.maxDepth = 2; + + + +/* ================ Hwi configuration ================ */ +var halHwi = xdc.useModule('ti.sysbios.hal.Hwi'); +var m3Hwi = xdc.useModule('ti.sysbios.family.arm.m3.Hwi'); +/* + * Checks for Hwi (system) stack overruns while in the Idle loop. + * + * Pick one: + * - true (default) + * Checks the top word for system stack overflows during the idle loop and + * raises an Error if one is detected. + * - false + * Disabling the runtime check improves runtime performance and yields a + * reduced flash footprint. + */ +halHwi.checkStackFlag = true; +//halHwi.checkStackFlag = false; + +/* + * The following options alter the system's behavior when a hardware exception + * is detected. + * + * Pick one: + * - Hwi.enableException = true + * This option causes the default m3Hwi.excHandlerFunc function to fully + * decode an exception and dump the registers to the system console. + * This option raises errors in the Error module and displays the + * exception in ROV. + * - Hwi.enableException = false + * This option reduces code footprint by not decoding or printing the + * exception to the system console. + * It however still raises errors in the Error module and displays the + * exception in ROV. + * - Hwi.excHandlerFunc = null + * This is the most aggressive option for code footprint savings; but it + * can difficult to debug exceptions. It reduces flash footprint by + * plugging in a default while(1) trap when exception occur. This option + * does not raise an error with the Error module. + */ +m3Hwi.enableException = true; +//m3Hwi.enableException = false; +//m3Hwi.excHandlerFunc = null; + +/* + * Enable hardware exception generation when dividing by zero. + * + * Pick one: + * - 0 (default) + * Disables hardware exceptions when dividing by zero + * - 1 + * Enables hardware exceptions when dividing by zero + */ +m3Hwi.nvicCCR.DIV_0_TRP = 0; +//m3Hwi.nvicCCR.DIV_0_TRP = 1; + +/* + * Enable hardware exception generation for invalid data alignment. + * + * Pick one: + * - 0 (default) + * Disables hardware exceptions for data alignment + * - 1 + * Enables hardware exceptions for data alignment + */ +m3Hwi.nvicCCR.UNALIGN_TRP = 0; +//m3Hwi.nvicCCR.UNALIGN_TRP = 1; + + + +/* ================ Idle configuration ================ */ +var Idle = xdc.useModule('ti.sysbios.knl.Idle'); +/* + * The Idle module is used to specify a list of functions to be called when no + * other tasks are running in the system. + * + * Functions added here will be run continuously within the idle task. + * + * Function signature: + * Void func(Void); + */ +//Idle.addFunc("&myIdleFunc"); + + + +/* ================ Kernel (SYS/BIOS) configuration ================ */ +var BIOS = xdc.useModule('ti.sysbios.BIOS'); +/* + * Enable asserts in the BIOS library. + * + * Pick one: + * - true (default) + * Enables asserts for debugging purposes. + * - false + * Disables asserts for a reduced code footprint and better performance. + */ +//BIOS.assertsEnabled = true; +BIOS.assertsEnabled = false; + +/* + * Specify default heap size for BIOS. + */ +BIOS.heapSize = 32768; + +/* + * A flag to determine if xdc.runtime sources are to be included in a custom + * built BIOS library. + * + * Pick one: + * - false (default) + * The pre-built xdc.runtime library is provided by the respective target + * used to build the application. + * - true + * xdc.runtime library souces are to be included in the custom BIOS + * library. This option yields the most efficient library in both code + * footprint and runtime performance. + */ +BIOS.includeXdcRuntime = false; +//BIOS.includeXdcRuntime = true; + +/* + * The SYS/BIOS runtime is provided in the form of a library that is linked + * with the application. Several forms of this library are provided with the + * SYS/BIOS product. + * + * Pick one: + * - BIOS.LibType_Custom + * Custom built library that is highly optimized for code footprint and + * runtime performance. + * - BIOS.LibType_Debug + * Custom built library that is non-optimized that can be used to + * single-step through APIs with a debugger. + * + */ +BIOS.libType = BIOS.LibType_Custom; +//BIOS.libType = BIOS.LibType_Debug; + +/* + * Runtime instance creation enable flag. + * + * Pick one: + * - true (default) + * Allows Mod_create() and Mod_delete() to be called at runtime which + * requires a default heap for dynamic memory allocation. + * - false + * Reduces code footprint by disallowing Mod_create() and Mod_delete() to + * be called at runtime. Object instances are constructed via + * Mod_construct() and destructed via Mod_destruct(). + */ +BIOS.runtimeCreatesEnabled = true; +//BIOS.runtimeCreatesEnabled = false; + +/* + * Enable logs in the BIOS library. + * + * Pick one: + * - true (default) + * Enables logs for debugging purposes. + * - false + * Disables logging for reduced code footprint and improved runtime + * performance. + */ +//BIOS.logsEnabled = true; +BIOS.logsEnabled = false; + + + +/* ================ Memory configuration ================ */ +var Memory = xdc.useModule('xdc.runtime.Memory'); +/* + * The Memory module itself simply provides a common interface for any + * variety of system and application specific memory management policies + * implemented by the IHeap modules(Ex. HeapMem, HeapBuf). + */ + + + +/* ================ Program configuration ================ */ +/* + * Program.stack is ignored with IAR. Use the project options in + * IAR Embedded Workbench to alter the system stack size. + */ +if (!Program.build.target.$name.match(/iar/)) { + /* + * Reducing the system stack size (used by ISRs and Swis) to reduce + * RAM usage. + */ + Program.stack = 1024; +} + + + +/* + * Enable Semihosting for GNU targets to print to CCS console + */ +if (Program.build.target.$name.match(/gnu/)) { + var SemiHost = xdc.useModule('ti.sysbios.rts.gnu.SemiHostSupport'); +} +/* ================ Semaphore configuration ================ */ +var Semaphore = xdc.useModule('ti.sysbios.knl.Semaphore'); +/* + * Enables global support for Task priority pend queuing. + * + * Pick one: + * - true (default) + * This allows pending tasks to be serviced based on their task priority. + * - false + * Pending tasks are services based on first in, first out basis. + * + * When using BIOS in ROM: + * This option must be set to false. + */ +//Semaphore.supportsPriority = true; +Semaphore.supportsPriority = false; + +/* + * Allows for the implicit posting of events through the semaphore, + * disable for additional code saving. + * + * Pick one: + * - true + * This allows the Semaphore module to post semaphores and events + * simultaneously. + * - false (default) + * Events must be explicitly posted to unblock tasks. + * + */ +//Semaphore.supportsEvents = true; +Semaphore.supportsEvents = false; + + + +/* ================ Swi configuration ================ */ +var Swi = xdc.useModule('ti.sysbios.knl.Swi'); +/* + * A software interrupt is an object that encapsulates a function to be + * executed and a priority. Software interrupts are prioritized, preempt tasks + * and are preempted by hardware interrupt service routines. + * + * This module is included to allow Swi's in a users' application. + */ + + + +/* ================ System configuration ================ */ +var System = xdc.useModule('xdc.runtime.System'); +/* + * The Abort handler is called when the system exits abnormally. + * + * Pick one: + * - System.abortStd (default) + * Call the ANSI C Standard 'abort()' to terminate the application. + * - System.abortSpin + * A lightweight abort function that loops indefinitely in a while(1) trap + * function. + * - A custom abort handler + * A user-defined function. See the System module documentation for + * details. + */ +System.abortFxn = System.abortStd; +//System.abortFxn = System.abortSpin; +//System.abortFxn = "&myAbortSystem"; + +/* + * The Exit handler is called when the system exits normally. + * + * Pick one: + * - System.exitStd (default) + * Call the ANSI C Standard 'exit()' to terminate the application. + * - System.exitSpin + * A lightweight exit function that loops indefinitely in a while(1) trap + * function. + * - A custom exit function + * A user-defined function. See the System module documentation for + * details. + */ +System.exitFxn = System.exitStd; +//System.exitFxn = System.exitSpin; +//System.exitFxn = "&myExitSystem"; + +/* + * Minimize exit handler array in the System module. The System module includes + * an array of functions that are registered with System_atexit() which is + * called by System_exit(). The default value is 8. + */ +System.maxAtexitHandlers = 2; + +/* + * The System.SupportProxy defines a low-level implementation of System + * functions such as System_printf(), System_flush(), etc. + * + * Pick one pair: + * - SysMin + * This module maintains an internal configurable circular buffer that + * stores the output until System_flush() is called. + * The size of the circular buffer is set via SysMin.bufSize. + * - SysCallback + * SysCallback allows for user-defined implementations for System APIs. + * The SysCallback support proxy has a smaller code footprint and can be + * used to supply custom System_printf services. + * The default SysCallback functions point to stub functions. See the + * SysCallback module's documentation. + */ +var SysMin = xdc.useModule('xdc.runtime.SysMin'); +SysMin.bufSize = 512; +System.SupportProxy = SysMin; +//var SysCallback = xdc.useModule('xdc.runtime.SysCallback'); +//System.SupportProxy = SysCallback; +//SysCallback.abortFxn = "&myUserAbort"; +//SysCallback.exitFxn = "&myUserExit"; +//SysCallback.flushFxn = "&myUserFlush"; +//SysCallback.putchFxn = "&myUserPutch"; +//SysCallback.readyFxn = "&myUserReady"; + + + + +/* ================ Task configuration ================ */ +var Task = xdc.useModule('ti.sysbios.knl.Task'); +/* + * Check task stacks for overflow conditions. + * + * Pick one: + * - true (default) + * Enables runtime checks for task stack overflow conditions during + * context switching ("from" and "to") + * - false + * Disables runtime checks for task stack overflow conditions. + */ +Task.checkStackFlag = true; +//Task.checkStackFlag = false; + +/* + * Set the default task stack size when creating tasks. + * + * The default is dependent on the device being used. Reducing the default stack + * size yields greater memory savings. + */ +Task.defaultStackSize = 512; + +/* + * Enables the idle task. + * + * Pick one: + * - true (default) + * Creates a task with priority of 0 which calls idle hook functions. This + * option must be set to true to gain power savings provided by the Power + * module. + * - false + * No idle task is created. This option consumes less memory as no + * additional default task stack is needed. + * To gain power savings by the Power module without having the idle task, + * add Idle.run as the Task.allBlockedFunc. + */ +Task.enableIdleTask = true; +//Task.enableIdleTask = false; +//Task.allBlockedFunc = Idle.run; + +/* + * If Task.enableIdleTask is set to true, this option sets the idle task's + * stack size. + * + * Reducing the idle stack size yields greater memory savings. + */ +Task.idleTaskStackSize = 512; + +/* + * Reduce the number of task priorities. + * The default is 16. + * Decreasing the number of task priorities yield memory savings. + */ +Task.numPriorities = 16; + + + +/* ================ Text configuration ================ */ +var Text = xdc.useModule('xdc.runtime.Text'); +/* + * These strings are placed in the .const section. Setting this parameter to + * false will save space in the .const section. Error, Assert and Log messages + * will print raw ids and args instead of a formatted message. + * + * Pick one: + * - true (default) + * This option loads test string into the .const for easier debugging. + * - false + * This option reduces the .const footprint. + */ +Text.isLoaded = true; +//Text.isLoaded = false; + + + +/* ================ Types configuration ================ */ +var Types = xdc.useModule('xdc.runtime.Types'); +/* + * This module defines basic constants and types used throughout the + * xdc.runtime package. + */ + + + +/* ================ TI-RTOS middleware configuration ================ */ +var mwConfig = xdc.useModule('ti.mw.Config'); +/* + * Include TI-RTOS middleware libraries + */ + + + +/* ================ TI-RTOS drivers' configuration ================ */ +var driversConfig = xdc.useModule('ti.drivers.Config'); +/* + * Include TI-RTOS drivers + * + * Pick one: + * - driversConfig.LibType_NonInstrumented (default) + * Use TI-RTOS drivers library optimized for footprint and performance + * without asserts or logs. + * - driversConfig.LibType_Instrumented + * Use TI-RTOS drivers library for debugging with asserts and logs enabled. + */ +driversConfig.libType = driversConfig.LibType_NonInstrumented; +//driversConfig.libType = driversConfig.LibType_Instrumented; + + + +/* ================ Application Specific Instances ================ */ +var Mailbox = xdc.useModule('ti.sysbios.knl.Mailbox'); diff --git a/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.c b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.c new file mode 100644 index 000000000..80e15c1e0 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.c @@ -0,0 +1,653 @@ +/* + * Copyright (c) 2015-2016, Texas Instruments Incorporated + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of Texas Instruments Incorporated nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * ======== MSP_EXP432P401R.c ======== + * This file is responsible for setting up the board specific items for the + * MSP_EXP432P401R board. + */ + +#include <stdbool.h> + +#include <ti/drivers/ports/DebugP.h> +#include <ti/drivers/ports/HwiP.h> +#include <ti/drivers/Power.h> +#include <ti/drivers/power/PowerMSP432.h> + +#include <msp.h> +#include <rom.h> +#include <rom_map.h> +#include <dma.h> +#include <gpio.h> +#include <i2c.h> +#include <pmap.h> +#include <spi.h> +#include <timer_a.h> +#include <uart.h> +#include <wdt_a.h> + +#include <interrupt.h> + +#include "MSP_EXP432P401R.h" + +/* + * =============================== DMA =============================== + */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_ALIGN(dmaControlTable, 256) +#elif defined(__IAR_SYSTEMS_ICC__) +#pragma data_alignment=256 +#elif defined(__GNUC__) +__attribute__ ((aligned (256))) +#endif +static DMA_ControlTable dmaControlTable[8]; +static bool dmaInitialized = false; + +/* + * ======== dmaErrorHwi ======== + */ +static void dmaErrorHwi(uintptr_t arg) +{ + DebugP_log1("DMA error code: %d\n", MAP_DMA_getErrorStatus()); + MAP_DMA_clearErrorStatus(); + DebugP_log0("DMA error!!\n"); + while(1); +} + +/* + * ======== MSP_EXP432P401R_initDMA ======== + */ +void MSP_EXP432P401R_initDMA(void) +{ + HwiP_Params hwiParams; + HwiP_Handle dmaErrorHwiHandle; + + if (!dmaInitialized) { + HwiP_Params_init(&hwiParams); + dmaErrorHwiHandle = HwiP_create(INT_DMA_ERR, dmaErrorHwi, &hwiParams); + if (dmaErrorHwiHandle == NULL) { + DebugP_log0("Failed to create DMA error Hwi!!\n"); + while (1); + } + + MAP_DMA_enableModule(); + MAP_DMA_setControlBase(dmaControlTable); + + dmaInitialized = true; + } +} + +/* + * ======== MSP_EXP432P401R_initGeneral ======== + */ +void MSP_EXP432P401R_initGeneral(void) +{ + Power_init(); +} + +/* + * =============================== GPIO =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(GPIOMSP432_config, ".const:GPIOMSP432_config") +#endif + +#include <ti/drivers/GPIO.h> +#include <ti/drivers/gpio/GPIOMSP432.h> + +/* + * Array of Pin configurations + * NOTE: The order of the pin configurations must coincide with what was + * defined in MSP_EXP432P401R.h + * NOTE: Pins not used for interrupts should be placed at the end of the + * array. Callback entries can be omitted from callbacks array to + * reduce memory usage. + */ +GPIO_PinConfig gpioPinConfigs[] = { + /* Input pins */ + /* MSP_EXP432P401R_S1 */ + GPIOMSP432_P1_1 | GPIO_CFG_IN_PU | GPIO_CFG_IN_INT_RISING, + /* MSP_EXP432P401R_S2 */ + GPIOMSP432_P1_4 | GPIO_CFG_IN_PU | GPIO_CFG_IN_INT_RISING, + + /* Output pins */ + /* MSP_EXP432P401R_LED1 */ + GPIOMSP432_P1_0 | GPIO_CFG_OUT_STD | GPIO_CFG_OUT_STR_HIGH | GPIO_CFG_OUT_LOW, + /* MSP_EXP432P401R_LED_RED */ + GPIOMSP432_P2_0 | GPIO_CFG_OUT_STD | GPIO_CFG_OUT_STR_HIGH | GPIO_CFG_OUT_LOW, + + /* + * MSP_EXP432P401R_LED_GREEN & MSP_EXP432P401R_LED_BLUE are used for + * PWM examples. Uncomment the following lines if you would like to control + * the LEDs with the GPIO driver. + */ + /* MSP_EXP432P401R_LED_GREEN */ + //GPIOMSP432_P2_1 | GPIO_CFG_OUT_STD | GPIO_CFG_OUT_STR_HIGH | GPIO_CFG_OUT_LOW, + /* MSP_EXP432P401R_LED_BLUE */ + //GPIOMSP432_P2_2 | GPIO_CFG_OUT_STD | GPIO_CFG_OUT_STR_HIGH | GPIO_CFG_OUT_LOW +}; + +/* + * Array of callback function pointers + * NOTE: The order of the pin configurations must coincide with what was + * defined in MSP_EXP432P401R.h + * NOTE: Pins not used for interrupts can be omitted from callbacks array to + * reduce memory usage (if placed at end of gpioPinConfigs array). + */ +GPIO_CallbackFxn gpioCallbackFunctions[] = { + /* MSP_EXP432P401R_S1 */ + NULL, + /* MSP_EXP432P401R_S2 */ + NULL +}; + +const GPIOMSP432_Config GPIOMSP432_config = { + .pinConfigs = (GPIO_PinConfig *)gpioPinConfigs, + .callbacks = (GPIO_CallbackFxn *)gpioCallbackFunctions, + .numberOfPinConfigs = sizeof(gpioPinConfigs)/sizeof(GPIO_PinConfig), + .numberOfCallbacks = sizeof(gpioCallbackFunctions)/sizeof(GPIO_CallbackFxn), + .intPriority = (~0) +}; + +/* + * ======== MSP_EXP432P401R_initGPIO ======== + */ +void MSP_EXP432P401R_initGPIO(void) +{ + /* Initialize peripheral and pins */ + GPIO_init(); +} + +/* + * =============================== I2C =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(I2C_config, ".const:I2C_config") +#pragma DATA_SECTION(i2cMSP432HWAttrs, ".const:i2cMSP432HWAttrs") +#endif + +#include <ti/drivers/I2C.h> +#include <ti/drivers/i2c/I2CMSP432.h> + +I2CMSP432_Object i2cMSP432Objects[MSP_EXP432P401R_I2CCOUNT]; + +const I2CMSP432_HWAttrs i2cMSP432HWAttrs[MSP_EXP432P401R_I2CCOUNT] = { + { + .baseAddr = EUSCI_B0_BASE, + .intNum = INT_EUSCIB0, + .intPriority = (~0), + .clockSource = EUSCI_B_I2C_CLOCKSOURCE_SMCLK + } +}; + +const I2C_Config I2C_config[] = { + { + .fxnTablePtr = &I2CMSP432_fxnTable, + .object = &i2cMSP432Objects[0], + .hwAttrs = &i2cMSP432HWAttrs[0] + }, + {NULL, NULL, NULL} +}; + +/* + * ======== MSP_EXP432P401R_initI2C ======== + */ +void MSP_EXP432P401R_initI2C(void) +{ + /* + * NOTE: TI-RTOS examples configure EUSCIB0 as either SPI or I2C. Thus, + * a conflict occurs when the I2C & SPI drivers are used simultaneously in + * an application. Modify the pin mux settings in this file and resolve the + * conflict before running your the application. + */ + /* Configure Pins 1.6 & 1.7 as SDA & SCL, respectively. */ + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P1, + GPIO_PIN6 | GPIO_PIN7, GPIO_PRIMARY_MODULE_FUNCTION); + + /* Initialize the I2C driver */ + I2C_init(); +} + +/* + * =============================== Power =============================== + */ +const PowerMSP432_Config PowerMSP432_config = { + .policyInitFxn = &PowerMSP432_initPolicy, + .policyFxn = &PowerMSP432_sleepPolicy, + .initialPerfLevel = 2, + .enablePolicy = false, + .enablePerf = true +}; + +/* + * =============================== PWM =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(PWM_config, ".const:PWM_config") +#pragma DATA_SECTION(pwmTimerMSP432HWAttrs, ".const:pwmTimerMSP432HWAttrs") +#endif + +#include <ti/drivers/PWM.h> +#include <ti/drivers/pwm/PWMTimerMSP432.h> + +PWMTimerMSP432_Object pwmTimerMSP432Objects[MSP_EXP432P401R_PWMCOUNT]; + +const PWMTimerMSP432_HWAttrs pwmTimerMSP432HWAttrs[MSP_EXP432P401R_PWMCOUNT] = { + { + .baseAddr = TIMER_A1_BASE, + .compareRegister = TIMER_A_CAPTURECOMPARE_REGISTER_1 + }, + { + .baseAddr = TIMER_A1_BASE, + .compareRegister = TIMER_A_CAPTURECOMPARE_REGISTER_2 + } +}; + +const PWM_Config PWM_config[] = { + { + .fxnTablePtr = &PWMTimerMSP432_fxnTable, + .object = &pwmTimerMSP432Objects[0], + .hwAttrs = &pwmTimerMSP432HWAttrs[0] + }, + { + .fxnTablePtr = &PWMTimerMSP432_fxnTable, + .object = &pwmTimerMSP432Objects[1], + .hwAttrs = &pwmTimerMSP432HWAttrs[1] + }, + {NULL, NULL, NULL} +}; + +/* + * ======== MSP_EXP432P401R_initPWM ======== + */ +void MSP_EXP432P401R_initPWM(void) +{ + /* Use Port Map on Port2 get Timer outputs on pins with LEDs (2.1, 2.2) */ + const uint8_t portMap [] = { + PM_NONE, PM_TA1CCR1A, PM_TA1CCR2A, PM_NONE, + PM_NONE, PM_NONE, PM_NONE, PM_NONE + }; + + /* Mapping capture compare registers to Port 2 */ + MAP_PMAP_configurePorts((const uint8_t *) portMap, PMAP_P2MAP, 1, + PMAP_DISABLE_RECONFIGURATION); + + /* Enable PWM output on GPIO pins */ + MAP_GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P2, + GPIO_PIN1 | GPIO_PIN2, GPIO_PRIMARY_MODULE_FUNCTION); + + PWM_init(); +} + +/* + * =============================== SDSPI =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(SDSPI_config, ".const:SDSPI_config") +#pragma DATA_SECTION(sdspiMSP432HWAttrs, ".const:sdspiMSP432HWAttrs") +#endif + +#include <ti/drivers/SDSPI.h> +#include <ti/drivers/sdspi/SDSPIMSP432.h> + +SDSPIMSP432_Object sdspiMSP432Objects[MSP_EXP432P401R_SDSPICOUNT]; + +const SDSPIMSP432_HWAttrs sdspiMSP432HWAttrs[MSP_EXP432P401R_SDSPICOUNT] = { + { + .baseAddr = EUSCI_B0_BASE, + .clockSource = EUSCI_B_SPI_CLOCKSOURCE_SMCLK, + + /* CLK, MOSI & MISO ports & pins */ + .portSCK = GPIO_PORT_P1, + .pinSCK = GPIO_PIN5, + .sckMode = GPIO_PRIMARY_MODULE_FUNCTION, + + .portMISO = GPIO_PORT_P1, + .pinMISO = GPIO_PIN7, + .misoMode = GPIO_PRIMARY_MODULE_FUNCTION, + + .portMOSI = GPIO_PORT_P1, + .pinMOSI = GPIO_PIN6, + .mosiMode = GPIO_PRIMARY_MODULE_FUNCTION, + + /* Chip select port & pin */ + .portCS = GPIO_PORT_P4, + .pinCS = GPIO_PIN6 + } +}; + +const SDSPI_Config SDSPI_config[] = { + { + .fxnTablePtr = &SDSPIMSP432_fxnTable, + .object = &sdspiMSP432Objects[0], + .hwAttrs = &sdspiMSP432HWAttrs[0] + }, + {NULL, NULL, NULL} +}; + +/* + * ======== MSP_EXP432P401R_initSDSPI ======== + */ +void MSP_EXP432P401R_initSDSPI(void) +{ + SDSPI_init(); +} + +/* + * =============================== SPI =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(SPI_config, ".const:SPI_config") +#pragma DATA_SECTION(spiMSP432DMAHWAttrs, ".const:spiMSP432DMAHWAttrs") +#endif + +#include <ti/drivers/SPI.h> +#include <ti/drivers/spi/SPIMSP432DMA.h> + +SPIMSP432DMA_Object spiMSP432DMAObjects[MSP_EXP432P401R_SPICOUNT]; + +const SPIMSP432DMA_HWAttrs spiMSP432DMAHWAttrs[MSP_EXP432P401R_SPICOUNT] = { + { + .baseAddr = EUSCI_B0_BASE, + .bitOrder = EUSCI_B_SPI_MSB_FIRST, + .clockSource = EUSCI_B_SPI_CLOCKSOURCE_SMCLK, + + .defaultTxBufValue = 0, + + .dmaIntNum = INT_DMA_INT1, + .intPriority = (~0), + .rxDMAChannelIndex = DMA_CH1_EUSCIB0RX0, + .txDMAChannelIndex = DMA_CH0_EUSCIB0TX0 + }, + { + .baseAddr = EUSCI_B2_BASE, + .bitOrder = EUSCI_B_SPI_MSB_FIRST, + .clockSource = EUSCI_B_SPI_CLOCKSOURCE_SMCLK, + + .defaultTxBufValue = 0, + + .dmaIntNum = INT_DMA_INT2, + .intPriority = (~0), + .rxDMAChannelIndex = DMA_CH5_EUSCIB2RX0, + .txDMAChannelIndex = DMA_CH4_EUSCIB2TX0 + } +}; + +const SPI_Config SPI_config[] = { + { + .fxnTablePtr = &SPIMSP432DMA_fxnTable, + .object = &spiMSP432DMAObjects[0], + .hwAttrs = &spiMSP432DMAHWAttrs[0] + }, + { + .fxnTablePtr = &SPIMSP432DMA_fxnTable, + .object = &spiMSP432DMAObjects[1], + .hwAttrs = &spiMSP432DMAHWAttrs[1] + }, + {NULL, NULL, NULL}, +}; + +/* + * ======== MSP_EXP432P401R_initSPI ======== + */ +void MSP_EXP432P401R_initSPI(void) +{ + /* + * NOTE: TI-RTOS examples configure EUSCIB0 as either SPI or I2C. Thus, + * a conflict occurs when the I2C & SPI drivers are used simultaneously in + * an application. Modify the pin mux settings in this file and resolve the + * conflict before running your the application. + */ + /* Configure CLK, MOSI & MISO for SPI0 (EUSCI_B0) */ + MAP_GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P1, + GPIO_PIN5 | GPIO_PIN6, GPIO_PRIMARY_MODULE_FUNCTION); + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P1, GPIO_PIN7, + GPIO_PRIMARY_MODULE_FUNCTION); + + /* Configure CLK, MOSI & MISO for SPI1 (EUSCI_B2) */ + MAP_GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P3, + GPIO_PIN5 | GPIO_PIN6, GPIO_PRIMARY_MODULE_FUNCTION); + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P3, GPIO_PIN7, + GPIO_PRIMARY_MODULE_FUNCTION); + + MSP_EXP432P401R_initDMA(); + SPI_init(); +} + +/* + * =============================== UART =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(UART_config, ".const:UART_config") +#pragma DATA_SECTION(uartMSP432HWAttrs, ".const:uartMSP432HWAttrs") +#endif + +#include <ti/drivers/UART.h> +#include <ti/drivers/uart/UARTMSP432.h> + +UARTMSP432_Object uartMSP432Objects[MSP_EXP432P401R_UARTCOUNT]; +unsigned char uartMSP432RingBuffer[MSP_EXP432P401R_UARTCOUNT][32]; + +/* + * The baudrate dividers were determined by using the MSP430 baudrate + * calculator + * http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSP430BaudRateConverter/index.html + */ +const UARTMSP432_BaudrateConfig uartMSP432Baudrates[] = { + /* {baudrate, input clock, prescalar, UCBRFx, UCBRSx, oversampling} */ + { + .outputBaudrate = 115200, + .inputClockFreq = 12000000, + .prescalar = 6, + .hwRegUCBRFx = 8, + .hwRegUCBRSx = 32, + .oversampling = 1 + }, + {115200, 6000000, 3, 4, 2, 1}, + {115200, 3000000, 1, 10, 0, 1}, + {9600, 12000000, 78, 2, 0, 1}, + {9600, 6000000, 39, 1, 0, 1}, + {9600, 3000000, 19, 8, 85, 1}, + {9600, 32768, 3, 0, 146, 0} +}; + +const UARTMSP432_HWAttrs uartMSP432HWAttrs[MSP_EXP432P401R_UARTCOUNT] = { + { + .baseAddr = EUSCI_A0_BASE, + .intNum = INT_EUSCIA0, + .intPriority = (~0), + .clockSource = EUSCI_A_UART_CLOCKSOURCE_SMCLK, + .bitOrder = EUSCI_A_UART_LSB_FIRST, + .numBaudrateEntries = sizeof(uartMSP432Baudrates) / + sizeof(UARTMSP432_BaudrateConfig), + .baudrateLUT = uartMSP432Baudrates, + .ringBufPtr = uartMSP432RingBuffer[0], + .ringBufSize = sizeof(uartMSP432RingBuffer[0]) + }, + { + .baseAddr = EUSCI_A2_BASE, + .intNum = INT_EUSCIA2, + .intPriority = (~0), + .clockSource = EUSCI_A_UART_CLOCKSOURCE_SMCLK, + .bitOrder = EUSCI_A_UART_LSB_FIRST, + .numBaudrateEntries = sizeof(uartMSP432Baudrates) / + sizeof(UARTMSP432_BaudrateConfig), + .baudrateLUT = uartMSP432Baudrates, + .ringBufPtr = uartMSP432RingBuffer[1], + .ringBufSize = sizeof(uartMSP432RingBuffer[1]) + } +}; + +const UART_Config UART_config[] = { + { + .fxnTablePtr = &UARTMSP432_fxnTable, + .object = &uartMSP432Objects[0], + .hwAttrs = &uartMSP432HWAttrs[0] + }, + { + .fxnTablePtr = &UARTMSP432_fxnTable, + .object = &uartMSP432Objects[1], + .hwAttrs = &uartMSP432HWAttrs[1] + }, + {NULL, NULL, NULL} +}; + +/* + * ======== MSP_EXP432P401R_initUART ======== + */ +void MSP_EXP432P401R_initUART(void) +{ + /* Set P1.2 & P1.3 in UART mode */ + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P1, + GPIO_PIN2 | GPIO_PIN3, GPIO_PRIMARY_MODULE_FUNCTION); + + /* Set P3.2 & P3.3 in UART mode */ + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P3, + GPIO_PIN2 | GPIO_PIN3, GPIO_PRIMARY_MODULE_FUNCTION); + + /* Initialize the UART driver */ + UART_init(); +} + +/* + * =============================== Watchdog =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(Watchdog_config, ".const:Watchdog_config") +#pragma DATA_SECTION(watchdogMSP432HWAttrs, ".const:watchdogMSP432HWAttrs") +#endif + +#include <ti/drivers/Watchdog.h> +#include <ti/drivers/watchdog/WatchdogMSP432.h> + +WatchdogMSP432_Object watchdogMSP432Objects[MSP_EXP432P401R_WATCHDOGCOUNT]; + +const WatchdogMSP432_HWAttrs + watchdogMSP432HWAttrs[MSP_EXP432P401R_WATCHDOGCOUNT] = { + { + .baseAddr = WDT_A_BASE, + .intNum = INT_WDT_A, + .intPriority = (~0), + .clockSource = WDT_A_CLOCKSOURCE_SMCLK, + .clockDivider = WDT_A_CLOCKDIVIDER_8192K + }, +}; + +const Watchdog_Config Watchdog_config[] = { + { + .fxnTablePtr = &WatchdogMSP432_fxnTable, + .object = &watchdogMSP432Objects[0], + .hwAttrs = &watchdogMSP432HWAttrs[0] + }, + {NULL, NULL, NULL} +}; + +/* + * ======== MSP_EXP432P401R_initWatchdog ======== + */ +void MSP_EXP432P401R_initWatchdog(void) +{ + /* Initialize the Watchdog driver */ + Watchdog_init(); +} + +/* + * =============================== WiFi =============================== + */ +/* Place into subsections to allow the TI linker to remove items properly */ +#if defined(__TI_COMPILER_VERSION__) +#pragma DATA_SECTION(WiFi_config, ".const:WiFi_config") +#pragma DATA_SECTION(wiFiCC3100HWAttrs, ".const:wiFiCC3100HWAttrs") +#endif + +#include <ti/drivers/WiFi.h> +#include <ti/drivers/wifi/WiFiCC3100.h> + +WiFiCC3100_Object wiFiCC3100Objects[MSP_EXP432P401R_WIFICOUNT]; + +const WiFiCC3100_HWAttrs wiFiCC3100HWAttrs[MSP_EXP432P401R_WIFICOUNT] = { + { + .irqPort = GPIO_PORT_P2, + .irqPin = GPIO_PIN5, + .irqIntNum = INT_PORT2, + + .csPort = GPIO_PORT_P3, + .csPin = GPIO_PIN0, + + .enPort = GPIO_PORT_P4, + .enPin = GPIO_PIN1 + } +}; + +const WiFi_Config WiFi_config[] = { + { + .fxnTablePtr = &WiFiCC3100_fxnTable, + .object = &wiFiCC3100Objects[0], + .hwAttrs = &wiFiCC3100HWAttrs[0] + }, + {NULL, NULL, NULL}, +}; + +/* + * ======== MSP_EXP432P401R_initWiFi ======== + */ +void MSP_EXP432P401R_initWiFi(void) +{ + /* Configure EN & CS pins to disable CC3100 */ + MAP_GPIO_setAsOutputPin(GPIO_PORT_P3, GPIO_PIN0); + MAP_GPIO_setAsOutputPin(GPIO_PORT_P4, GPIO_PIN1); + MAP_GPIO_setOutputHighOnPin(GPIO_PORT_P3, GPIO_PIN0); + MAP_GPIO_setOutputLowOnPin(GPIO_PORT_P4, GPIO_PIN1); + + /* Configure CLK, MOSI & MISO for SPI0 (EUSCI_B0) */ + MAP_GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P1, + GPIO_PIN5 | GPIO_PIN6, GPIO_PRIMARY_MODULE_FUNCTION); + MAP_GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P1, GPIO_PIN7, + GPIO_PRIMARY_MODULE_FUNCTION); + + /* Configure IRQ pin */ + MAP_GPIO_setAsInputPinWithPullDownResistor(GPIO_PORT_P2, GPIO_PIN5); + MAP_GPIO_interruptEdgeSelect(GPIO_PORT_P2, GPIO_PIN5, + GPIO_LOW_TO_HIGH_TRANSITION); + + /* Initialize SPI and WiFi drivers */ + MSP_EXP432P401R_initDMA(); + SPI_init(); + WiFi_init(); +} diff --git a/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.cmd b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.cmd new file mode 100644 index 000000000..82d58a1f3 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.cmd @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2015-2016, Texas Instruments Incorporated + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of Texas Instruments Incorporated nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + * ======== MSP_EXP432P401R.cmd ======== + * Define the memory block start/length for the MSP_EXP432P401R M4 + */ + +MEMORY +{ + MAIN (RX) : origin = 0x00000000, length = 0x00040000 + INFO (RX) : origin = 0x00200000, length = 0x00004000 + SRAM_CODE (RWX): origin = 0x01000000, length = 0x00010000 + SRAM_DATA (RW) : origin = 0x20000000, length = 0x00010000 +} + +/* Section allocation in memory */ + +SECTIONS +{ + .text : > MAIN + .const : > MAIN + .cinit : > MAIN + .pinit : > MAIN + + .data : > SRAM_DATA + .bss : > SRAM_DATA + .sysmem : > SRAM_DATA + .stack : > SRAM_DATA (HIGH) +} + +/* Symbolic definition of the WDTCTL register for RTS */ +WDTCTL_SYM = 0x4000480C; diff --git a/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.h b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.h new file mode 100644 index 000000000..1738f49e2 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/MSP_EXP432P401R.h @@ -0,0 +1,252 @@ +/* + * Copyright (c) 2015, Texas Instruments Incorporated + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of Texas Instruments Incorporated nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/** ============================================================================ + * @file MSP_EXP432P401R.h + * + * @brief MSP_EXP432P401R Board Specific APIs + * + * The MSP_EXP432P401R header file should be included in an application as + * follows: + * @code + * #include <MSP_EXP432P401R.h> + * @endcode + * + * ============================================================================ + */ +#ifndef __MSP_EXP432P401R_H +#define __MSP_EXP432P401R_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* LEDs on MSP_EXP432P401R are active high. */ +#define MSP_EXP432P401R_LED_OFF (0) +#define MSP_EXP432P401R_LED_ON (1) + +/*! + * @def MSP_EXP432P401R_GPIOName + * @brief Enum of GPIO names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_GPIOName { + MSP_EXP432P401R_S1 = 0, + MSP_EXP432P401R_S2, + MSP_EXP432P401R_LED1, + MSP_EXP432P401R_LED_RED, + + /* + * MSP_EXP432P401R_LED_GREEN & MSP_EXP432P401R_LED_BLUE are used for + * PWM examples. Uncomment the following lines if you would like to control + * the LEDs with the GPIO driver. + */ + //MSP_EXP432P401R_LED_GREEN, + //MSP_EXP432P401R_LED_BLUE, + + MSP_EXP432P401R_GPIOCOUNT +} MSP_EXP432P401R_GPIOName; + +/*! + * @def MSP_EXP432P401R_I2CName + * @brief Enum of I2C names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_I2CName { + MSP_EXP432P401R_I2CB0 = 0, + + MSP_EXP432P401R_I2CCOUNT +} MSP_EXP432P401R_I2CName; + +/*! + * @def MSP_EXP432P401R_PWMName + * @brief Enum of PWM names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_PWMName { + MSP_EXP432P401R_PWM_TA1_1 = 0, + MSP_EXP432P401R_PWM_TA1_2, + + MSP_EXP432P401R_PWMCOUNT +} MSP_EXP432P401R_PWMName; + +/*! + * @def MSP_EXP432P401R_SDSPIName + * @brief Enum of SDSPI names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_SDSPIName { + MSP_EXP432P401R_SDSPIB0 = 0, + + MSP_EXP432P401R_SDSPICOUNT +} EMSP_EXP432P401R_SDSPIName; + +/*! + * @def MSP_EXP432P401R_SPIName + * @brief Enum of SPI names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_SPIName { + MSP_EXP432P401R_SPIB0 = 0, + MSP_EXP432P401R_SPIB2, + + MSP_EXP432P401R_SPICOUNT +} MSP_EXP432P401R_SPIName; + +/*! + * @def MSP_EXP432P401R_UARTName + * @brief Enum of UART names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_UARTName { + MSP_EXP432P401R_UARTA0 = 0, + MSP_EXP432P401R_UARTA2, + + MSP_EXP432P401R_UARTCOUNT +} MSP_EXP432P401R_UARTName; + +/*! + * @def MSP_EXP432P401R_WatchdogName + * @brief Enum of Watchdog names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_WatchdogName { + MSP_EXP432P401R_WATCHDOG = 0, + + MSP_EXP432P401R_WATCHDOGCOUNT +} MSP_EXP432P401R_WatchdogName; + +/*! + * @def MSP_EXP432P401R_WiFiName + * @brief Enum of WiFi names on the MSP_EXP432P401R dev board + */ +typedef enum MSP_EXP432P401R_WiFiName { + MSP_EXP432P401R_WIFI = 0, + + MSP_EXP432P401R_WIFICOUNT +} MSP_EXP432P401R_WiFiName; + +/*! + * @brief Initialize the general board specific settings + * + * This function initializes the general board specific settings. + */ +extern void MSP_EXP432P401R_initGeneral(void); + +/*! + * @brief Initialize board specific GPIO settings + * + * This function initializes the board specific GPIO settings and + * then calls the GPIO_init API to initialize the GPIO module. + * + * The GPIOs controlled by the GPIO module are determined by the GPIO_PinConfig + * variable. + */ +extern void MSP_EXP432P401R_initGPIO(void); + +/*! + * @brief Initialize board specific I2C settings + * + * This function initializes the board specific I2C settings and then calls + * the I2C_init API to initialize the I2C module. + * + * The I2C peripherals controlled by the I2C module are determined by the + * I2C_config variable. + */ +extern void MSP_EXP432P401R_initI2C(void); + +/*! + * @brief Initialize board specific PWM settings + * + * This function initializes the board specific PWM settings and then calls + * the PWM_init API to initialize the PWM module. + * + * The PWM peripherals controlled by the PWM module are determined by the + * PWM_config variable. + */ +extern void MSP_EXP432P401R_initPWM(void); + +/*! + * @brief Initialize board specific SDSPI settings + * + * This function initializes the board specific SDSPI settings and then calls + * the SDSPI_init API to initialize the SDSPI module. + * + * The SDSPI peripherals controlled by the SDSPI module are determined by the + * SDSPI_config variable. + */ +extern void MSP_EXP432P401R_initSDSPI(void); + +/*! + * @brief Initialize board specific SPI settings + * + * This function initializes the board specific SPI settings and then calls + * the SPI_init API to initialize the SPI module. + * + * The SPI peripherals controlled by the SPI module are determined by the + * SPI_config variable. + */ +extern void MSP_EXP432P401R_initSPI(void); + +/*! + * @brief Initialize board specific UART settings + * + * This function initializes the board specific UART settings and then calls + * the UART_init API to initialize the UART module. + * + * The UART peripherals controlled by the UART module are determined by the + * UART_config variable. + */ +extern void MSP_EXP432P401R_initUART(void); + +/*! + * @brief Initialize board specific Watchdog settings + * + * This function initializes the board specific Watchdog settings and then + * calls the Watchdog_init API to initialize the Watchdog module. + * + * The Watchdog peripherals controlled by the Watchdog module are determined + * by the Watchdog_config variable. + */ +extern void MSP_EXP432P401R_initWatchdog(void); + +/*! + * @brief Initialize board specific WiFi settings + * + * This function initializes the board specific WiFi settings and then calls + * the WiFi_init API to initialize the WiFi module. + * + * The hardware resources controlled by the WiFi module are determined by the + * WiFi_config variable. + * + * A SimpleLink CC3100 device or module is required and must be connected to + * use the WiFi driver. + */ +extern void MSP_EXP432P401R_initWiFi(void); + +#ifdef __cplusplus +} +#endif + +#endif /* __MSP_EXP432P401R_H */ diff --git a/examples/MSP432/ccs/MG_hello/main.c b/examples/MSP432/ccs/MG_hello/main.c new file mode 100644 index 000000000..e1109a7f8 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/main.c @@ -0,0 +1,154 @@ +/* + * Copyright (c) 2014-2016 Cesanta Software Limited + * All rights reserved + */ + +/* Set up an AP or connect to existing WiFi network. */ +#define WIFI_AP_SSID "Mongoose" +#define WIFI_AP_PASS "" +#define WIFI_AP_CHAN 6 +//#define WIFI_STA_SSID "YourWiFi" +//#define WIFI_STA_PASS "YourPass" + +#define MG_TASK_PRIORITY 3 +#define MG_TASK_STACK_SIZE 8192 + +#include <stdbool.h> +#include <stdio.h> +#include <string.h> + +/* XDCtools Header files */ +#include <xdc/std.h> +#include <xdc/runtime/System.h> + +/* BIOS Header files */ +#include <ti/sysbios/BIOS.h> +#include <ti/sysbios/knl/Task.h> + +/* TI-RTOS Header files */ +#include <ti/drivers/GPIO.h> +#include <ti/drivers/WiFi.h> + +/* Example/Board Header file */ +#include "Board.h" + +/* Mongoose.h brings in SimpleLink support. Do not include simplelink.h. */ +#include <mongoose.h> + +#include "wifi.h" + +void mg_ev_handler(struct mg_connection *nc, int ev, void *p) { + static const char *reply_fmt = + "HTTP/1.0 200 OK\r\n" + "Connection: close\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "Hello %s\n"; + LOG(LL_DEBUG, ("conn %p ev %d", nc, ev)); + + switch (ev) { + case MG_EV_ACCEPT: { + char addr[32]; + mg_sock_addr_to_str(&nc->sa, addr, sizeof(addr), + MG_SOCK_STRINGIFY_IP | MG_SOCK_STRINGIFY_PORT); + LOG(LL_INFO, ("Connection %p from %s", nc, addr)); + break; + } + case MG_EV_HTTP_REQUEST: { + char addr[32]; + struct http_message *hm = (struct http_message *) p; + mg_sock_addr_to_str(&nc->sa, addr, sizeof(addr), + MG_SOCK_STRINGIFY_IP | MG_SOCK_STRINGIFY_PORT); + LOG(LL_INFO, + ("HTTP request from %s: %.*s %.*s", addr, (int) hm->method.len, + hm->method.p, (int) hm->uri.len, hm->uri.p)); + mg_printf(nc, reply_fmt, addr); + nc->flags |= MG_F_SEND_AND_CLOSE; + break; + } + case MG_EV_CLOSE: { + LOG(LL_INFO, ("Connection %p closed", nc)); + break; + } + } +} + +static void mg_init(struct mg_mgr *mgr) { + WiFi_Params wifiParams; + WiFi_Handle handle; + + LOG(LL_INFO, ("MG task running")); + + /* Open WiFi driver */ + WiFi_Params_init(&wifiParams); + wifiParams.bitRate = 2000000; + handle = WiFi_open(Board_WIFI, Board_WIFI_SPI, NULL, &wifiParams); + if (handle == NULL) { + System_abort("WiFi driver failed to open."); + } + + sl_Start(0, 0, 0); + + sl_fs_init(); + +#if defined(WIFI_STA_SSID) + if (!wifi_setup_sta(WIFI_STA_SSID, WIFI_STA_PASS)) { + LOG(LL_ERROR, ("Error setting up WiFi station")); + } +#elif defined(WIFI_AP_SSID) + if (!wifi_setup_ap(WIFI_AP_SSID, WIFI_AP_PASS, WIFI_AP_CHAN)) { + LOG(LL_ERROR, ("Error setting up WiFi AP")); + } +#else +#error WiFi not configured +#endif + + /* We don't need SimpleLink's web server. */ + sl_NetAppStop(SL_NET_APP_HTTP_SERVER_ID); + + const char *err = ""; + struct mg_bind_opts opts; + memset(&opts, 0, sizeof(opts)); + opts.error_string = &err; + + struct mg_connection *nc = mg_bind(mgr, "80", mg_ev_handler); + if (nc != NULL) { + mg_set_protocol_http_websocket(nc); + } else { + LOG(LL_ERROR, ("Failed to create listener: %s", err)); + } +} + +int main(void) { + Board_initGeneral(); + Board_initGPIO(); + Board_initWiFi(); + + setvbuf(stdout, NULL, _IOLBF, 0); + setvbuf(stderr, NULL, _IOLBF, 0); + cs_log_set_level(LL_INFO); + cs_log_set_file(stdout); + + if (!mg_start_task(MG_TASK_PRIORITY, MG_TASK_STACK_SIZE, mg_init)) { + LOG(LL_ERROR, ("Error starting Mongoose task")); + return 1; + } + + LOG(LL_INFO, ("OK")); + + osi_start(); + + return 0; +} + +void SimpleLinkHttpServerCallback(SlHttpServerEvent_t *e, + SlHttpServerResponse_t *resp) { +} + +void SimpleLinkSockEventHandler(SlSockEvent_t *e) { +} + +void SimpleLinkGeneralEventHandler(SlDeviceEvent_t *e) { + LOG(LL_ERROR, ("status %d sender %d", e->EventData.deviceEvent.status, + e->EventData.deviceEvent.sender)); +} diff --git a/examples/MSP432/ccs/MG_hello/targetConfigs/MSP432P401R.ccxml b/examples/MSP432/ccs/MG_hello/targetConfigs/MSP432P401R.ccxml new file mode 100644 index 000000000..98d3e3399 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/targetConfigs/MSP432P401R.ccxml @@ -0,0 +1,13 @@ +<?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 XDS110 USB Debug Probe" href="connections/TIXDS110_Connection.xml" id="Texas Instruments XDS110 USB Debug Probe" xml="TIXDS110_Connection.xml" xmlpath="connections"/> + <connection XML_version="1.2" id="Texas Instruments XDS110 USB Debug Probe"> + <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"/> + <platform XML_version="1.2" id="platform_0"> + <instance XML_version="1.2" desc="MSP432P401R" href="devices/msp432p401r.xml" id="MSP432P401R" xml="msp432p401r.xml" xmlpath="devices"/> + </platform> + </connection> + </configuration> +</configurations> diff --git a/examples/MSP432/ccs/MG_hello/targetConfigs/readme.txt b/examples/MSP432/ccs/MG_hello/targetConfigs/readme.txt new file mode 100644 index 000000000..af97b62d5 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/targetConfigs/readme.txt @@ -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. \ No newline at end of file diff --git a/examples/MSP432/ccs/MG_hello/wifi.c b/examples/MSP432/ccs/MG_hello/wifi.c new file mode 100644 index 000000000..02aa9a51d --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/wifi.c @@ -0,0 +1,116 @@ +#include "wifi.h" + +#include "mongoose.h" +#include "simplelink.h" +#include "wlan.h" + +void SimpleLinkWlanEventHandler(SlWlanEvent_t *e) { + switch (e->Event) { + case SL_WLAN_CONNECT_EVENT: + LOG(LL_INFO, ("WiFi: connected")); + break; + case SL_WLAN_STA_CONNECTED_EVENT: + LOG(LL_INFO, ("WiFi: station connected")); + break; + case SL_WLAN_STA_DISCONNECTED_EVENT: + LOG(LL_INFO, ("WiFi: station disconnected")); + break; + default: + LOG(LL_INFO, ("WiFi: event %d", e->Event)); + } +} + +int ip_acquired = 0; + +void SimpleLinkNetAppEventHandler(SlNetAppEvent_t *e) { + if (e->Event == SL_NETAPP_IPV4_IPACQUIRED_EVENT) { + SlIpV4AcquiredAsync_t *ed = &e->EventData.ipAcquiredV4; + LOG(LL_INFO, ("IP acquired: %lu.%lu.%lu.%lu", SL_IPV4_BYTE(ed->ip, 3), + SL_IPV4_BYTE(ed->ip, 2), SL_IPV4_BYTE(ed->ip, 1), + SL_IPV4_BYTE(ed->ip, 0))); + ip_acquired = 1; + } else if (e->Event == SL_NETAPP_IP_LEASED_EVENT) { + LOG(LL_INFO, ("IP leased")); + } else { + LOG(LL_INFO, ("NetApp event %d", e->Event)); + } +} + +bool wifi_setup_ap(const char *ssid, const char *pass, int channel) { + uint8_t v; + if (sl_WlanSetMode(ROLE_AP) != 0) { + return false; + } + if (sl_WlanSet(SL_WLAN_CFG_AP_ID, WLAN_AP_OPT_SSID, strlen(ssid), + (const uint8_t *) ssid) != 0) { + return false; + } + v = strlen(pass) > 0 ? SL_SEC_TYPE_WPA : SL_SEC_TYPE_OPEN; + if (sl_WlanSet(SL_WLAN_CFG_AP_ID, WLAN_AP_OPT_SECURITY_TYPE, 1, &v) != 0) { + return false; + } + if (v == SL_SEC_TYPE_WPA && + sl_WlanSet(SL_WLAN_CFG_AP_ID, WLAN_AP_OPT_PASSWORD, strlen(pass), + (const uint8_t *) pass) != 0) { + return false; + } + v = channel; + if (sl_WlanSet(SL_WLAN_CFG_AP_ID, WLAN_AP_OPT_CHANNEL, 1, &v) != 0) { + return false; + } + sl_NetAppStop(SL_NET_APP_DHCP_SERVER_ID); + { + SlNetCfgIpV4Args_t ipcfg; + memset(&ipcfg, 0, sizeof(ipcfg)); + if (!inet_pton(AF_INET, "192.168.4.1", &ipcfg.ipV4) || + !inet_pton(AF_INET, "255.255.255.0", &ipcfg.ipV4Mask) || + /* This means "disable". 0.0.0.0 won't do. */ + !inet_pton(AF_INET, "255.255.255.255", &ipcfg.ipV4DnsServer) || + /* We'd like to disable gateway too, but DHCP server refuses to start. + */ + !inet_pton(AF_INET, "192.168.4.1", &ipcfg.ipV4Gateway) || + sl_NetCfgSet(SL_IPV4_AP_P2P_GO_STATIC_ENABLE, IPCONFIG_MODE_ENABLE_IPV4, + sizeof(ipcfg), (uint8_t *) &ipcfg) != 0) { + return false; + } + } + { + SlNetAppDhcpServerBasicOpt_t dhcpcfg; + memset(&dhcpcfg, 0, sizeof(dhcpcfg)); + dhcpcfg.lease_time = 900; + if (!inet_pton(AF_INET, "192.168.4.20", &dhcpcfg.ipv4_addr_start) || + !inet_pton(AF_INET, "192.168.4.200", &dhcpcfg.ipv4_addr_last) || + sl_NetAppSet(SL_NET_APP_DHCP_SERVER_ID, NETAPP_SET_DHCP_SRV_BASIC_OPT, + sizeof(dhcpcfg), (uint8_t *) &dhcpcfg) != 0) { + return false; + } + } + sl_Stop(0); + int role = sl_Start(NULL, NULL, NULL); + if (role != ROLE_AP) { + LOG(LL_ERROR, ("Expected ROLE_AP (%d), got %d", ROLE_AP, role)); + return false; + } + if (sl_NetAppStart(SL_NET_APP_DHCP_SERVER_ID) != 0) { + LOG(LL_ERROR, ("DHCP server failed to start")); + return false; + } + LOG(LL_INFO, ("WiFi: AP %s configured", ssid)); + return true; +} + +bool wifi_setup_sta(const char *ssid, const char *pass) { + SlSecParams_t sp; + LOG(LL_INFO, ("WiFi: connecting to %s", ssid)); + if (sl_WlanSetMode(ROLE_STA) != 0) return false; + sl_Stop(0); + sl_Start(NULL, NULL, NULL); + sl_WlanDisconnect(); + sp.Key = (_i8 *) pass; + sp.KeyLen = strlen(pass); + sp.Type = sp.KeyLen ? SL_SEC_TYPE_WPA : SL_SEC_TYPE_OPEN; + if (sl_WlanConnect((const _i8 *) ssid, strlen(ssid), 0, &sp, 0) != 0) { + return false; + } + return true; +} diff --git a/examples/MSP432/ccs/MG_hello/wifi.h b/examples/MSP432/ccs/MG_hello/wifi.h new file mode 100644 index 000000000..e300cbf49 --- /dev/null +++ b/examples/MSP432/ccs/MG_hello/wifi.h @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2014-2016 Cesanta Software Limited + * All rights reserved + */ + +#ifndef CS_MONGOOSE_EXAMPLES_CC3200_WIFI_H_ +#define CS_MONGOOSE_EXAMPLES_CC3200_WIFI_H_ + +#include <stdbool.h> + +bool wifi_setup_ap(const char *ssid, const char *pass, int channel); +bool wifi_setup_sta(const char *ssid, const char *pass); + +#endif /* CS_MONGOOSE_EXAMPLES_CC3200_WIFI_H_ */ diff --git a/examples/MSP432/ccs/Makefile b/examples/MSP432/ccs/Makefile new file mode 100644 index 000000000..d102c42de --- /dev/null +++ b/examples/MSP432/ccs/Makefile @@ -0,0 +1,2 @@ +clean: + rm -rf */Debug */Release */.config */.launches */.settings */.xdchelp */src diff --git a/examples/MSP432/ccs/Mongoose/.ccsproject b/examples/MSP432/ccs/Mongoose/.ccsproject new file mode 100644 index 000000000..46675f94c --- /dev/null +++ b/examples/MSP432/ccs/Mongoose/.ccsproject @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<?ccsproject version="1.0"?> +<projectOptions> + <deviceVariant value="MSP432P401R"/> + <deviceFamily value="MSP432"/> + <deviceEndianness value="little"/> + <codegenToolVersion value="5.2.7"/> + <isElfFormat value="true"/> + <connection value="common/targetdb/connections/TIXDS110_Connection.xml"/> + <createSlaveProjects value=""/> + <templateProperties value="id=org.eclipse.rtsc.project.templates.EmptyRtscApplication,buildProfile=release,isHybrid=true,"/> + <isTargetManual value="false"/> +</projectOptions> diff --git a/examples/MSP432/ccs/Mongoose/.cproject b/examples/MSP432/ccs/Mongoose/.cproject new file mode 100644 index 000000000..0001140a2 --- /dev/null +++ b/examples/MSP432/ccs/Mongoose/.cproject @@ -0,0 +1,190 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> + <storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings"> + <cconfiguration id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.242205865"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.242205865" moduleId="org.eclipse.cdt.core.settings" name="Debug"> + <externalSettings/> + <extensions> + <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactExtension="lib" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.242205865" name="Debug" parent="com.ti.ccstudio.buildDefinitions.MSP432.Debug" postbuildStep="" prebuildStep=""> + <folderInfo id="com.ti.ccstudio.buildDefinitions.MSP432.Debug.242205865." name="/" resourcePath=""> + <toolChain id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.libraryDebugToolchain.852495899" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.libraryDebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianDebug.182350248"> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1081004038" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> + <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=MSP432P401R"/> + <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> + <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/> + <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/> + <listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/> + <listOptionValue builtIn="false" value="XDC_VERSION=3.31.1.33_core"/> + <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSmsp430:2.16.0.08;"/> + <listOptionValue builtIn="false" value="EXPANDED_REPOS="/> + <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:staticLibrary"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.910806295" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="5.2.7" valueType="string"/> + <targetPlatform id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.targetPlatformDebug.220661868" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.targetPlatformDebug"/> + <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.builderDebug.2008525884" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.builderDebug"/> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.compilerDebug.1957478400" name="MSP432 Compiler" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.compilerDebug"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC.1600079717" name="Enable support for GCC extensions (DEPRECATED) (--gcc)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.181573608" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.949942191" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.107180039" name="Application binary interface. [See 'General' page to edit] (--abi)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.eabi" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.22166878" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.FPv4SPD16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE.588204726" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE" valueType="definedSymbols"> + <listOptionValue builtIn="false" value="__MSP432P401R__"/> + <listOptionValue builtIn="false" value="TARGET_IS_MSP432P4XX"/> + <listOptionValue builtIn="false" value="ccs"/> + <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH.134723464" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH" valueType="includePath"> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include/CMSIS""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.1299929989" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER.247804643" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER" value=""all"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING.75072455" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING" valueType="stringList"> + <listOptionValue builtIn="false" value="225"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER.1631534749" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.377575485" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN.214103179" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT.1039008667" name="C Dialect" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.C_DIALECT.C99" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.1561332826" name="Set error category for ULP power rules (--advice:power_severity)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.suppress" valueType="enumerated"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS.640783361" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS.1558463740" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS.1443539078" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS.1291573730" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianDebug.182350248" name="MSP432 Archiver" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianDebug"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.archiverID.OUTPUT_FILE.1501640506" name="Output file" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.archiverID.OUTPUT_FILE" value=""${ProjName}.lib"" valueType="string"/> + </tool> + <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.1323526968" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool"> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.507947486" name="Compiler tools directory (-c)" 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.TARGET.2087087444" name="Target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M4F" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.1627911596" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.1633912539" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.msp432:$DeviceId$" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.109209033" name="Build-profile (-r)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="debug" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1719973519" name="Package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList"> + <listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSMSP430_REPOS}"/> + <listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/> + </option> + </tool> + </toolChain> + </folderInfo> + <sourceEntries> + <entry excluding="src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> + </sourceEntries> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + <cconfiguration id="com.ti.ccstudio.buildDefinitions.MSP432.Release.1544782967"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.MSP432.Release.1544782967" moduleId="org.eclipse.cdt.core.settings" name="Release"> + <externalSettings/> + <extensions> + <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> + <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactExtension="lib" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.MSP432.Release.1544782967" name="Release" parent="com.ti.ccstudio.buildDefinitions.MSP432.Release" postbuildStep="" prebuildStep=""> + <folderInfo id="com.ti.ccstudio.buildDefinitions.MSP432.Release.1544782967." name="/" resourcePath=""> + <toolChain id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.ReleaseToolchain.74382251" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.ReleaseToolchain" targetTool="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianRelease.1395179648"> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1512922139" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> + <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=MSP432P401R"/> + <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/> + <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/> + <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.5.0"/> + <listOptionValue builtIn="false" value="RTSC_MBS_VERSION=2.2.0"/> + <listOptionValue builtIn="false" value="XDC_VERSION=3.31.1.33_core"/> + <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.rtsc.TIRTOSmsp430:2.16.0.08;"/> + <listOptionValue builtIn="false" value="EXPANDED_REPOS="/> + <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:staticLibrary"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1127638216" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="5.2.7" valueType="string"/> + <targetPlatform id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.targetPlatformRelease.1428280703" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.targetPlatformRelease"/> + <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.builderRelease.2091719435" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.builderRelease"/> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.compilerRelease.574316885" name="MSP432 Compiler" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.compilerRelease"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC.1255465912" name="Enable support for GCC extensions (DEPRECATED) (--gcc)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.GCC" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.1375172738" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.SILICON_VERSION.7M4" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.677673886" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.CODE_STATE.16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.350325440" name="Application binary interface. [See 'General' page to edit] (--abi)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ABI.eabi" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.1996484789" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.FLOAT_SUPPORT.FPv4SPD16" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE.181121787" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DEFINE" valueType="definedSymbols"> + <listOptionValue builtIn="false" value="__MSP432P401R__"/> + <listOptionValue builtIn="false" value="TARGET_IS_MSP432P4XX"/> + <listOptionValue builtIn="false" value="ccs"/> + <listOptionValue builtIn="false" value="MG_ENABLE_HTTP_STREAMING_MULTIPART=1"/> + <listOptionValue builtIn="false" value="MG_FS_SLFS=1"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH.1239544023" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.INCLUDE_PATH" valueType="includePath"> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include""/> + <listOptionValue builtIn="false" value=""${COM_TI_RTSC_TIRTOSMSP430_INSTALL_DIR}/products/tidrivers_msp43x_2_16_00_08/packages/ti/mw/wifi/cc3x00""/> + <listOptionValue builtIn="false" value=""${CCS_BASE_ROOT}/arm/include/CMSIS""/> + <listOptionValue builtIn="false" value=""${CG_TOOL_ROOT}/include""/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER.937821825" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER" value=""all"" valueType="string"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING.1871833692" name="Treat diagnostic <id> as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WARNING" valueType="stringList"> + <listOptionValue builtIn="false" value="225"/> + </option> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER.1052162638" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.139877883" name="Wrap diagnostic messages (--diag_wrap)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.DIAG_WRAP.off" valueType="enumerated"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN.832106645" name="Little endian code [See 'General' page to edit] (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.1681960761" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY" value="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compilerID.ADVICE__POWER_SEVERITY.suppress" valueType="enumerated"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS.494310206" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__C_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS.1747791468" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__CPP_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS.1060043732" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM_SRCS"/> + <inputType id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS.1680835546" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.compiler.inputType__ASM2_SRCS"/> + </tool> + <tool id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianRelease.1395179648" name="MSP432 Archiver" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.library.librarianRelease"> + <option id="com.ti.ccstudio.buildDefinitions.MSP432_5.2.archiverID.OUTPUT_FILE.874992649" name="Output file" superClass="com.ti.ccstudio.buildDefinitions.MSP432_5.2.archiverID.OUTPUT_FILE" value=""${ProjName}.lib"" valueType="string"/> + </tool> + <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.736679504" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool"> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.404302903" name="Compiler tools directory (-c)" 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.TARGET.1601732449" name="Target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.arm.elf.M4F" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.1561112080" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.msp432:MSP432P401R" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW.832946789" name="Platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM_RAW" value="ti.platforms.msp432:$DeviceId$" valueType="string"/> + <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.894476358" name="Build-profile (-r)" 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.XDC_PATH.1046157525" name="Package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList"> + <listOptionValue builtIn="false" value="${COM_TI_RTSC_TIRTOSMSP430_REPOS}"/> + <listOptionValue builtIn="false" value="${TARGET_CONTENT_BASE}"/> + </option> + </tool> + </toolChain> + </folderInfo> + <sourceEntries> + <entry excluding="src|msp432p401r.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/> + </sourceEntries> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <project id="Mongoose.com.ti.ccstudio.buildDefinitions.MSP432.ProjectType.1858983168" name="MSP432" projectType="com.ti.ccstudio.buildDefinitions.MSP432.ProjectType"/> + </storageModule> + <storageModule moduleId="scannerConfiguration"/> + <storageModule moduleId="org.eclipse.cdt.core.language.mapping"> + <project-mappings> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.asmSource" language="com.ti.ccstudio.core.TIASMLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.ti.ccstudio.core.TIGCCLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.ti.ccstudio.core.TIGCCLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.ti.ccstudio.core.TIGPPLanguage"/> + <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.ti.ccstudio.core.TIGPPLanguage"/> + </project-mappings> + </storageModule> + <storageModule moduleId="refreshScope"/> +</cproject> diff --git a/examples/MSP432/ccs/Mongoose/.project b/examples/MSP432/ccs/Mongoose/.project new file mode 100644 index 000000000..5100371d6 --- /dev/null +++ b/examples/MSP432/ccs/Mongoose/.project @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>Mongoose</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <triggers>full,incremental,</triggers> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature> + <nature>com.ti.ccstudio.core.ccsNature</nature> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.core.ccnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> + <linkedResources> + <link> + <name>mongoose.c</name> + <type>1</type> + <locationURI>PARENT-4-PROJECT_LOC/mongoose.c</locationURI> + </link> + <link> + <name>mongoose.h</name> + <type>1</type> + <locationURI>PARENT-4-PROJECT_LOC/mongoose.h</locationURI> + </link> + </linkedResources> +</projectDescription> diff --git a/examples/MSP432/ccs/Mongoose/Mongoose.cfg b/examples/MSP432/ccs/Mongoose/Mongoose.cfg new file mode 100644 index 000000000..8f148c48b --- /dev/null +++ b/examples/MSP432/ccs/Mongoose/Mongoose.cfg @@ -0,0 +1 @@ +var BIOS = xdc.useModule('ti.sysbios.BIOS'); diff --git a/examples/Makefile b/examples/Makefile index 3f1798221..5972212a3 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -3,7 +3,7 @@ # `wildcard ./*/` works in both linux and linux/wine, while `wildcard */` enumerates nothing under wine SUBDIRS = $(sort $(dir $(wildcard ./*/))) -SUBDIRS:=$(filter-out ./ ./CC3200/, $(SUBDIRS)) +SUBDIRS:=$(filter-out ./ ./CC3200/ ./ESP8266_RTOS/ ./MSP432/, $(SUBDIRS)) ifeq ($(OS), Windows_NT) SUBDIRS:=$(filter-out ./load_balancer/ ./netcat/ ./raspberry_pi_mjpeg_led/ ./captive_dns_server/, $(SUBDIRS)) -- GitLab