Commit 9432efbe authored by FineL's avatar FineL 😛

步进电机

parent 5d498236
<?xml version="1.0" encoding="UTF-8" ?>
<?ccsproject version="1.0"?>
<projectOptions>
<ccsVariant value="0:Eclipse-based"/>
<ccsVersion value="12.6.0"/>
<deviceVariant value="MSP430G2553"/>
<deviceFamily value="MSP430"/>
<deviceEndianness value="little"/>
<codegenToolVersion value="21.6.1.LTS"/>
<isElfFormat value="true"/>
<connection value="common/targetdb/connections/TIMSP430-USB.xml"/>
<linkerCommandFile value="lnk_msp430g2553.cmd"/>
<rts value="libc.a"/>
<createSlaveProjects value=""/>
<templateProperties value="id=com.ti.common.project.core.emptyProjectWithMainTemplate_msp430"/>
<filesToOpen value="main.c"/>
<isTargetManual value="false"/>
</projectOptions>
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="com.ti.ccstudio.debug.launchType.device.debugging">
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_DEBUGGER_PROPERTIES.MSP430G2553.ccxml.TI MSP430 USB1/MSP430" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot; ?&gt;&#10;&lt;PropertyValues&gt;&#10;&#10; &lt;property id=&quot;ConnectOnStartup&quot;&gt;&#10; &lt;curValue&gt;1&lt;/curValue&gt;&#10; &lt;/property&gt;&#10;&#10; &lt;property id=&quot;EnableInstalledBreakpoint&quot;&gt;&#10; &lt;curValue&gt;1&lt;/curValue&gt;&#10; &lt;/property&gt;&#10;&#10;&lt;/PropertyValues&gt;&#10;"/>
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROGRAM.MSP430G2553.ccxml.TI MSP430 USB1/MSP430" value="${build_artifact:test}"/>
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROJECT.MSP430G2553.ccxml.TI MSP430 USB1/MSP430" value="test"/>
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_TARGET_CONFIG" value="${target_config_active_default:test}"/>
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.MSP430G2553.ccxml.TI MSP430 USB1/MSP430" value="${build_artifact:test}"/>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
<listEntry value="/test"/>
</listAttribute>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="4"/>
</listAttribute>
<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="com.ti.ccstudio.debug.sourceLocator"/>
<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;sourceLookupDirector&gt;&#13;&#10; &lt;sourceContainers duplicates=&quot;false&quot;&gt;&#13;&#10; &lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10; &lt;container memento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;cpuSpecificContainer cpuName=&amp;quot;TI MSP430 USB1/MSP430&amp;quot;&amp;gt;&amp;#13;&amp;#10; &amp;lt;childContainerEntry childMemento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;project name=&amp;amp;quot;test&amp;amp;quot; referencedProjects=&amp;amp;quot;true&amp;amp;quot;/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot; childType=&amp;quot;org.eclipse.debug.core.containerType.project&amp;quot;/&amp;gt;&amp;#13;&amp;#10; &amp;lt;childContainerEntry childMemento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;default/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot; childType=&amp;quot;org.eclipse.debug.core.containerType.default&amp;quot;/&amp;gt;&amp;#13;&amp;#10; &amp;lt;childContainerEntry childMemento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;productsSource/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot; childType=&amp;quot;com.ti.ccstudio.debug.containerType.products.source&amp;quot;/&amp;gt;&amp;#13;&amp;#10; &amp;lt;childContainerEntry childMemento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;deviceLibrarySource/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot; childType=&amp;quot;com.ti.ccstudio.debug.containerType.device.library.source&amp;quot;/&amp;gt;&amp;#13;&amp;#10; &amp;lt;childContainerEntry childMemento=&amp;quot;&amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; standalone=&amp;amp;quot;no&amp;amp;quot;?&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;amp;lt;librarySource/&amp;amp;gt;&amp;amp;#13;&amp;amp;#10;&amp;quot; childType=&amp;quot;com.ti.ccstudio.debug.containerType.library.source&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&amp;lt;/cpuSpecificContainer&amp;gt;&amp;#13;&amp;#10;&quot; typeId=&quot;com.ti.ccstudio.debug.containerType.cpu.specific&quot;/&gt;&#13;&#10; &lt;/sourceContainers&gt;&#13;&#10;&lt;/sourceLookupDirector&gt;&#13;&#10;"/>
</launchConfiguration>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>test</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>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>
eclipse.preferences.version=1
inEditor=false
onBuild=false
eclipse.preferences.version=1
org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker
eclipse.preferences.version=1
encoding//Debug/Hardware/IIC/subdir_rules.mk=UTF-8
encoding//Debug/Hardware/IIC/subdir_vars.mk=UTF-8
encoding//Debug/Hardware/OLED/subdir_rules.mk=UTF-8
encoding//Debug/Hardware/OLED/subdir_vars.mk=UTF-8
encoding//Debug/Hardware/Stepmotor/subdir_rules.mk=UTF-8
encoding//Debug/Hardware/Stepmotor/subdir_vars.mk=UTF-8
encoding//Debug/User/subdir_rules.mk=UTF-8
encoding//Debug/User/subdir_vars.mk=UTF-8
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
# FIXED
Hardware/IIC/iic.obj: ../Hardware/IIC/iic.c
Hardware/IIC/iic.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h
Hardware/IIC/iic.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
Hardware/IIC/iic.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
Hardware/IIC/iic.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
Hardware/IIC/iic.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
Hardware/IIC/iic.obj: ../Hardware/IIC/IIC.h
../Hardware/IIC/iic.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
../Hardware/IIC/IIC.h:
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Each subdirectory must supply rules for building sources it contributes
Hardware/IIC/%.obj: ../Hardware/IIC/%.c $(GEN_OPTS) | $(GEN_FILES) $(GEN_MISC_FILES)
@echo 'Building file: "$<"'
@echo 'Invoking: MSP430 Compiler'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --include_path="C:/ti/ccs1260/ccs/ccs_base/msp430/include" --include_path="D:/Tool/msp430_project/test/Hardware/Stepmotor" --include_path="D:/Tool/msp430_project/test/Hardware/IIC" --include_path="D:/Tool/msp430_project/test/Hardware/OLED" --include_path="D:/Tool/msp430_project/test/User" --include_path="D:/Tool/msp430_project/test" --include_path="C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="Hardware/IIC/$(basename $(<F)).d_raw" --obj_directory="Hardware/IIC" $(GEN_OPTS__FLAG) "$<"
@echo 'Finished building: "$<"'
@echo ' '
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Add inputs and outputs from these tool invocations to the build variables
C_SRCS += \
../Hardware/IIC/iic.c
C_DEPS += \
./Hardware/IIC/iic.d
OBJS += \
./Hardware/IIC/iic.obj
OBJS__QUOTED += \
"Hardware\IIC\iic.obj"
C_DEPS__QUOTED += \
"Hardware\IIC\iic.d"
C_SRCS__QUOTED += \
"../Hardware/IIC/iic.c"
# FIXED
Hardware/OLED/oled.obj: ../Hardware/OLED/oled.c
Hardware/OLED/oled.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h
Hardware/OLED/oled.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
Hardware/OLED/oled.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
Hardware/OLED/oled.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
Hardware/OLED/oled.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
Hardware/OLED/oled.obj: D:/Tool/msp430_project/test/Hardware/IIC/IIC.h
Hardware/OLED/oled.obj: ../Hardware/OLED/OLED.h
Hardware/OLED/oled.obj: ../Hardware/OLED/Oledfont.h
../Hardware/OLED/oled.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
D:/Tool/msp430_project/test/Hardware/IIC/IIC.h:
../Hardware/OLED/OLED.h:
../Hardware/OLED/Oledfont.h:
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Each subdirectory must supply rules for building sources it contributes
Hardware/OLED/%.obj: ../Hardware/OLED/%.c $(GEN_OPTS) | $(GEN_FILES) $(GEN_MISC_FILES)
@echo 'Building file: "$<"'
@echo 'Invoking: MSP430 Compiler'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --include_path="C:/ti/ccs1260/ccs/ccs_base/msp430/include" --include_path="D:/Tool/msp430_project/test/Hardware/Stepmotor" --include_path="D:/Tool/msp430_project/test/Hardware/IIC" --include_path="D:/Tool/msp430_project/test/Hardware/OLED" --include_path="D:/Tool/msp430_project/test/User" --include_path="D:/Tool/msp430_project/test" --include_path="C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="Hardware/OLED/$(basename $(<F)).d_raw" --obj_directory="Hardware/OLED" $(GEN_OPTS__FLAG) "$<"
@echo 'Finished building: "$<"'
@echo ' '
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Add inputs and outputs from these tool invocations to the build variables
C_SRCS += \
../Hardware/OLED/oled.c
C_DEPS += \
./Hardware/OLED/oled.d
OBJS += \
./Hardware/OLED/oled.obj
OBJS__QUOTED += \
"Hardware\OLED\oled.obj"
C_DEPS__QUOTED += \
"Hardware\OLED\oled.d"
C_SRCS__QUOTED += \
"../Hardware/OLED/oled.c"
# FIXED
Hardware/Stepmotor/Stepmotor.obj: ../Hardware/Stepmotor/Stepmotor.c
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
Hardware/Stepmotor/Stepmotor.obj: ../Hardware/Stepmotor/stepmotor.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h
Hardware/Stepmotor/Stepmotor.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h
../Hardware/Stepmotor/Stepmotor.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
../Hardware/Stepmotor/stepmotor.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h:
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Each subdirectory must supply rules for building sources it contributes
Hardware/Stepmotor/%.obj: ../Hardware/Stepmotor/%.c $(GEN_OPTS) | $(GEN_FILES) $(GEN_MISC_FILES)
@echo 'Building file: "$<"'
@echo 'Invoking: MSP430 Compiler'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --include_path="C:/ti/ccs1260/ccs/ccs_base/msp430/include" --include_path="D:/Tool/msp430_project/test/Hardware/Stepmotor" --include_path="D:/Tool/msp430_project/test/Hardware/IIC" --include_path="D:/Tool/msp430_project/test/Hardware/OLED" --include_path="D:/Tool/msp430_project/test/User" --include_path="D:/Tool/msp430_project/test" --include_path="C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="Hardware/Stepmotor/$(basename $(<F)).d_raw" --obj_directory="Hardware/Stepmotor" $(GEN_OPTS__FLAG) "$<"
@echo 'Finished building: "$<"'
@echo ' '
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Add inputs and outputs from these tool invocations to the build variables
C_SRCS += \
../Hardware/Stepmotor/Stepmotor.c
C_DEPS += \
./Hardware/Stepmotor/Stepmotor.d
OBJS += \
./Hardware/Stepmotor/Stepmotor.obj
OBJS__QUOTED += \
"Hardware\Stepmotor\Stepmotor.obj"
C_DEPS__QUOTED += \
"Hardware\Stepmotor\Stepmotor.d"
C_SRCS__QUOTED += \
"../Hardware/Stepmotor/Stepmotor.c"
# FIXED
TA_PWM.obj: ../TA_PWM.c
TA_PWM.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
TA_PWM.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
TA_PWM.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
TA_PWM.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
../TA_PWM.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
# FIXED
User/menu.obj: ../User/menu.c
User/menu.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h
User/menu.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
User/menu.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
User/menu.obj: ../User/menu.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdio.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdarg.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/string.h
User/menu.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/xlocale/_string.h
User/menu.obj: D:/Tool/msp430_project/test/Hardware/OLED/oled.h
User/menu.obj: D:/Tool/msp430_project/test/Hardware/Stepmotor/stepmotor.h
../User/menu.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
../User/menu.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdio.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdarg.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/string.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/xlocale/_string.h:
D:/Tool/msp430_project/test/Hardware/OLED/oled.h:
D:/Tool/msp430_project/test/Hardware/Stepmotor/stepmotor.h:
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Each subdirectory must supply rules for building sources it contributes
User/%.obj: ../User/%.c $(GEN_OPTS) | $(GEN_FILES) $(GEN_MISC_FILES)
@echo 'Building file: "$<"'
@echo 'Invoking: MSP430 Compiler'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --include_path="C:/ti/ccs1260/ccs/ccs_base/msp430/include" --include_path="D:/Tool/msp430_project/test/Hardware/Stepmotor" --include_path="D:/Tool/msp430_project/test/Hardware/IIC" --include_path="D:/Tool/msp430_project/test/Hardware/OLED" --include_path="D:/Tool/msp430_project/test/User" --include_path="D:/Tool/msp430_project/test" --include_path="C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="User/$(basename $(<F)).d_raw" --obj_directory="User" $(GEN_OPTS__FLAG) "$<"
@echo 'Finished building: "$<"'
@echo ' '
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Add inputs and outputs from these tool invocations to the build variables
C_SRCS += \
../User/menu.c
C_DEPS += \
./User/menu.d
OBJS += \
./User/menu.obj
OBJS__QUOTED += \
"User\menu.obj"
C_DEPS__QUOTED += \
"User\menu.d"
C_SRCS__QUOTED += \
"../User/menu.c"
"./main.obj"
"./Hardware/IIC/iic.obj"
"./Hardware/OLED/oled.obj"
"./Hardware/Stepmotor/Stepmotor.obj"
"./User/menu.obj"
"../lnk_msp430g2553.cmd"
-llibc.a
# FIXED
main.obj: ../main.c
main.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h
main.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h
main.obj: C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h
main.obj: D:/Tool/msp430_project/test/User/menu.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdio.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdarg.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/string.h
main.obj: C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/xlocale/_string.h
main.obj: D:/Tool/msp430_project/test/Hardware/OLED/OLED.h
main.obj: D:/Tool/msp430_project/test/Hardware/IIC/IIC.h
../main.c:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/msp430g2553.h:
C:/ti/ccs1260/ccs/ccs_base/msp430/include/in430.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/intrinsics_legacy_undefs.h:
D:/Tool/msp430_project/test/User/menu.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_ti_config.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/linkage.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/_stdint40.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/cdefs.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_types.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/machine/_stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/sys/_stdint.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdio.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/stdarg.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/string.h:
C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include/xlocale/_string.h:
D:/Tool/msp430_project/test/Hardware/OLED/OLED.h:
D:/Tool/msp430_project/test/Hardware/IIC/IIC.h:
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
CG_TOOL_ROOT := C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS
GEN_OPTS__FLAG :=
GEN_CMDS__FLAG :=
ORDERED_OBJS += \
"./main.obj" \
"./Hardware/IIC/iic.obj" \
"./Hardware/OLED/oled.obj" \
"./Hardware/Stepmotor/Stepmotor.obj" \
"./User/menu.obj" \
"../lnk_msp430g2553.cmd" \
$(GEN_CMDS__FLAG) \
-llibc.a \
-include ../makefile.init
RM := DEL /F
RMDIR := RMDIR /S/Q
# All of the sources participating in the build are defined here
-include sources.mk
-include subdir_vars.mk
-include Hardware/IIC/subdir_vars.mk
-include Hardware/OLED/subdir_vars.mk
-include Hardware/Stepmotor/subdir_vars.mk
-include User/subdir_vars.mk
-include subdir_rules.mk
-include Hardware/IIC/subdir_rules.mk
-include Hardware/OLED/subdir_rules.mk
-include Hardware/Stepmotor/subdir_rules.mk
-include User/subdir_rules.mk
-include objects.mk
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C55_DEPS)),)
-include $(C55_DEPS)
endif
ifneq ($(strip $(C_UPPER_DEPS)),)
-include $(C_UPPER_DEPS)
endif
ifneq ($(strip $(S67_DEPS)),)
-include $(S67_DEPS)
endif
ifneq ($(strip $(S62_DEPS)),)
-include $(S62_DEPS)
endif
ifneq ($(strip $(S_DEPS)),)
-include $(S_DEPS)
endif
ifneq ($(strip $(OPT_DEPS)),)
-include $(OPT_DEPS)
endif
ifneq ($(strip $(C??_DEPS)),)
-include $(C??_DEPS)
endif
ifneq ($(strip $(ASM_UPPER_DEPS)),)
-include $(ASM_UPPER_DEPS)
endif
ifneq ($(strip $(S??_DEPS)),)
-include $(S??_DEPS)
endif
ifneq ($(strip $(C64_DEPS)),)
-include $(C64_DEPS)
endif
ifneq ($(strip $(CXX_DEPS)),)
-include $(CXX_DEPS)
endif
ifneq ($(strip $(S64_DEPS)),)
-include $(S64_DEPS)
endif
ifneq ($(strip $(INO_DEPS)),)
-include $(INO_DEPS)
endif
ifneq ($(strip $(CLA_DEPS)),)
-include $(CLA_DEPS)
endif
ifneq ($(strip $(S55_DEPS)),)
-include $(S55_DEPS)
endif
ifneq ($(strip $(SV7A_DEPS)),)
-include $(SV7A_DEPS)
endif
ifneq ($(strip $(C62_DEPS)),)
-include $(C62_DEPS)
endif
ifneq ($(strip $(C67_DEPS)),)
-include $(C67_DEPS)
endif
ifneq ($(strip $(PDE_DEPS)),)
-include $(PDE_DEPS)
endif
ifneq ($(strip $(K_DEPS)),)
-include $(K_DEPS)
endif
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
ifneq ($(strip $(CC_DEPS)),)
-include $(CC_DEPS)
endif
ifneq ($(strip $(C++_DEPS)),)
-include $(C++_DEPS)
endif
ifneq ($(strip $(C43_DEPS)),)
-include $(C43_DEPS)
endif
ifneq ($(strip $(S43_DEPS)),)
-include $(S43_DEPS)
endif
ifneq ($(strip $(ASM_DEPS)),)
-include $(ASM_DEPS)
endif
ifneq ($(strip $(S_UPPER_DEPS)),)
-include $(S_UPPER_DEPS)
endif
ifneq ($(strip $(CPP_DEPS)),)
-include $(CPP_DEPS)
endif
ifneq ($(strip $(SA_DEPS)),)
-include $(SA_DEPS)
endif
endif
-include ../makefile.defs
# Add inputs and outputs from these tool invocations to the build variables
EXE_OUTPUTS += \
test.out
EXE_OUTPUTS__QUOTED += \
"test.out"
# All Target
all: $(OBJS) $(CMD_SRCS) $(GEN_CMDS)
@$(MAKE) --no-print-directory -Onone "test.out"
# Tool invocations
test.out: $(OBJS) $(CMD_SRCS) $(GEN_CMDS)
@echo 'Building target: "$@"'
@echo 'Invoking: MSP430 Linker'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number -z -m"test.map" --heap_size=80 --stack_size=80 -i"C:/ti/ccs1260/ccs/ccs_base/msp430/include" -i"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/lib" -i"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --reread_libs --diag_wrap=off --display_error_number --warn_sections --xml_link_info="test_linkInfo.xml" --use_hw_mpy=none --rom_model -o "test.out" $(ORDERED_OBJS)
@echo 'Finished building target: "$@"'
@echo ' '
# Other Targets
clean:
-$(RM) $(EXE_OUTPUTS__QUOTED)
-$(RM) "main.obj" "Hardware\IIC\iic.obj" "Hardware\OLED\oled.obj" "Hardware\Stepmotor\Stepmotor.obj" "User\menu.obj"
-$(RM) "main.d" "Hardware\IIC\iic.d" "Hardware\OLED\oled.d" "Hardware\Stepmotor\Stepmotor.d" "User\menu.d"
-@echo 'Finished clean'
-@echo ' '
.PHONY: all clean dependents
.SECONDARY:
-include ../makefile.targets
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
USER_OBJS :=
LIBS := -llibc.a
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
C55_SRCS :=
A_SRCS :=
ASM_UPPER_SRCS :=
EXE_SRCS :=
LDS_UPPER_SRCS :=
CPP_SRCS :=
CMD_SRCS :=
O_SRCS :=
ELF_SRCS :=
C??_SRCS :=
C64_SRCS :=
C67_SRCS :=
SA_SRCS :=
S64_SRCS :=
OPT_SRCS :=
CXX_SRCS :=
S67_SRCS :=
S??_SRCS :=
PDE_SRCS :=
SV7A_SRCS :=
K_SRCS :=
CLA_SRCS :=
S55_SRCS :=
LD_UPPER_SRCS :=
OUT_SRCS :=
INO_SRCS :=
LIB_SRCS :=
ASM_SRCS :=
S_UPPER_SRCS :=
S43_SRCS :=
LD_SRCS :=
CMD_UPPER_SRCS :=
C_UPPER_SRCS :=
C++_SRCS :=
C43_SRCS :=
OBJ_SRCS :=
LDS_SRCS :=
S_SRCS :=
CC_SRCS :=
S62_SRCS :=
C62_SRCS :=
C_SRCS :=
C55_DEPS :=
C_UPPER_DEPS :=
S67_DEPS :=
S62_DEPS :=
S_DEPS :=
OPT_DEPS :=
C??_DEPS :=
ASM_UPPER_DEPS :=
S??_DEPS :=
C64_DEPS :=
CXX_DEPS :=
S64_DEPS :=
INO_DEPS :=
CLA_DEPS :=
S55_DEPS :=
SV7A_DEPS :=
EXE_OUTPUTS :=
C62_DEPS :=
C67_DEPS :=
PDE_DEPS :=
K_DEPS :=
C_DEPS :=
CC_DEPS :=
BIN_OUTPUTS :=
C++_DEPS :=
C43_DEPS :=
S43_DEPS :=
OBJS :=
ASM_DEPS :=
S_UPPER_DEPS :=
CPP_DEPS :=
SA_DEPS :=
C++_DEPS__QUOTED :=
OPT_DEPS__QUOTED :=
S_UPPER_DEPS__QUOTED :=
SA_DEPS__QUOTED :=
C??_DEPS__QUOTED :=
S67_DEPS__QUOTED :=
C55_DEPS__QUOTED :=
CC_DEPS__QUOTED :=
ASM_UPPER_DEPS__QUOTED :=
SV7A_DEPS__QUOTED :=
S??_DEPS__QUOTED :=
OBJS__QUOTED :=
C67_DEPS__QUOTED :=
K_DEPS__QUOTED :=
S55_DEPS__QUOTED :=
INO_DEPS__QUOTED :=
C62_DEPS__QUOTED :=
C_DEPS__QUOTED :=
C_UPPER_DEPS__QUOTED :=
C43_DEPS__QUOTED :=
CPP_DEPS__QUOTED :=
BIN_OUTPUTS__QUOTED :=
C64_DEPS__QUOTED :=
CXX_DEPS__QUOTED :=
CLA_DEPS__QUOTED :=
S_DEPS__QUOTED :=
ASM_DEPS__QUOTED :=
S43_DEPS__QUOTED :=
EXE_OUTPUTS__QUOTED :=
S64_DEPS__QUOTED :=
S62_DEPS__QUOTED :=
PDE_DEPS__QUOTED :=
# Every subdirectory with source files must be described here
SUBDIRS := \
. \
Hardware/IIC \
Hardware/OLED \
Hardware/Stepmotor \
User \
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Each subdirectory must supply rules for building sources it contributes
%.obj: ../%.c $(GEN_OPTS) | $(GEN_FILES) $(GEN_MISC_FILES)
@echo 'Building file: "$<"'
@echo 'Invoking: MSP430 Compiler'
"C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/bin/cl430" -vmsp -O1 --opt_for_speed=1 --use_hw_mpy=none --include_path="C:/ti/ccs1260/ccs/ccs_base/msp430/include" --include_path="D:/Tool/msp430_project/test/Hardware/Stepmotor" --include_path="D:/Tool/msp430_project/test/Hardware/IIC" --include_path="D:/Tool/msp430_project/test/Hardware/OLED" --include_path="D:/Tool/msp430_project/test/User" --include_path="D:/Tool/msp430_project/test" --include_path="C:/ti/ccs1260/ccs/tools/compiler/ti-cgt-msp430_21.6.1.LTS/include" --advice:power="all" --define=__MSP430G2553__ -g --printf_support=minimal --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="$(basename $(<F)).d_raw" $(GEN_OPTS__FLAG) "$<"
@echo 'Finished building: "$<"'
@echo ' '
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
SHELL = cmd.exe
# Add inputs and outputs from these tool invocations to the build variables
CMD_SRCS += \
../lnk_msp430g2553.cmd
C_SRCS += \
../main.c
C_DEPS += \
./main.d
OBJS += \
./main.obj
OBJS__QUOTED += \
"main.obj"
C_DEPS__QUOTED += \
"main.d"
C_SRCS__QUOTED += \
"../main.c"
This diff is collapsed.
This diff is collapsed.
#include <msp430.h>
#include "IIC.h"
void I2C_Init(unsigned char SA)
{
P1SEL |= (BIT6 + BIT7);
P1SEL2|= (BIT6 + BIT7);
UCB0CTL1 |= UCSWRST; // Enable SW reset
UCB0CTL0 = UCMST + UCMODE_3 + UCSYNC; // I2C Master, synchronous mode
UCB0CTL1 |= UCSSEL_2 + UCSWRST; // Use SMCLK, keep SW reset
UCB0BR0 = 10; // fSCL = SMCLK/80 = ~100kHz
UCB0BR1 = 0;
UCB0CTL0 &= ~UCSLA10; // 7位地址模式
UCB0I2CSA = SA; // Slave Address is 2ch
UCB0CTL1 &= ~UCSWRST; // Clear SW reset, resume operation
// P1IE &= ~BIT6; //关闭i2c引脚的中断,防止通信频繁时进中断
// P1IE &= ~BIT7;
delay();
}
unsigned char I2C_WriteData(unsigned char address,unsigned char data)
{
while( UCB0CTL1& UCTXSTP );
UCB0CTL1 |= UCTR; // 写模式
UCB0CTL1 |= UCTXSTT; // 发送启动位
UCB0TXBUF = address; // 发送字节地址
// 等待UCTXIFG=1与UCTXSTT=0 同时变化等待一个标志位即可
while((IFG2 & UCB0TXIFG)==0)
{
if( UCB0STAT& UCNACKIFG ) // 若无应答 UCNACKIFG=1
{
return 1;
}
}
UCB0TXBUF = data; // 发送字节内容
while((IFG2 & UCB0TXIFG)==0); // 等待UCTXIFG=1
UCB0CTL1 |= UCTXSTP;
while(UCB0CTL1& UCTXSTP); // 等待发送完成
return 0;
}
void Write_IIC_Command(unsigned char IIC_Command)
{
while( UCB0CTL1& UCTXSTP );
UCB0CTL1 |= UCTR; // 写模式
UCB0CTL1 |= UCTXSTT; // 发送启动位
// 等待UCTXIFG=1与UCTXSTT=0 同时变化等待一个标志位即可
while((IFG2 & UCB0TXIFG)==0);
UCB0TXBUF = 0x00; // 发送字节内容
while((IFG2 & UCB0TXIFG)==0); // 等待UCTXIFG=1
UCB0TXBUF = IIC_Command; // 发送字节内容
while((IFG2 & UCB0TXIFG)==0); // 等待UCTXIFG=1
UCB0CTL1 |= UCTXSTP;
while(UCB0CTL1& UCTXSTP); // 等待发送完成
}
void Write_IIC_Data(unsigned char IIC_Data)
{
while( UCB0CTL1& UCTXSTP );
UCB0CTL1 |= UCTR; // 写模式
UCB0CTL1 |= UCTXSTT; // 发送启动位
// 等待UCTXIFG=1与UCTXSTT=0 同时变化等待一个标志位即可
while((IFG2 & UCB0TXIFG)==0);
UCB0TXBUF = 0x40; // 发送字节内容
while((IFG2 & UCB0TXIFG)==0); // 等待UCTXIFG=1
UCB0TXBUF = IIC_Data; // 发送字节内容
while((IFG2 & UCB0TXIFG)==0); // 等待UCTXIFG=1
UCB0CTL1 |= UCTXSTP;
while(UCB0CTL1& UCTXSTP); // 等待发送完成
}
void OLED_WR_Byte(unsigned dat,unsigned cmd)
{
if(cmd) Write_IIC_Data(dat);
else Write_IIC_Command(dat);
}
unsigned char I2C_WriteNData( unsigned char address, unsigned char *pWbuf, unsigned char len)
{
unsigned char i;
while( UCB0CTL1& UCTXSTP );
UCB0CTL1 |= UCTR; // 写模式
UCB0CTL1 |= UCTXSTT; // 发送启动位
UCB0TXBUF = address; // 发送字节地址
// 等待UCTXIFG=1与UCTXSTT=0 同时变化等待一个标志位即可
while((IFG2 & UCB0TXIFG)==0)
{
if( UCB0STAT& UCNACKIFG ) // 若无应答 UCNACKIFG=1
{
return 1;
}
}
for( i= 0; i < len; i++)
{
UCB0TXBUF = *pWbuf++; // 发送寄存器内容
while(UCB0CTL1& UCTXSTP); // 等待UCTXIFG=1
}
UCB0CTL1 |= UCTXSTP;
while(UCB0CTL1& UCTXSTP); // 等待发送完成
return 0;
}
void I2C_ReadData(unsigned char address)
{
UCB0CTL1 |= UCTR ;
UCB0CTL1 |= UCTXSTT; // I2C TX, start condition
UCB0TXBUF = address; //eeprom low addr
while((IFG2 & UCB0TXIFG)==0);
UCB0CTL1 &= ~UCTR; // I2C RX,
UCB0CTL1 |= UCTXSTT;
while(UCB0CTL1&UCTXSTT);
UCB0CTL1 |= UCTXSTP;
while((IFG2&UCB0RXIFG)==0);
RX_Data = UCB0RXBUF;
while(UCB0CTL1 & UCTXSTP);
}
unsigned char I2C_ReadNData(unsigned char address, unsigned char *pRead, unsigned char len )
{
unsigned char i;
while( UCB0CTL1& UCTXSTP );
UCB0CTL1 |= UCTR; // 写模式
UCB0CTL1 |= UCTXSTT; // 发送启动位和写控制字节
UCB0TXBUF = address; // 发送字节地址
// 等待UCTXIFG=1与UCTXSTT=0 同时变化等待一个标志位即可
while((IFG2 & UCB0TXIFG)==0);
UCB0CTL1 &= ~UCTR; // 读模式
UCB0CTL1 |= UCTXSTT; // 发送启动位和读控制字节
while(UCB0CTL1& UCTXSTT); // 等待UCTXSTT=0
// 若无应答 UCNACKIFG = 1
for( i= 0; i< len -1 ; i++)
{
while((IFG2&UCB0RXIFG)==0); // 读取字节内容,不包括最后一个字节内容
*pRead++= UCB0RXBUF;
}
UCB0CTL1 |= UCTXSTP; // 在接收最后一个字节之前发送停止位
while((IFG2&UCB0RXIFG)==0); // 读取最后一个字节内容
*pRead = UCB0RXBUF;
while( UCB0CTL1& UCTXSTP );
return 0;
}
void delay(void)
{
unsigned int i,n;
for(i=0;i<100;i++)
for(n=0;n<0xff;n++);
}
#ifndef __IIC_H
#define __IIC_H
unsigned char RX_Data;
void I2C_Init(unsigned char SA);//I2C初始化,SA为从器件地址
void I2C_ReadData(unsigned char address);//I2C读出某一地址的数据
unsigned char I2C_WriteData(unsigned char address,unsigned char data);//I2C向某一地址写入数据
void delay(void);
void Write_IIC_Command(unsigned char IIC_Command);
void Write_IIC_Data(unsigned char IIC_Data);
void OLED_WR_Byte(unsigned dat,unsigned cmd);
#endif
#include <msp430.h>
#include "IIC.h"
#include "OLED.h"
#include "Oledfont.h"
//OLED的显存
//存放格式如下
//[0]0 1 2 3 ... 127
//[1]0 1 2 3 ... 127
//[2]0 1 2 3 ... 127
//[3]0 1 2 3 ... 127
/***********************Delay****************************************/
void Delay_50ms(unsigned int Del_50ms)
{
unsigned int m;
for(;Del_50ms>0;Del_50ms--)
for(m=6245;m>0;m--);
}
void Delay_1ms(unsigned int Del_1ms)
{
unsigned char j;
while(Del_1ms--)
{
for(j=0;j<123;j++);
}
}
//坐标设置
void OLED_Set_Pos(unsigned char x, unsigned char y)//y是页
{
OLED_WR_Byte(0xb0+y,OLED_CMD);
OLED_WR_Byte(((x&0xf0)>>4)|0x10,OLED_CMD);
OLED_WR_Byte((x&0x0f)|0x01,OLED_CMD);
}
//开启OLED显示
void OLED_Display_On(void)
{
OLED_WR_Byte(0X8D,OLED_CMD); //SET DCDC命令
OLED_WR_Byte(0X14,OLED_CMD); //DCDC ON
OLED_WR_Byte(0XAF,OLED_CMD); //DISPLAY ON
}
////关闭OLED显示
//void OLED_Display_Off(void)
//{
// OLED_WR_Byte(0X8D,OLED_CMD); //SET DCDC命令
// OLED_WR_Byte(0X10,OLED_CMD); //DCDC OFF
// OLED_WR_Byte(0XAE,OLED_CMD); //DISPLAY OFF
//}
void OLED_Clear(void)
{
u8 i,n;
for(i=0;i<8;i++)
{
OLED_WR_Byte (0xb0+i,OLED_CMD); //设置页地址(0~7)
OLED_WR_Byte (0x00,OLED_CMD); //设置显示位置—列低地址
OLED_WR_Byte (0x10,OLED_CMD); //设置显示位置—列高地地址?
for(n=0;n<128;n++)OLED_WR_Byte(0x00,OLED_DATA);
} //更新显示
}
void OLED_Clear2(void)
{
u8 i,n;
for(i=2;i<8;i++)//跳过第一行
{
OLED_WR_Byte (0xb0+i,OLED_CMD); //设置页地址(0~7)
OLED_WR_Byte (0x00,OLED_CMD); //设置显示位置—列低地址
OLED_WR_Byte (0x10,OLED_CMD); //设置显示位置—列高地地址?
for(n=0;n<128;n++)OLED_WR_Byte(0x00,OLED_DATA);
} //更新显示
}
//void OLED_Clear_Point()
//{
// u8 num_page, num_row, num_col, dot;
// for(num_page=0;num_page<8;num_page++) //分为8页
// {
// dot = 0x00;
// OLED_WR_Byte (0xb0+num_page,OLED_CMD); //每页8行
// for(num_row=0;num_row<8;num_row++)
// {
// OLED_WR_Byte (0x00,OLED_CMD);
// OLED_WR_Byte (0x10,OLED_CMD);
// for(num_col=0;num_col<16;num_col++) //每页128列
// {
// OLED_WR_Byte(dot,OLED_DATA);
// //__delay_cycles(4000);
// }
// }
// }
//}
//画点,t:1 填充 0,清空
void OLED_DrawPoint(u8 x,u8 y,u8 t)
{
u8 num_page,num_row=0;
if(x>127||y>63)return;//超出范围
num_page=y/8;
num_row=y%8;
if(t)
{
OLED_Set_Pos(x,num_page);
OLED_WR_Byte(1<<num_row,OLED_DATA);
}
else
{
OLED_Set_Pos(x,num_page);
OLED_WR_Byte(~(1<<num_row),OLED_DATA);
}
}
//void OLED_DrawLine(u8 x1,u8 y1,u8 x2,u8 y2,u8 t)
//{
// u8 len_x = abs(x2-x1);
// u8 len_y = abs(y2-y1);
// u8 dm,i;//dm为分割基准
// float dx,dy,x,y;
// if(len_x >= len_y) dm = len_x;
// else dm = len_y;
// dx = (float)(x2-x1)/dm;
// dy = (float)(y2-y1)/dm;
// x = (float)x1+0.5;
// y = (float)y1+0.5;
// for(i=0;i<dm;i++)
// {
// OLED_DrawPoint(x,y,t);
// x += dx;
// y += dy;
// }
//}
//void OLED_DrawSin()
//{
// int i;
// for(i = 0; i < 360; i ++)
// {
// OLED_DrawPoint(sinx[i] + 64, 64-(siny[i] + 32), 1);
// }
//}
//void OLED_DrawCircle(u8 x0,u8 y0,u8 r,u8 t)
//{
// float Rx,Ry,angle,rad;
// OLED_DrawPoint(x0,y0,1);
// for(angle=0; angle<360; angle++)
// {
// rad = angle * 3.14/180;
// Rx = r*cos(rad);
// Ry = r*sin(rad);
// if(t) OLED_DrawPoint(x0+Rx,64-(y0+Ry),1);
// else OLED_DrawPoint(x0+Rx,64-(y0+Ry),0);
// }
//}
//void OLED_On(void)
//{
// u8 i,n;
// for(i=0;i<8;i++)
// {
// OLED_WR_Byte (0xb0+i,OLED_CMD); //设置页地址(0~7)
// OLED_WR_Byte (0x00,OLED_CMD); //设置显示位置—列低地址
// OLED_WR_Byte (0x10,OLED_CMD); //设置显示位置—列高地址
// for(n=0;n<128;n++)OLED_WR_Byte(0xff,OLED_DATA);
// } //更新显示
//}
//在指定位置显示一个字符,包括部分字符
//x:0~127
//y:0~63
//mode:0,反白显示;1,正常显示
//size:选择字体 16/12
void OLED_ShowChar(u8 x,u8 y,const u8 chr,u8 Char_Size,u8 mode)
{
unsigned char c=0,i=0;
c=chr-' ';//得到偏移后的值
if(x>Max_Column-1)
{x=0;y=y+2;}
if(Char_Size ==16)
{
OLED_Set_Pos(x,y);
for(i=0;i<8;i++)
{
if(mode) OLED_WR_Byte(F8X16[c*16+i],OLED_DATA);
else OLED_WR_Byte(~F8X16[c*16+i],OLED_DATA);
}
OLED_Set_Pos(x,y+1);
for(i=0;i<8;i++)
{
if(mode) OLED_WR_Byte(F8X16[c*16+i+8],OLED_DATA);
else OLED_WR_Byte(~F8X16[c*16+i+8],OLED_DATA);
}
}
else
{
OLED_Set_Pos(x,y);
for(i=0;i<6;i++)
{
if(mode) OLED_WR_Byte(F6x8[c][i],OLED_DATA);
else OLED_WR_Byte(~F6x8[c][i],OLED_DATA);
}
}
}
//m^n函数
u32 oled_pow(u8 m,u8 n)
{
u32 result=1;
while(n--)result*=m;
return result;
}
//显示2个数字
//x,y :起点坐标
//len :数字的位数
//size:字体大小
//mode:模式 0,填充模式;1,叠加模式
//num:数值(0~4294967295);
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size2,u8 mode)
{
u8 t,temp;
u8 enshow=0;
for(t=0;t<len;t++)
{
temp=(num/oled_pow(10,len-t-1))%10;
if(enshow==0&&t<(len-1))
{
if(temp==0)
{
OLED_ShowChar(x+(size2/2)*t,y,'0',size2,mode);
continue;
}else enshow=1;
}
OLED_ShowChar(x+(size2/2)*t,y,temp+'0',size2,mode);
}
}
//显示一个字符号串
void OLED_ShowString(u8 x,u8 y, const u8 *chr,u8 Char_Size,u8 mode)
{
unsigned char j=0;
while (chr[j]!='\0')
{ OLED_ShowChar(x,y,chr[j],Char_Size,mode);
x+=8;
if(x>120){x=0;y+=2;}
j++;
}
}
//显示汉字
//void OLED_ShowCHinese(u8 x,u8 y,u8 no)
//{
// u8 t,adder=0;
// OLED_Set_Pos(x,y);
// for(t=0;t<16;t++)
// {
// OLED_WR_Byte(Hzk[2*no][t],OLED_DATA);
// adder+=1;
// }
// OLED_Set_Pos(x,y+1);
// for(t=0;t<16;t++)
// {
// OLED_WR_Byte(Hzk[2*no+1][t],OLED_DATA);
// adder+=1;
// }
//}
//
//void OLED_ShowCHineses(u8 x,u8 y,u8 num,u8 no)
//{
// u8 xx = x;
// u8 yy = y;
// int cnt;
// for(cnt = 0 ; cnt < num ; cnt ++)
// {
// if(x+16>128){
// x = xx;
// y = yy + 2;
// yy = y;
// OLED_ShowCHinese(x,y,cnt + no);
// }
// else {
// OLED_ShowCHinese(x,y,cnt + no);
// x = x + 16;
// }
// }
//}
//初始化SSD1306
void OLED_Init(void)
{
Delay_1ms(100);
OLED_WR_Byte(0xAE,OLED_CMD);//关闭显示
OLED_WR_Byte(0x00,OLED_CMD);//---set low column address //0x00?
OLED_WR_Byte(0x10,OLED_CMD);//---set high column address
OLED_WR_Byte(0x40,OLED_CMD);//set start line address
OLED_WR_Byte(0xb0,OLED_CMD);//set page address
OLED_WR_Byte(0x81,OLED_CMD);//contract control
OLED_WR_Byte(0xff,OLED_CMD);//128
OLED_WR_Byte(0xa1,OLED_CMD);//set segment remap
OLED_WR_Byte(0xa6,OLED_CMD);//normal / reverse
OLED_WR_Byte(0xa8,OLED_CMD);//set multiplex ratio(1 to 64)
OLED_WR_Byte(0x3f,OLED_CMD);//1/32 duty
OLED_WR_Byte(0xc8,OLED_CMD);//Com scan direction
OLED_WR_Byte(0xd3,OLED_CMD);//set display offset
OLED_WR_Byte(0x00,OLED_CMD);
OLED_WR_Byte(0xd5,OLED_CMD);//set osc division
OLED_WR_Byte(0x80,OLED_CMD);//0x80
OLED_WR_Byte(0xd8,OLED_CMD);//set area color mode off
OLED_WR_Byte(0x05,OLED_CMD);
OLED_WR_Byte(0xd9,OLED_CMD);//Set Pre-Charge Period
OLED_WR_Byte(0xf1,OLED_CMD);//0xf1 yuanliashi 22
OLED_WR_Byte(0xda,OLED_CMD);//set com pin configuartion
OLED_WR_Byte(0x12,OLED_CMD);//
OLED_WR_Byte(0xdb,OLED_CMD);//set Vcomh
OLED_WR_Byte(0x30,OLED_CMD);//
OLED_WR_Byte(0x8d,OLED_CMD);//set charge pump enable
OLED_WR_Byte(0x14,OLED_CMD);//开启电荷泵(屏幕供电自升压)
OLED_WR_Byte(0xaf,OLED_CMD);//turn on oled panel
OLED_Clear();
}
#ifndef __OLED_H
#define __OLED_H
#define u8 unsigned char
#define u32 unsigned int
#define OLED_CMD 0 //写命令
#define OLED_DATA 1 //写数据
#define OLED_MODE 0
//OLED模式设置
//0:4线串行模式
//1:并行8080模式
#define SIZE 16
#define XLevelL 0x02
#define XLevelH 0x10
#define Max_Column 128
#define Max_Row 32
#define Brightness 0xFF
#define X_WIDTH 128
#define Y_WIDTH 32
//OLED控制用函数
void OLED_WR_Byte(unsigned dat,unsigned cmd);
void OLED_Display_On(void);
void OLED_Display_Off(void);
void OLED_Init(void);
void OLED_Clear(void);
void OLED_Clear2(void);
void OLED_Clear_Point(void);
void OLED_DrawPoint(u8 x,u8 y,u8 t);
void OLED_DrawLine(u8 x1,u8 y1,u8 x2,u8 y2,u8 t);
//void OLED_DrawSin();
//void OLED_DrawCircle(u8 x0,u8 y0,u8 r,u8 t);
void OLED_ShowChar(u8 x,u8 y,const u8 chr,u8 Char_Size,u8 mode);
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size2,u8 mode);
void OLED_ShowString(u8 x,u8 y,const u8 *chr,u8 Char_Size,u8 mode);
void OLED_Set_Pos(unsigned char x, unsigned char y);
void OLED_ShowCHinese(u8 x,u8 y,u8 no);
void OLED_ShowCHineses(u8 x,u8 y,u8 num, u8 no);
void Delay_50ms(unsigned int Del_50ms);
void Delay_1ms(unsigned int Del_1ms);
#endif
This diff is collapsed.
#include <msp430.h>
#include "stepmotor.h"
uint8_t step = 0;
void Run()
{
switch(step)
{
case 0:
P1OUT &= ~BIT1;P1OUT &= ~BIT2;P1OUT &= ~BIT4;P1OUT |= BIT5; //0001
break;
case 1:
P1OUT &= ~BIT1;P1OUT &= ~BIT2;P1OUT |= BIT4; P1OUT |= BIT5; //0011
break;
case 2:
P1OUT &= ~BIT1;P1OUT &= ~BIT2;P1OUT |= BIT4; P1OUT &= ~BIT5;//0010
break;
case 3:
P1OUT &= ~BIT1;P1OUT |= BIT2; P1OUT |= BIT4; P1OUT &= ~BIT5;//0110
break;
case 4:
P1OUT &= ~BIT1;P1OUT |= BIT2; P1OUT &= ~BIT4;P1OUT &= ~BIT5;//0100
break;
case 5:
P1OUT |= BIT1; P1OUT |= BIT2; P1OUT &= ~BIT4;P1OUT &= ~BIT5;//1100
break;
case 6:
P1OUT |= BIT1; P1OUT &= ~BIT2;P1OUT &= ~BIT4;P1OUT &= ~BIT5;//1000
break;
case 7:
P1OUT |= BIT1; P1OUT &= ~BIT2;P1OUT &= ~BIT4;P1OUT |= BIT5; //1001
break;
default:
P1OUT &= ~BIT1;P1OUT &= ~BIT2;P1OUT &= ~BIT4;P1OUT &= ~BIT5;//0000
break;
}
}
void Run_Angle(uint8_t dir,uint8_t angle)
{
uint8_t number = 0;//角度换算,待修改
while(number != 0)
{
Run();
if(dir)
{
if(step == 7) step = 0;
else step++;
}
else
{
if(step == 0) step = 7;
else step--;
}
__delay_cycles(3000);
number--;
}
}
void Run_Speed(uint8_t dir,uint8_t speed)//应该改为定时器控制,函数内修改定时器信息,定时器中断内执行Run()
{
uint8_t number = 0;//延时时间换算,待修改
while(number != 0)
{
Run();
if(dir)
{
if(step == 7) step = 0;
else step++;
}
else
{
if(step == 0) step = 7;
else step--;
}
__delay_cycles(3000);
number--;
}
}
#ifndef __STEPMOTOR_H
#define __STEPMOTOR_H
#include <stdint.h>
void Run();
void Run_Angle(uint8_t dir,uint8_t angle);
#endif
#include <msp430.h>
#include "menu.h"
#include "oled.h"
#include "stepmotor.h"
uint8_t dir = 1;
uint8_t speed = 5;
float angle = 45;
const MENU Menu[19] =
{
{"Speed control", *Menu_Enter, &Menu[9], NULL, &Menu[1]}, //0
{"Speed:50", *Function, &Menu[2], &Menu[0], NULL}, //1
{"Speed:100", *Function, &Menu[3], &Menu[0], NULL}, //2
{"Custom", *Menu_Enter, &Menu[8], &Menu[0], &Menu[4]}, //3
{"Speed up", *Speed_Up, &Menu[5], &Menu[3], NULL}, //4
{"Speed down", *Speed_Down, &Menu[6], &Menu[3], NULL}, //5
{"direction", *Run_Reverse, &Menu[7], &Menu[3], NULL}, //6
{"<<<", *Menu_Return, &Menu[4], &Menu[3], NULL}, //7
{"<<<", *Menu_Return, &Menu[1], &Menu[0], NULL}, //8
{"Angle control", *Menu_Enter, &Menu[0], NULL, &Menu[10]}, //9
{"Angle:45", *Run_Angle_45, &Menu[11], &Menu[9], NULL}, //10
{"Angle:90", *Run_Angle_90, &Menu[12], &Menu[9], NULL}, //11
{"Custom", *Menu_Enter, &Menu[18], &Menu[9], &Menu[13]}, //12
{"Plus x degrees", *Angle_Plus, &Menu[14], &Menu[12], NULL}, //13
{"Minus x degree", *Angle_Minus, &Menu[15], &Menu[12], NULL}, //14
{"direction", *Run_Reverse, &Menu[16], &Menu[12], NULL}, //15
{"Run", *Run_Angle_Custom, &Menu[17], &Menu[12], NULL}, //16
{"<<<", *Menu_Return, &Menu[13], &Menu[12], NULL}, //17
{"<<<", *Menu_Return, &Menu[10], &Menu[9], NULL}, //18
};
const MENU* nowP = &Menu[0];
void Choose_Menu()
{
const MENU* now = nowP;
OLED_Clear();
OLED_ShowString(0,2,"*",16,1);
OLED_ShowString(16,2,nowP->Name,16,1);
nowP = nowP->next;
OLED_ShowString(16,4,nowP->Name,16,1);
nowP = nowP->next;
OLED_ShowString(16,6,nowP->Name,16,1);
nowP = now;
while(1)
{
if(Key_number1 != 0 || Key_number2 != 0)
{
if(Key_number1 != 0)
{
Key_number1 = 0;
nowP = nowP->next;
}
else if(Key_number2 != 0)
{
Key_number2 = 0;
nowP->Function();
}
now = nowP;
OLED_Clear();
OLED_ShowString(0,2,"*",16,1);
OLED_ShowString(16,2,nowP->Name,16,1);
nowP = nowP->next;
OLED_ShowString(16,4,nowP->Name,16,1);
nowP = nowP->next;
OLED_ShowString(16,6,nowP->Name,16,1);
if(nowP->parent != NULL && nowP->parent != &Menu[3]) OLED_ShowString(24,0,nowP->parent->Name,16,1);
nowP = now;
}
}
}
void delayMs(unsigned int mst)
{
while(mst--)
{
__delay_cycles(8000000/1000);
}
}
void Function()
{
P1OUT ^= BIT0;
}
void Menu_Enter()
{
nowP = nowP->child;
}
void Menu_Return()
{
nowP = nowP->parent;
}
void Run_Angle_45()
{
Run_Angle(dir,45);
}
void Run_Angle_90()
{
Run_Angle(dir,90);
}
void Run_Angle_Custom()
{
Run_Angle(dir,angle);
}
void Angle_Plus()
{
angle += 11.25;
if(angle > 360) angle -= 360;
OLED_ShowNum(100,0,(uint16_t)angle,3,16,1);
delayMs(300);
}
void Angle_Minus()
{
if(angle >= 11.25) angle -= 11.25;
else angle = 0;
OLED_ShowNum(100,0,(uint16_t)angle,3,16,1);
delayMs(300);
}
void Run_Reverse()
{
dir = 1 - dir;
OLED_ShowNum(100,2,dir,1,16,1);
delayMs(300);
}
void Speed_Up()
{
speed += 11.25;//야竟令덤錦맣
OLED_ShowNum(100,0,(uint16_t)angle,3,16,1);
delayMs(300);
}
void Speed_Down()
{
angle -= 11.25;//야竟令덤錦맣
OLED_ShowNum(100,0,(uint16_t)angle,3,16,1);
delayMs(300);
}
#ifndef __MENU_H
#define __MENU_H
#include <stdint.h>
#include <stdio.h>
#include <string.h>
extern uint8_t Key_number1;
extern uint8_t Key_number2;
typedef struct Menu
{
uint8_t Name[15];
void (*Function)();
const struct Menu* next;
const struct Menu* parent;
const struct Menu* child;
}MENU;
void delayMs(unsigned int mst);
void Choose_Menu();
void Menu_Enter();
void Menu_Return();
void Run_Angle_45();
void Run_Angle_90();
void Run_Angle_Custom();
void Angle_Plus();
void Angle_Minus();
void Run_Reverse();
void Speed_Up();
void Speed_Down();
void Function();
#endif
/* ============================================================================ */
/* Copyright (c) 2020, 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. */
/* ============================================================================ */
/******************************************************************************/
/* lnk_msp430g2553.cmd - LINKER COMMAND FILE FOR LINKING MSP430G2553 PROGRAMS */
/* */
/* Usage: lnk430 <obj files...> -o <out file> -m <map file> lnk.cmd */
/* cl430 <src files...> -z -o <out file> -m <map file> lnk.cmd */
/* */
/*----------------------------------------------------------------------------*/
/* These linker options are for command line linking only. For IDE linking, */
/* you should set your linker options in Project Properties */
/* -c LINK USING C CONVENTIONS */
/* -stack 0x0100 SOFTWARE STACK SIZE */
/* -heap 0x0100 HEAP AREA SIZE */
/* */
/*----------------------------------------------------------------------------*/
/* Version: 1.213 */
/*----------------------------------------------------------------------------*/
/****************************************************************************/
/* Specify the system memory map */
/****************************************************************************/
MEMORY
{
SFR : origin = 0x0000, length = 0x0010
PERIPHERALS_8BIT : origin = 0x0010, length = 0x00F0
PERIPHERALS_16BIT : origin = 0x0100, length = 0x0100
RAM : origin = 0x0200, length = 0x0200
INFOA : origin = 0x10C0, length = 0x0040
INFOB : origin = 0x1080, length = 0x0040
INFOC : origin = 0x1040, length = 0x0040
INFOD : origin = 0x1000, length = 0x0040
FLASH : origin = 0xC000, length = 0x3FDE
BSLSIGNATURE : origin = 0xFFDE, length = 0x0002, fill = 0xFFFF
INT00 : origin = 0xFFE0, length = 0x0002
INT01 : origin = 0xFFE2, length = 0x0002
INT02 : origin = 0xFFE4, length = 0x0002
INT03 : origin = 0xFFE6, length = 0x0002
INT04 : origin = 0xFFE8, length = 0x0002
INT05 : origin = 0xFFEA, length = 0x0002
INT06 : origin = 0xFFEC, length = 0x0002
INT07 : origin = 0xFFEE, length = 0x0002
INT08 : origin = 0xFFF0, length = 0x0002
INT09 : origin = 0xFFF2, length = 0x0002
INT10 : origin = 0xFFF4, length = 0x0002
INT11 : origin = 0xFFF6, length = 0x0002
INT12 : origin = 0xFFF8, length = 0x0002
INT13 : origin = 0xFFFA, length = 0x0002
INT14 : origin = 0xFFFC, length = 0x0002
RESET : origin = 0xFFFE, length = 0x0002
}
/****************************************************************************/
/* Specify the sections allocation into memory */
/****************************************************************************/
SECTIONS
{
.bss : {} > RAM /* Global & static vars */
.data : {} > RAM /* Global & static vars */
.TI.noinit : {} > RAM /* For #pragma noinit */
.sysmem : {} > RAM /* Dynamic memory allocation area */
.stack : {} > RAM (HIGH) /* Software system stack */
.text : {} > FLASH /* Code */
.cinit : {} > FLASH /* Initialization tables */
.const : {} > FLASH /* Constant data */
.bslsignature : {} > BSLSIGNATURE /* BSL Signature */
.cio : {} > RAM /* C I/O Buffer */
.pinit : {} > FLASH /* C++ Constructor tables */
.binit : {} > FLASH /* Boot-time Initialization tables */
.init_array : {} > FLASH /* C++ Constructor tables */
.mspabi.exidx : {} > FLASH /* C++ Constructor tables */
.mspabi.extab : {} > FLASH /* C++ Constructor tables */
#ifdef __TI_COMPILER_VERSION__
#if __TI_COMPILER_VERSION__ >= 15009000
#ifndef __LARGE_CODE_MODEL__
.TI.ramfunc : {} load=FLASH, run=RAM, table(BINIT)
#else
.TI.ramfunc : {} load=FLASH | FLASH2, run=RAM, table(BINIT)
#endif
#endif
#endif
.infoA : {} > INFOA /* MSP430 INFO FLASH Memory segments */
.infoB : {} > INFOB
.infoC : {} > INFOC
.infoD : {} > INFOD
/* MSP430 Interrupt vectors */
TRAPINT : { * ( .int00 ) } > INT00 type = VECT_INIT
.int01 : {} > INT01
PORT1 : { * ( .int02 ) } > INT02 type = VECT_INIT
PORT2 : { * ( .int03 ) } > INT03 type = VECT_INIT
.int04 : {} > INT04
ADC10 : { * ( .int05 ) } > INT05 type = VECT_INIT
USCIAB0TX : { * ( .int06 ) } > INT06 type = VECT_INIT
USCIAB0RX : { * ( .int07 ) } > INT07 type = VECT_INIT
TIMER0_A1 : { * ( .int08 ) } > INT08 type = VECT_INIT
TIMER0_A0 : { * ( .int09 ) } > INT09 type = VECT_INIT
WDT : { * ( .int10 ) } > INT10 type = VECT_INIT
COMPARATORA : { * ( .int11 ) } > INT11 type = VECT_INIT
TIMER1_A1 : { * ( .int12 ) } > INT12 type = VECT_INIT
TIMER1_A0 : { * ( .int13 ) } > INT13 type = VECT_INIT
NMI : { * ( .int14 ) } > INT14 type = VECT_INIT
.reset : {} > RESET /* MSP430 Reset vector */
}
/****************************************************************************/
/* Include peripherals memory map */
/****************************************************************************/
-l msp430g2553.cmd
#include <msp430.h>
#include "menu.h"
#include "OLED.h"
#include "IIC.h"
uint8_t Key_number1 = 0;
uint8_t Key_number2 = 0;
void Key_Init()
{
P1DIR &= ~BIT3; //p1.3输入
P1REN |= BIT3; //p1.3启动上拉电阻
//P1OUT |= BIT3;
P1IE |= BIT3; //打开p1.3中断
P1IES |= BIT3; // p1.3下降沿触发
P1IFG &= ~BIT3; // 清理标志位
}
void main(void)
{
WDTCTL = WDTPW | WDTHOLD | WDTNMI | WDTNMIES;
BCSCTL1 = CALBC1_8MHZ;
DCOCTL = CALDCO_8MHZ;
IE1=NMIIE; //开NMI中断
__bis_SR_register(GIE); //开全局中断
_delay_cycles(1000); //等待稳定
I2C_Init(0x3C);
OLED_Init();
Key_Init();
// Menu_Init();
P1DIR |= BIT1 | BIT2 | BIT4 | BIT5; //初始化电机输出引脚
P1OUT &= ~BIT1 | ~BIT2 | ~BIT4 | ~BIT5; //输出默认置低,暂不输出
P1DIR |= BIT0;//测试,可去除
while(1)
{
Choose_Menu();
}
}
#pragma vector = PORT1_VECTOR
__interrupt void Port1_ISR(void)
{
if(P1IFG & BIT3)
{
P1IFG &= ~BIT3;
delayMs(20);
if((P1IN & BIT3) ==0)
{
if(Key_number1 == 0 )
Key_number1 ++;
}
}
}
#pragma vector= NMI_VECTOR
__interrupt void NMI_ISR_HOOK(void)
{
IFG1 &= ~NMIIFG;
if(Key_number2 == 0 )
Key_number2 ++;
IE1=NMIIE;
}
<?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="TI MSP430 USB1" href="connections/TIMSP430-USB.xml" id="TI MSP430 USB1" xml="TIMSP430-USB.xml" xmlpath="connections"/>
<connection XML_version="1.2" id="TI MSP430 USB1">
<instance XML_version="1.2" href="drivers/msp430_emu.xml" id="drivers" xml="msp430_emu.xml" xmlpath="drivers"/>
<platform XML_version="1.2" id="platform_0">
<instance XML_version="1.2" desc="MSP430G2553" href="devices/MSP430G2553.xml" id="MSP430G2553" xml="MSP430G2553.xml" xmlpath="devices"/>
</platform>
</connection>
</configuration>
</configurations>
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
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment