Commit 441f3f5a authored by PMcL's avatar PMcL

Lab 0 template

parent e35c5637
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.managedbuilder.core.ManagedBuildManager" point="org.eclipse.cdt.core.ScannerInfoProvider"/>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="Lab0" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="${cross_rm} -rf" description="" id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718" name="Debug" parent="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug">
<folderInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718." name="/" resourcePath="">
<toolChain id="ilg.gnuarmeclipse.managedbuild.cross.toolchain.elf.debug.1116718626" name="Cross ARM GCC" superClass="ilg.gnuarmeclipse.managedbuild.cross.toolchain.elf.debug">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level.26143452" name="Optimization Level" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level" value="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level.none" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.messagelength.728067542" name="Message length (-fmessage-length=0)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.messagelength" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.signedchar.1829676158" name="'char' is signed (-fsigned-char)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.signedchar" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.functionsections.987365771" name="Function sections (-ffunction-sections)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.functionsections" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.datasections.1764875131" name="Data sections (-fdata-sections)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.datasections" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.debugging.level.252289568" name="Debug level" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.debugging.level" value="ilg.gnuarmeclipse.managedbuild.cross.option.debugging.level.max" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.debugging.format.1386079979" name="Debug format" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.debugging.format"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.family.667432089" name="ARM family" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.family" value="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.mcpu.cortex-m4" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.abi.1604121361" name="Float ABI" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.abi" value="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.abi.hard" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.unit.974744091" name="FPU Type" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.unit" value="ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.unit.fpv4spd16" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.toolchain.name.1137105262" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.toolchain.name" value="GNU Tools for ARM Embedded Processors" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.prefix.846620722" name="Prefix" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.prefix" value="arm-none-eabi-" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.c.2147247675" name="C compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.c" value="gcc" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.cpp.201819366" name="C++ compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.cpp" value="g++" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.objcopy.933289921" name="Hex/Bin converter" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.objcopy" value="objcopy" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.objdump.394294216" name="Listing generator" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.objdump" value="objdump" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.size.1570528824" name="Size command" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.size" value="size" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.make.1540266329" name="Build command" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.make" value="make" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.rm.822901070" name="Remove command" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.rm" value="rm" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.command.ar.474666354" name="Archiver" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.command.ar" value="ar" valueType="string"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="ilg.gnuarmeclipse.managedbuild.cross.targetPlatform.925370133" isAbstract="false" osList="all" superClass="ilg.gnuarmeclipse.managedbuild.cross.targetPlatform"/>
<builder buildPath="${workspace_loc:/Test02}/Debug" id="ilg.gnuarmeclipse.managedbuild.cross.builder.730836562" keepEnvironmentInBuildfile="false" name="Gnu Make Builder" superClass="ilg.gnuarmeclipse.managedbuild.cross.builder"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler.920585938" name="Cross ARM GNU Assembler" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.assembler.usepreprocessor.1837262375" name="Use preprocessor" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.assembler.usepreprocessor" value="true" valueType="boolean"/>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler.input.1402559948" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler.input"/>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.2085967203" name="Cross ARM C Compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std.609385325" name="Language standard" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std" useByScannerDiscovery="true" value="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std.c99" valueType="enumerated"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.include.paths.268835669" name="Include paths (-I)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Library}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Static_Code/IO_Map&quot;"/>
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Sources&quot;"/>
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Generated_Code&quot;"/>
</option>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.input.486999014" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.input"/>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.458126005" name="Cross ARM C++ Compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.include.paths.2063718692" name="Include paths (-I)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Static_Code/IO_Map&quot;"/>
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Sources&quot;"/>
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Generated_Code&quot;"/>
</option>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.input.1636627936" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.input"/>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.c.linker.254320625" name="Cross ARM C Linker" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.c.linker">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.linker.gcsections.547964605" name="Remove unused sections (-Xlinker --gc-sections)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.linker.gcsections" value="true" valueType="boolean"/>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.1842570881" name="Cross ARM C++ Linker" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.gcsections.21987941" name="Remove unused sections (-Xlinker --gc-sections)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.gcsections" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.paths.1913375520" name="Library search path (-L)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Library}&quot;"/>
</option>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.scriptfile.1821014636" name="Script files (-T)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.scriptfile" valueType="stringList">
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/Project_Settings/Linker_Files/ProcessorExpert.ld&quot;"/>
</option>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.other.435282606" name="Other linker flags" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.other" value="-specs=nano.specs -specs=nosys.specs" valueType="string"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.libs.1173332936" name="Libraries (-l)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.linker.libs" valueType="libs">
<listOptionValue builtIn="false" value="Lab0"/>
</option>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.input.853757952" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver.22174239" name="Cross ARM GNU Archiver" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.createflash.1309290241" name="Cross ARM GNU Create Flash Image" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.createflash"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting.1099926282" name="Cross ARM GNU Create Listing" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.source.1539624708" name="Display source (--source|-S)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.source" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.allheaders.471321436" name="Display all headers (--all-headers|-x)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.allheaders" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.demangle.1537443258" name="Demangle names (--demangle|-C)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.demangle" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.linenumbers.2099301190" name="Display line numbers (--line-numbers|-l)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.linenumbers" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.wide.1192752676" name="Wide lines (--wide|-w)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.createlisting.wide" value="true" valueType="boolean"/>
</tool>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.printsize.1830701070" name="Cross ARM GNU Print Size" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.printsize">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.printsize.format.878583403" name="Size format" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.printsize.format"/>
</tool>
</toolChain>
</folderInfo>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718..settings/com.freescale.processorexpert.core.prefs" name="com.freescale.processorexpert.core.prefs" rcbsApplicability="disable" resourcePath=".settings/com.freescale.processorexpert.core.prefs" toolsToInvoke=""/>
<sourceEntries>
<entry excluding="Generated_Code/PE_LDD.c|.settings/com.freescale.processorexpert.core.prefs" 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="Test02.ilg.gnuarmeclipse.managedbuild.cross.target.elf.1264526841" name="Executable" projectType="ilg.gnuarmeclipse.managedbuild.cross.target.elf"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718;ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718.;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.458126005;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.input.1636627936">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718;ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718.;ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.2085967203;ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.input.486999014">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.pathentry"/>
<storageModule moduleId="refreshScope" versionNumber="2">
<configuration configurationName="Debug">
<resource resourceType="PROJECT" workspacePath="/Lab0"/>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
</cproject>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Lab0</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.freescale.processorexpert.core.expertprojectbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.freescale.processorexpert.core.expertprojectnature</nature>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>
#
# Please do not modify or delete this file
#
eclipse.preferences.version=1
DERIVATIVE_NAME=MK70FN1M0xxx12
PE_FAMILY=Kinetis
PE_CPE_FILE=MCU10
PE_MODE=CLASSIC
LANGUAGE=c
LANGUAGE_POSSIBILITIES=${com.processorexpert.wizard.language.c} ${com.processorexpert.wizard.language.asm}
COMPILER=GNU C Compiler
VARIANTS=MK70FN1M0VMJ12
CONFIGURATIONS=RAM;FLASH
PROJECT_NAME=ProcessorExpert
INIT_ALL_PERIPHS=NO
INIT_PINSETTINGS=NO
STANDALONE=STANDALONE
SDK_PROJECT=NO
SDK_PATH=C:\Freescale\KSDK_1.2.0
MQX_LITE=NO
BOARD_NAME=${ProcessorBoard}
eclipse.preferences.version=1
versionGenerated/versionGenerated=1.0.0.RT7_b1515-0427
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project>
<configuration id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1530999718" name="Debug">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="946858505280048296" id="ilg.gnuarmeclipse.managedbuild.cross.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT GCC Built-in Compiler Settings Cross ARM" parameter="${COMMAND} ${FLAGS} ${cross_toolchain_flags} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
</project>
eclipse.preferences.version=1
org.eclipse.cdt.codan.checkers.errnoreturn=Warning
org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false}
org.eclipse.cdt.codan.checkers.errreturnvalue=Error
org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.checkers.noreturn=Error
org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},implicit\=>false}
org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false}
org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},unknown\=>false,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning
org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},skip\=>true}
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>()}
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},paramNot\=>false}
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},else\=>false,afterelse\=>false}
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true}
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true}
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},macro\=>true,exceptions\=>("@(\#)","$Id")}
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
eclipse.preferences.version=1
org.eclipse.cdt.core.formatter.alignment_for_arguments_in_method_invocation=18
org.eclipse.cdt.core.formatter.alignment_for_assignment=16
org.eclipse.cdt.core.formatter.alignment_for_base_clause_in_type_declaration=80
org.eclipse.cdt.core.formatter.alignment_for_binary_expression=16
org.eclipse.cdt.core.formatter.alignment_for_compact_if=16
org.eclipse.cdt.core.formatter.alignment_for_conditional_expression=34
org.eclipse.cdt.core.formatter.alignment_for_conditional_expression_chain=18
org.eclipse.cdt.core.formatter.alignment_for_constructor_initializer_list=0
org.eclipse.cdt.core.formatter.alignment_for_declarator_list=16
org.eclipse.cdt.core.formatter.alignment_for_enumerator_list=48
org.eclipse.cdt.core.formatter.alignment_for_expression_list=0
org.eclipse.cdt.core.formatter.alignment_for_expressions_in_array_initializer=16
org.eclipse.cdt.core.formatter.alignment_for_member_access=0
org.eclipse.cdt.core.formatter.alignment_for_overloaded_left_shift_chain=16
org.eclipse.cdt.core.formatter.alignment_for_parameters_in_method_declaration=18
org.eclipse.cdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
org.eclipse.cdt.core.formatter.brace_position_for_array_initializer=next_line_shifted
org.eclipse.cdt.core.formatter.brace_position_for_block=next_line_shifted
org.eclipse.cdt.core.formatter.brace_position_for_block_in_case=next_line_shifted
org.eclipse.cdt.core.formatter.brace_position_for_method_declaration=next_line
org.eclipse.cdt.core.formatter.brace_position_for_namespace_declaration=next_line
org.eclipse.cdt.core.formatter.brace_position_for_switch=next_line_shifted
org.eclipse.cdt.core.formatter.brace_position_for_type_declaration=next_line
org.eclipse.cdt.core.formatter.comment.min_distance_between_code_and_line_comment=1
org.eclipse.cdt.core.formatter.comment.never_indent_line_comments_on_first_column=true
org.eclipse.cdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=true
org.eclipse.cdt.core.formatter.compact_else_if=true
org.eclipse.cdt.core.formatter.continuation_indentation=2
org.eclipse.cdt.core.formatter.continuation_indentation_for_array_initializer=2
org.eclipse.cdt.core.formatter.format_guardian_clause_on_one_line=false
org.eclipse.cdt.core.formatter.indent_access_specifier_compare_to_type_header=false
org.eclipse.cdt.core.formatter.indent_access_specifier_extra_spaces=0
org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_access_specifier=true
org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_namespace_header=true
org.eclipse.cdt.core.formatter.indent_breaks_compare_to_cases=true
org.eclipse.cdt.core.formatter.indent_declaration_compare_to_template_header=true
org.eclipse.cdt.core.formatter.indent_empty_lines=false
org.eclipse.cdt.core.formatter.indent_statements_compare_to_block=true
org.eclipse.cdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_switch=true
org.eclipse.cdt.core.formatter.indentation.size=2
org.eclipse.cdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
org.eclipse.cdt.core.formatter.insert_new_line_after_template_declaration=insert
org.eclipse.cdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
org.eclipse.cdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
org.eclipse.cdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
org.eclipse.cdt.core.formatter.insert_new_line_before_colon_in_constructor_initializer_list=do not insert
org.eclipse.cdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
org.eclipse.cdt.core.formatter.insert_new_line_before_identifier_in_function_declaration=insert
org.eclipse.cdt.core.formatter.insert_new_line_before_while_in_do_statement=insert
org.eclipse.cdt.core.formatter.insert_new_line_in_empty_block=insert
org.eclipse.cdt.core.formatter.insert_space_after_assignment_operator=insert
org.eclipse.cdt.core.formatter.insert_space_after_binary_operator=insert
org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_arguments=insert
org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_parameters=insert
org.eclipse.cdt.core.formatter.insert_space_after_closing_brace_in_block=insert
org.eclipse.cdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
org.eclipse.cdt.core.formatter.insert_space_after_colon_in_base_clause=insert
org.eclipse.cdt.core.formatter.insert_space_after_colon_in_case=insert
org.eclipse.cdt.core.formatter.insert_space_after_colon_in_conditional=insert
org.eclipse.cdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_base_types=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_declarator_list=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_expression_list=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_arguments=insert
org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_parameters=insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_arguments=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_parameters=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_bracket=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_exception_specification=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_postfix_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_prefix_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_after_question_in_conditional=insert
org.eclipse.cdt.core.formatter.insert_space_after_semicolon_in_for=insert
org.eclipse.cdt.core.formatter.insert_space_after_unary_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_assignment_operator=insert
org.eclipse.cdt.core.formatter.insert_space_before_binary_operator=insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_arguments=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_parameters=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_bracket=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_exception_specification=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_colon_in_base_clause=insert
org.eclipse.cdt.core.formatter.insert_space_before_colon_in_case=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_colon_in_conditional=insert
org.eclipse.cdt.core.formatter.insert_space_before_colon_in_default=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_base_types=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_declarator_list=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_expression_list=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_arguments=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_parameters=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_arguments=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_parameters=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_block=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_namespace_declaration=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_bracket=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_exception_specification=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_for=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_if=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_while=insert
org.eclipse.cdt.core.formatter.insert_space_before_postfix_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_prefix_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_question_in_conditional=insert
org.eclipse.cdt.core.formatter.insert_space_before_semicolon=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
org.eclipse.cdt.core.formatter.insert_space_before_unary_operator=do not insert
org.eclipse.cdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
org.eclipse.cdt.core.formatter.insert_space_between_empty_brackets=do not insert
org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_exception_specification=do not insert
org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
org.eclipse.cdt.core.formatter.join_wrapped_lines=true
org.eclipse.cdt.core.formatter.keep_else_statement_on_same_line=false
org.eclipse.cdt.core.formatter.keep_empty_array_initializer_on_one_line=false
org.eclipse.cdt.core.formatter.keep_imple_if_on_one_line=false
org.eclipse.cdt.core.formatter.keep_then_statement_on_same_line=false
org.eclipse.cdt.core.formatter.lineSplit=80
org.eclipse.cdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.cdt.core.formatter.put_empty_statement_on_new_line=true
org.eclipse.cdt.core.formatter.tabulation.char=mixed
org.eclipse.cdt.core.formatter.tabulation.size=8
org.eclipse.cdt.core.formatter.use_tabs_only_for_leading_indentations=false
eclipse.preferences.version=1
formatter_profile=org.eclipse.cdt.ui.default.gnu_profile
formatter_settings_version=1
eclipse.preferences.version=1
org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
USER_OBJS :=
LIBS := -lLab0
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
O_SRCS :=
CPP_SRCS :=
C_UPPER_SRCS :=
C_SRCS :=
S_UPPER_SRCS :=
OBJ_SRCS :=
ASM_SRCS :=
CXX_SRCS :=
C++_SRCS :=
CC_SRCS :=
C++_DEPS :=
OBJS :=
C_DEPS :=
ASM_DEPS :=
CC_DEPS :=
CPP_DEPS :=
CXX_DEPS :=
C_UPPER_DEPS :=
S_UPPER_DEPS :=
# Every subdirectory with source files must be described here
SUBDIRS := \
Sources \
Project_Settings/Startup_Code \
Generated_Code \
<?xml version="1.0" encoding="UTF-8"?>
<PE_PROJECT_SETTINGS_DOCUMENTATION>
<PE_product_version v="version 10.5 for Freescale Microcontrollers" />
<PE_core_version v="Processor Expert Version 0521" />
<CPU_Bean name="Cpu" type="MK70FN1M0MJ15">
<Enabled v="N" />
<Properties>
<Component_name v="Cpu" />
<CPU_type v="MK70FN1M0VMJ12" />
<Initialization_priority v="minimal priority" />
<Watchdog_disable v="yes" />
<group name="Internal peripherals">
<EmptySection_DummyValue />
</group>
<group name="Low power mode settings">
<EmptySection_DummyValue />
</group>
<list name="Clock configurations" v="1">
<group name="Clock configuration 0">
<boolgroup name="Very low power mode" v="Disabled" />
<enumgroup name="Clock source setting" v="configuration 0">
<MCG_mode v="FEI" />
<MCG_output__MHz_ v="20.971520000000" />
<MCGIRCLK_clock__MHz_ v="0.032768" />
<OSCERCLK_clock__MHz_ v="0" />
<ERCLK32K__clock__kHz_ v="0" />
<MCGFFCLK__kHz_ v="16.384" />
</enumgroup>
<group name="System clocks">
<Core_clock_prescaler v="Auto select" />
<Core_clock v="20.971520000000" />
<Bus_clock_prescaler v="Auto select" />
<Bus_clock v="20.971520000000" />
<External_clock_prescaler v="Auto select" />
<External_bus_clock v="10.485760000000" />
<Flash_clock_prescaler v="Auto select" />
<Flash_clock v="10.485760000000" />
<enumgroup name="PLL/FLL clock selection" v="FLL">
<Clock_frequency__MHz_ v="20.971520000000" />
</enumgroup>
</group>
</group>
</list>
</Properties>
<Methods>
<EmptySection_DummyValue />
</Methods>
<Events>
<Event_module_name v="Events" />
</Events>
<Compiler v="GNU C Compiler" />
<CompilerProperties>
<Compiler v="GNU C Compiler" />
<boolgroup name="Generate linker file" v="yes">
<Stack_size v="1024" />
<Heap_size v="0" />
<Set_memory_segments_to_default v="Click to set default &amp;gt;" />
<Default_memory_for_interrupts v="INTERNAL RAM" />
<Default_memory_for_code v="INTERNAL RAM" />
<Default_memory_for_data v="INTERNAL RAM" />
<list name="ROM/RAM Areas" v="5">
<group name="MemoryArea0">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_interrupts" />
<Qualifier v="RX" />
<Address v="0" />
<Size v="488" />
</boolgroup>
</group>
<group name="MemoryArea1">
<boolgroup name="ROM/RAM Area" v="Disabled" />
</group>
<group name="MemoryArea2">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_text" />
<Qualifier v="RX" />
<Address v="1040" />
<Size v="1047536" />
</boolgroup>
</group>
<group name="MemoryArea3">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_data" />
<Qualifier v="RW" />
<Address v="536805376" />
<Size v="65536" />
</boolgroup>
</group>
<group name="MemoryArea4">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_data_20000000" />
<Qualifier v="RW" />
<Address v="536870912" />
<Size v="65536" />
</boolgroup>
</group>
</list>
</boolgroup>
</CompilerProperties>
</CPU_Bean>
<CPU_Bean name="Cpu" type="MK70FN1M0MJ15">
<Enabled v="Y" />
<Properties>
<Component_name v="Cpu" />
<CPU_type v="MK70FN1M0VMJ12" />
<Initialization_priority v="minimal priority" />
<Watchdog_disable v="yes" />
<group name="Internal peripherals">
<EmptySection_DummyValue />
</group>
<group name="Low power mode settings">
<EmptySection_DummyValue />
</group>
<list name="Clock configurations" v="1">
<group name="Clock configuration 0">
<boolgroup name="Very low power mode" v="Disabled" />
<enumgroup name="Clock source setting" v="configuration 0">
<MCG_mode v="FEI" />
<MCG_output__MHz_ v="20.971520000000" />
<MCGIRCLK_clock__MHz_ v="0.032768" />
<OSCERCLK_clock__MHz_ v="0" />
<ERCLK32K__clock__kHz_ v="0" />
<MCGFFCLK__kHz_ v="16.384" />
</enumgroup>
<group name="System clocks">
<Core_clock_prescaler v="Auto select" />
<Core_clock v="20.971520000000" />
<Bus_clock_prescaler v="Auto select" />
<Bus_clock v="20.971520000000" />
<External_clock_prescaler v="Auto select" />
<External_bus_clock v="10.485760000000" />
<Flash_clock_prescaler v="Auto select" />
<Flash_clock v="10.485760000000" />
<enumgroup name="PLL/FLL clock selection" v="FLL">
<Clock_frequency__MHz_ v="20.971520000000" />
</enumgroup>
</group>
</group>
</list>
</Properties>
<Methods>
<EmptySection_DummyValue />
</Methods>
<Events>
<Event_module_name v="Events" />
</Events>
<Compiler v="GNU C Compiler" />
<CompilerProperties>
<Compiler v="GNU C Compiler" />
<enumgroup name="Unhandled vectors" v="One handler for all">
<Unhandled_int_code>
<StrgList><![CDATA[/* This code can be changed using the CPU component property "Build Options / Unhandled int code" */
PE_DEBUGHALT();
]]></StrgList>
</Unhandled_int_code>
</enumgroup>
<group name="User initialization">
<User_data_declarations>
<StrgList></StrgList>
</User_data_declarations>
<User_code_before_PE_initialization>
<StrgList></StrgList>
</User_code_before_PE_initialization>
<User_code_after_PE_initialization>
<StrgList></StrgList>
</User_code_after_PE_initialization>
</group>
<boolgroup name="Generate debugger files" v="no" />
<group name="Startup">
<Add_startup_file v="yes" />
</group>
<boolgroup name="Generate linker file" v="yes">
<Stack_size v="1024" />
<Heap_size v="0" />
<Set_memory_segments_to_default v="Click to set default &amp;gt;" />
<Default_memory_for_interrupts v="INTERNAL FLASH" />
<Default_memory_for_code v="INTERNAL FLASH" />
<Default_memory_for_data v="INTERNAL RAM" />
<list name="ROM/RAM Areas" v="5">
<group name="MemoryArea0">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_interrupts" />
<Qualifier v="RX" />
<Address v="0" />
<Size v="488" />
</boolgroup>
</group>
<group name="MemoryArea1">
<boolgroup name="ROM/RAM Area" v="Disabled" />
</group>
<group name="MemoryArea2">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_text" />
<Qualifier v="RX" />
<Address v="1040" />
<Size v="1047536" />
</boolgroup>
</group>
<group name="MemoryArea3">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_data" />
<Qualifier v="RW" />
<Address v="536805376" />
<Size v="65536" />
</boolgroup>
</group>
<group name="MemoryArea4">
<boolgroup name="ROM/RAM Area" v="Enabled">
<Name v="m_data_20000000" />
<Qualifier v="RW" />
<Address v="536870912" />
<Size v="65536" />
</boolgroup>
</group>
</list>
</boolgroup>
</CompilerProperties>
</CPU_Bean>
</PE_PROJECT_SETTINGS_DOCUMENTATION>
This diff is collapsed.
/* ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : Cpu.h
** Project : Lab0
** Processor : MK70FN1M0VMJ12
** Component : MK70FN1M0MJ15
** Version : Component 01.028, Driver 01.04, CPU db: 3.00.000
** Repository : Kinetis
** Datasheet : K70P256M150SF3RM, Rev. 2, Dec 2011
** Compiler : GNU C Compiler
** Date/Time : 2018-07-15, 23:43, # CodeGen: 0
** Abstract :
**
** Settings :
**
** Contents :
** No public methods
**
** (c) Freescale Semiconductor, Inc.
** 2004 All Rights Reserved
**
** Copyright : 1997 - 2015 Freescale Semiconductor, Inc.
** All Rights Reserved.
**
** Redistribution and use in source and binary forms, with or without modification,
** are permitted provided that the following conditions are met:
**
** o Redistributions of source code must retain the above copyright notice, this list
** of conditions and the following disclaimer.
**
** o 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.
**
** o Neither the name of Freescale Semiconductor, Inc. nor the names of its
** contributors may be used to endorse or promote products derived from this
** software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
** http: www.freescale.com
** mail: support@freescale.com
** ###################################################################*/
/*!
** @file Cpu.h
** @version 01.04
** @brief
**
*/
/*!
** @addtogroup Cpu_module Cpu module documentation
** @{
*/
#ifndef __Cpu_H
#define __Cpu_H
/* MODULE Cpu. */
/*Include shared modules, which are used for whole project*/
#include "PE_Types.h"
#include "PE_Error.h"
#include "PE_Const.h"
#include "IO_Map.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Active configuration define symbol */
#define PEcfg_FLASH 1U
/* Methods configuration constants - generated for all enabled component's methods */
/* Events configuration constants - generated for all enabled component's events */
#define CPU_BUS_CLK_HZ 20971520U /* Initial value of the bus clock frequency in Hz */
#define CPU_CORE_CLK_HZ 20971520U /* Initial value of the core/system clock frequency in Hz. */
#define CPU_CLOCK_CONFIG_NUMBER 0x01U /* Specifies number of defined clock configurations. */
#define CPU_BUS_CLK_HZ_CLOCK_CONFIG0 20971520U /* Value of the bus clock frequency in the clock configuration 0 in Hz. */
#define CPU_CORE_CLK_HZ_CLOCK_CONFIG0 20971520U /* Value of the core/system clock frequency in the clock configuration 0 in Hz. */
#define CPU_INT_SLOW_CLK_HZ 32768U /* Value of the slow internal oscillator clock frequency in Hz */
#define CPU_INT_FAST_CLK_HZ 4000000U /* Value of the fast internal oscillator clock frequency in Hz */
#define CPU_FAMILY_Kinetis /* Specification of the core type of the selected cpu */
#define CPU_DERIVATIVE_MK70FN1M0MJ15 /* Name of the selected cpu derivative */
#define CPU_PARTNUM_MK70FN1M0VMJ12 /* Part number of the selected cpu */
#define CPU_LITTLE_ENDIAN /* The selected cpu uses little endian */
/* CPU frequencies in clock configuration 0 */
#define CPU_CLOCK_CONFIG_0 0x00U /* Clock configuration 0 identifier */
#define CPU_CORE_CLK_HZ_CONFIG_0 20971520UL /* Core clock frequency in clock configuration 0 */
#define CPU_BUS_CLK_HZ_CONFIG_0 20971520UL /* Bus clock frequency in clock configuration 0 */
#define CPU_FLEXBUS_CLK_HZ_CONFIG_0 10485760UL /* Flexbus clock frequency in clock configuration 0 */
#define CPU_FLASH_CLK_HZ_CONFIG_0 10485760UL /* FLASH clock frequency in clock configuration 0 */
#define CPU_USB_CLK_HZ_CONFIG_0 0UL /* USB clock frequency in clock configuration 0 */
#define CPU_PLL_FLL_CLK_HZ_CONFIG_0 20971520UL /* PLL/FLL clock frequency in clock configuration 0 */
#define CPU_MCGIR_CLK_HZ_CONFIG_0 32768UL /* MCG internal reference clock frequency in clock configuration 0 */
#define CPU_OSCER_CLK_HZ_CONFIG_0 0UL /* System OSC external reference clock frequency in clock configuration 0 */
#define CPU_ERCLK32K_CLK_HZ_CONFIG_0 0UL /* External reference clock 32k frequency in clock configuration 0 */
#define CPU_MCGFF_CLK_HZ_CONFIG_0 16384UL /* MCG fixed frequency clock */
typedef struct {
uint32_t cpu_core_clk_hz; /* Core clock frequency in clock configuration */
uint32_t cpu_bus_clk_hz; /* Bus clock frequency in clock configuration */
uint32_t cpu_flexbus_clk_hz; /* Flexbus clock frequency in clock configuration */
uint32_t cpu_flash_clk_hz; /* FLASH clock frequency in clock configuration */
uint32_t cpu_usb_clk_hz; /* USB clock frequency in clock configuration */
uint32_t cpu_pll_fll_clk_hz; /* PLL/FLL clock frequency in clock configuration */
uint32_t cpu_mcgir_clk_hz; /* MCG internal reference clock frequency in clock configuration */
uint32_t cpu_oscer_clk_hz; /* System OSC external reference clock frequency in clock configuration */
uint32_t cpu_erclk32k_clk_hz; /* External reference clock 32k frequency in clock configuration */
uint32_t cpu_mcgff_clk_hz; /* MCG fixed frequency clock */
} TCpuClockConfiguration;
/* The array of clock frequencies in configured clock configurations */
extern const TCpuClockConfiguration PE_CpuClockConfigurations[CPU_CLOCK_CONFIG_NUMBER];
/* Interrupt vector table type definition */
typedef void (*const tIsrFunc)(void);
typedef struct {
void * __ptr;
tIsrFunc __fun[0x79];
} tVectorTable;
extern const tVectorTable __vect_table;
/* Global variables */
/*lint -esym(765,SR_reg) Disable MISRA rule (8.10) checking for symbols (SR_reg). The SR_reg is used in inline assembler. */
extern volatile uint8_t SR_reg; /* Current FAULTMASK register */
/*lint -esym(765,SR_lock) Disable MISRA rule (8.10) checking for symbols (SR_lock). The SR_reg is used in inline assembler. */
extern volatile uint8_t SR_lock;
/*
** ===================================================================
** Method : PE_low_level_init (component MK70FN1M0MJ15)
**
** Description :
** Initializes beans and provides common register initialization.
** The method is called automatically as a part of the
** application initialization code.
** This method is internal. It is used by Processor Expert only.
** ===================================================================
*/
void PE_low_level_init(void);
PE_ISR(Cpu_Interrupt);
/*
** ===================================================================
** Method : Cpu_Cpu_Interrupt (component MK70FN1M0MJ15)
**
** Description :
** This ISR services an unused interrupt/exception vector.
** This method is internal. It is used by Processor Expert only.
** ===================================================================
*/
void __init_hardware(void);
/*
** ===================================================================
** Method : __init_hardware (component MK70FN1M0MJ15)
**
** Description :
** Initializes the whole system like timing, external bus, etc.
** This method is internal. It is used by Processor Expert only.
** ===================================================================
*/
/* END Cpu. */
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif
/* __Cpu_H */
/*!
** @}
*/
/*
** ###################################################################
**
** This file was created by Processor Expert 10.5 [05.21]
** for the Freescale Kinetis series of microcontrollers.
**
** ###################################################################
*/
/* ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : IO_Map.h
** Project : Lab0
** Processor : MK70FN1M0VMJ12
** Component : IO_Map
** Version : Driver 01.00
** Compiler : GNU C Compiler
** Date/Time : 2018-07-15, 23:43, # CodeGen: 0
** Abstract :
** IO_Map.h - implements an IO device's mapping.
** This module contains symbol definitions of all peripheral
** registers and bits.
** Contents :
** No public methods
**
** Copyright : 1997 - 2015 Freescale Semiconductor, Inc.
** All Rights Reserved.
**
** Redistribution and use in source and binary forms, with or without modification,
** are permitted provided that the following conditions are met:
**
** o Redistributions of source code must retain the above copyright notice, this list
** of conditions and the following disclaimer.
**
** o 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.
**
** o Neither the name of Freescale Semiconductor, Inc. nor the names of its
** contributors may be used to endorse or promote products derived from this
** software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
** http: www.freescale.com
** mail: support@freescale.com
** ###################################################################*/
/*!
** @file IO_Map.h
** @version 01.00
** @brief
** IO_Map.h - implements an IO device's mapping.
** This module contains symbol definitions of all peripheral
** registers and bits.
*/
/*!
** @addtogroup IO_Map_module IO_Map module documentation
** @{
*/
#ifndef __IO_Map_H
#define __IO_Map_H
#include "MK70F12.h"
#endif
/* __IO_Map_H */
/*!
** @}
*/
/*
** ###################################################################
**
** This file was created by Processor Expert 10.5 [05.21]
** for the Freescale Kinetis series of microcontrollers.
**
** ###################################################################
*/
/* ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : PE_Const.h
** Project : Lab0
** Processor : MK70FN1M0VMJ12
** Component : PE_Const
** Version : Driver 01.00
** Compiler : GNU C Compiler
** Date/Time : 2018-07-15, 23:43, # CodeGen: 0
** Abstract :
** This component "PE_Const" contains internal definitions
** of the constants.
** Contents :
** No public methods
**
** Copyright : 1997 - 2015 Freescale Semiconductor, Inc.
** All Rights Reserved.
**
** Redistribution and use in source and binary forms, with or without modification,
** are permitted provided that the following conditions are met:
**
** o Redistributions of source code must retain the above copyright notice, this list
** of conditions and the following disclaimer.
**
** o 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.
**
** o Neither the name of Freescale Semiconductor, Inc. nor the names of its
** contributors may be used to endorse or promote products derived from this
** software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
** http: www.freescale.com
** mail: support@freescale.com
** ###################################################################*/
/*!
** @file PE_Const.h
** @version 01.00
** @brief
** This component "PE_Const" contains internal definitions
** of the constants.
*/
/*!
** @addtogroup PE_Const_module PE_Const module documentation
** @{
*/
#ifndef __PE_Const_H
#define __PE_Const_H
/* Reset cause constants */
#define RSTSRC_WAKEUP 0x01U /*!< LLWU module wakeup reset */
#define RSTSRC_LVD 0x02U /*!< Low-voltage detect reset */
#define RSTSRC_LOC 0x04U /*!< Loss-of-clock reset */
#define RSTSRC_COP 0x20U /*!< Watchdog reset */
#define RSTSRC_WDOG 0x20U /*!< Watchdog reset */
#define RSTSRC_PIN 0x40U /*!< External pin reset */
#define RSTSRC_POR 0x80U /*!< Power-on reset */
#define RSTSRC_JTAG 0x0100U /*!< JTAG reset pin */
#define RSTSRC_LOCKUP 0x0200U /*!< Core Lock-up reset */
#define RSTSRC_SW 0x0400U /*!< Software reset */
#define RSTSRC_MDM_AP 0x0800U /*!< Reset caused by host debugger system */
#define RSTSRC_EZPT 0x1000U /*!< EzPort reset */
#define RSTSRC_SACKERR 0x2000U /*!< Stop Mode Acknowledge Error Reset */
/* Low voltage interrupt cause constants */
#define LVDSRC_LVD 0x01U /*!< Low voltage detect */
#define LVDSRC_LVW 0x02U /*!< Low-voltage warning */
#endif /* _PE_Const_H */
/*!
** @}
*/
/*
** ###################################################################
**
** This file was created by Processor Expert 10.5 [05.21]
** for the Freescale Kinetis series of microcontrollers.
**
** ###################################################################
*/
/* ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : PE_Error.h
** Project : Lab0
** Processor : MK70FN1M0VMJ12
** Component : PE_Error
** Version : Driver 01.00
** Compiler : GNU C Compiler
** Date/Time : 2018-07-15, 23:43, # CodeGen: 0
** Abstract :
** This component "PE_Error" contains internal definitions
** of the error constants.
** Contents :
** No public methods
**
** Copyright : 1997 - 2015 Freescale Semiconductor, Inc.
** All Rights Reserved.
**
** Redistribution and use in source and binary forms, with or without modification,
** are permitted provided that the following conditions are met:
**
** o Redistributions of source code must retain the above copyright notice, this list
** of conditions and the following disclaimer.
**
** o 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.
**
** o Neither the name of Freescale Semiconductor, Inc. nor the names of its
** contributors may be used to endorse or promote products derived from this
** software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
** http: www.freescale.com
** mail: support@freescale.com
** ###################################################################*/
/*!
** @file PE_Error.h
** @version 01.00
** @brief
** This component "PE_Error" contains internal definitions
** of the error constants.
*/
/*!
** @addtogroup PE_Error_module PE_Error module documentation
** @{
*/
#ifndef __PE_Error_H
#define __PE_Error_H
#define ERR_OK 0x00U /*!< OK */
#define ERR_SPEED 0x01U /*!< This device does not work in the active speed mode. */
#define ERR_RANGE 0x02U /*!< Parameter out of range. */
#define ERR_VALUE 0x03U /*!< Parameter of incorrect value. */
#define ERR_OVERFLOW 0x04U /*!< Timer overflow. */
#define ERR_MATH 0x05U /*!< Overflow during evaluation. */
#define ERR_ENABLED 0x06U /*!< Device is enabled. */
#define ERR_DISABLED 0x07U /*!< Device is disabled. */
#define ERR_BUSY 0x08U /*!< Device is busy. */
#define ERR_NOTAVAIL 0x09U /*!< Requested value or method not available. */
#define ERR_RXEMPTY 0x0AU /*!< No data in receiver. */
#define ERR_TXFULL 0x0BU /*!< Transmitter is full. */
#define ERR_BUSOFF 0x0CU /*!< Bus not available. */
#define ERR_OVERRUN 0x0DU /*!< Overrun error is detected. */
#define ERR_FRAMING 0x0EU /*!< Framing error is detected. */
#define ERR_PARITY 0x0FU /*!< Parity error is detected. */
#define ERR_NOISE 0x10U /*!< Noise error is detected. */
#define ERR_IDLE 0x11U /*!< Idle error is detected. */
#define ERR_FAULT 0x12U /*!< Fault error is detected. */
#define ERR_BREAK 0x13U /*!< Break char is received during communication. */
#define ERR_CRC 0x14U /*!< CRC error is detected. */
#define ERR_ARBITR 0x15U /*!< A node losts arbitration. This error occurs if two nodes start transmission at the same time. */
#define ERR_PROTECT 0x16U /*!< Protection error is detected. */
#define ERR_UNDERFLOW 0x17U /*!< Underflow error is detected. */
#define ERR_UNDERRUN 0x18U /*!< Underrun error is detected. */
#define ERR_COMMON 0x19U /*!< Common error of a device. */
#define ERR_LINSYNC 0x1AU /*!< LIN synchronization error is detected. */
#define ERR_FAILED 0x1BU /*!< Requested functionality or process failed. */
#define ERR_QFULL 0x1CU /*!< Queue is full. */
#define ERR_PARAM_MASK 0x80U /*!< Invalid mask. */
#define ERR_PARAM_MODE 0x81U /*!< Invalid mode. */
#define ERR_PARAM_INDEX 0x82U /*!< Invalid index. */
#define ERR_PARAM_DATA 0x83U /*!< Invalid data. */
#define ERR_PARAM_SIZE 0x84U /*!< Invalid size. */
#define ERR_PARAM_VALUE 0x85U /*!< Invalid value. */
#define ERR_PARAM_RANGE 0x86U /*!< Invalid parameter's range or parameters' combination. */
#define ERR_PARAM_LOW_VALUE 0x87U /*!< Invalid value (LOW part). */
#define ERR_PARAM_HIGH_VALUE 0x88U /*!< Invalid value (HIGH part). */
#define ERR_PARAM_ADDRESS 0x89U /*!< Invalid address. */
#define ERR_PARAM_PARITY 0x8AU /*!< Invalid parity. */
#define ERR_PARAM_WIDTH 0x8BU /*!< Invalid width. */
#define ERR_PARAM_LENGTH 0x8CU /*!< Invalid length. */
#define ERR_PARAM_ADDRESS_TYPE 0x8DU /*!< Invalid address type. */
#define ERR_PARAM_COMMAND_TYPE 0x8EU /*!< Invalid command type. */
#define ERR_PARAM_COMMAND 0x8FU /*!< Invalid command. */
#define ERR_PARAM_RECIPIENT 0x90U /*!< Invalid recipient. */
#define ERR_PARAM_BUFFER_COUNT 0x91U /*!< Invalid buffer count. */
#define ERR_PARAM_ID 0x92U /*!< Invalid ID. */
#define ERR_PARAM_GROUP 0x93U /*!< Invalid group. */
#define ERR_PARAM_CHIP_SELECT 0x94U /*!< Invalid chip select. */
#define ERR_PARAM_ATTRIBUTE_SET 0x95U /*!< Invalid set of attributes. */
#define ERR_PARAM_SAMPLE_COUNT 0x96U /*!< Invalid sample count. */
#define ERR_PARAM_CONDITION 0x97U /*!< Invalid condition. */
#define ERR_PARAM_TICKS 0x98U /*!< Invalid ticks parameter. */
#endif /* __PE_Error_H */
/*!
** @}
*/
/*
** ###################################################################
**
** This file was created by Processor Expert 10.5 [05.21]
** for the Freescale Kinetis series of microcontrollers.
**
** ###################################################################
*/
This diff is collapsed.
/** ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : Vectors.c
** Project : Lab1
** Processor : MK70FN1M0VMJ12
** Version : Component 01.028, Driver 01.04, CPU db: 3.00.000
** Repository : Kinetis
** Compiler : GNU C Compiler
** Date/Time : 2015-07-29, 13:56, # CodeGen: 10
** Abstract :
**
** Settings :
**
**
** Copyright : 1997 - 2015 Freescale Semiconductor, Inc.
** All Rights Reserved.
**
** Redistribution and use in source and binary forms, with or without modification,
** are permitted provided that the following conditions are met:
**
** o Redistributions of source code must retain the above copyright notice, this list
** of conditions and the following disclaimer.
**
** o 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.
**
** o Neither the name of Freescale Semiconductor, Inc. nor the names of its
** contributors may be used to endorse or promote products derived from this
** software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
** http: www.freescale.com
** mail: support@freescale.com
** ###################################################################*/
/*!
** @file Vectors.c
** @version 01.04
** @brief
**
*/
/*!
** @addtogroup Vectors_module Vectors module documentation
** @{
*/
#include "Cpu.h"
#include "timer.h"
#include "buttons.h"
/* ISR prototype */
extern uint32_t __SP_INIT;
extern
#ifdef __cplusplus
"C"
#endif
void __thumb_startup( void );
/*lint -esym(765,__vect_table) Disable MISRA rule (8.10) checking for symbols (__vect_table). Definition of the interrupt vector table placed by linker on a predefined location. */
/*lint -save -e926 -e927 -e928 -e929 Disable MISRA rule (11.4) checking. Need to explicitly cast pointers to the general ISR for Interrupt vector table */
__attribute__ ((section (".vectortable"))) const tVectorTable __vect_table = { /* Interrupt vector table */
/* ISR name No. Address Pri Name Description */
&__SP_INIT, /* 0x00 0x00000000 - ivINT_Initial_Stack_Pointer used by PE */
{
(tIsrFunc)&__thumb_startup, /* 0x01 0x00000004 - ivINT_Initial_Program_Counter used by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x02 0x00000008 -2 ivINT_NMI unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x03 0x0000000C -1 ivINT_Hard_Fault unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x04 0x00000010 - ivINT_Mem_Manage_Fault unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x05 0x00000014 - ivINT_Bus_Fault unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x06 0x00000018 - ivINT_Usage_Fault unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x07 0x0000001C - ivINT_Reserved7 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x08 0x00000020 - ivINT_Reserved8 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x09 0x00000024 - ivINT_Reserved9 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x0A 0x00000028 - ivINT_Reserved10 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x0B 0x0000002C - ivINT_SVCall unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x0C 0x00000030 - ivINT_DebugMonitor unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x0D 0x00000034 - ivINT_Reserved13 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x0E 0x00000038 - ivINT_PendableSrvReq unused by PE */
(tIsrFunc)&Timer_TickISR, /* 0x0F 0x0000003C - ivINT_SysTick unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x10 0x00000040 - ivINT_DMA0_DMA16 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x11 0x00000044 - ivINT_DMA1_DMA17 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x12 0x00000048 - ivINT_DMA2_DMA18 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x13 0x0000004C - ivINT_DMA3_DMA19 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x14 0x00000050 - ivINT_DMA4_DMA20 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x15 0x00000054 - ivINT_DMA5_DMA21 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x16 0x00000058 - ivINT_DMA6_DMA22 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x17 0x0000005C - ivINT_DMA7_DMA23 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x18 0x00000060 - ivINT_DMA8_DMA24 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x19 0x00000064 - ivINT_DMA9_DMA25 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1A 0x00000068 - ivINT_DMA10_DMA26 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1B 0x0000006C - ivINT_DMA11_DMA27 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1C 0x00000070 - ivINT_DMA12_DMA28 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1D 0x00000074 - ivINT_DMA13_DMA29 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1E 0x00000078 - ivINT_DMA14_DMA30 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x1F 0x0000007C - ivINT_DMA15_DMA31 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x20 0x00000080 - ivINT_DMA_Error unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x21 0x00000084 - ivINT_MCM unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x22 0x00000088 - ivINT_FTFE unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x23 0x0000008C - ivINT_Read_Collision unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x24 0x00000090 - ivINT_LVD_LVW unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x25 0x00000094 - ivINT_LLW unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x26 0x00000098 - ivINT_Watchdog unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x27 0x0000009C - ivINT_RNG unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x28 0x000000A0 - ivINT_I2C0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x29 0x000000A4 - ivINT_I2C1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2A 0x000000A8 - ivINT_SPI0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2B 0x000000AC - ivINT_SPI1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2C 0x000000B0 - ivINT_SPI2 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2D 0x000000B4 - ivINT_CAN0_ORed_Message_buffer unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2E 0x000000B8 - ivINT_CAN0_Bus_Off unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x2F 0x000000BC - ivINT_CAN0_Error unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x30 0x000000C0 - ivINT_CAN0_Tx_Warning unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x31 0x000000C4 - ivINT_CAN0_Rx_Warning unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x32 0x000000C8 - ivINT_CAN0_Wake_Up unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x33 0x000000CC - ivINT_I2S0_Tx unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x34 0x000000D0 - ivINT_I2S0_Rx unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x35 0x000000D4 - ivINT_CAN1_ORed_Message_buffer unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x36 0x000000D8 - ivINT_CAN1_Bus_Off unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x37 0x000000DC - ivINT_CAN1_Error unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x38 0x000000E0 - ivINT_CAN1_Tx_Warning unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x39 0x000000E4 - ivINT_CAN1_Rx_Warning unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3A 0x000000E8 - ivINT_CAN1_Wake_Up unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3B 0x000000EC - ivINT_Reserved59 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3C 0x000000F0 - ivINT_UART0_LON unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3D 0x000000F4 - ivINT_UART0_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3E 0x000000F8 - ivINT_UART0_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x3F 0x000000FC - ivINT_UART1_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x40 0x00000100 - ivINT_UART1_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x41 0x00000104 - ivINT_UART2_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x42 0x00000108 - ivINT_UART2_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x43 0x0000010C - ivINT_UART3_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x44 0x00000110 - ivINT_UART3_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x45 0x00000114 - ivINT_UART4_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x46 0x00000118 - ivINT_UART4_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x47 0x0000011C - ivINT_UART5_RX_TX unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x48 0x00000120 - ivINT_UART5_ERR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x49 0x00000124 - ivINT_ADC0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4A 0x00000128 - ivINT_ADC1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4B 0x0000012C - ivINT_CMP0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4C 0x00000130 - ivINT_CMP1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4D 0x00000134 - ivINT_CMP2 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4E 0x00000138 - ivINT_FTM0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x4F 0x0000013C - ivINT_FTM1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x50 0x00000140 - ivINT_FTM2 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x51 0x00000144 - ivINT_CMT unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x52 0x00000148 - ivINT_RTC unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x53 0x0000014C - ivINT_RTC_Seconds unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x54 0x00000150 - ivINT_PIT0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x55 0x00000154 - ivINT_PIT1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x56 0x00000158 - ivINT_PIT2 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x57 0x0000015C - ivINT_PIT3 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x58 0x00000160 - ivINT_PDB0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x59 0x00000164 - ivINT_USB0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5A 0x00000168 - ivINT_USBDCD unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5B 0x0000016C - ivINT_ENET_1588_Timer unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5C 0x00000170 - ivINT_ENET_Transmit unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5D 0x00000174 - ivINT_ENET_Receive unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5E 0x00000178 - ivINT_ENET_Error unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x5F 0x0000017C - ivINT_Reserved95 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x60 0x00000180 - ivINT_SDHC unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x61 0x00000184 - ivINT_DAC0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x62 0x00000188 - ivINT_DAC1 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x63 0x0000018C - ivINT_TSI0 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x64 0x00000190 - ivINT_MCG unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x65 0x00000194 - ivINT_LPTimer unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x66 0x00000198 - ivINT_Reserved102 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x67 0x0000019C - ivINT_PORTA unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x68 0x000001A0 - ivINT_PORTB unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x69 0x000001A4 - ivINT_PORTC unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x6A 0x000001A8 - ivINT_PORTD unused by PE */
(tIsrFunc)&PortE_ISR, /* 0x6B 0x000001AC - ivINT_PORTE unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x6C 0x000001B0 - ivINT_PORTF unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x6D 0x000001B4 - ivINT_DDR unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x6E 0x000001B8 - ivINT_SWI unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x6F 0x000001BC - ivINT_NFC unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x70 0x000001C0 - ivINT_USBHS unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x71 0x000001C4 - ivINT_LCD unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x72 0x000001C8 - ivINT_CMP3 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x73 0x000001CC - ivINT_Reserved115 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x74 0x000001D0 - ivINT_Reserved116 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x75 0x000001D4 - ivINT_FTM3 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x76 0x000001D8 - ivINT_ADC2 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x77 0x000001DC - ivINT_ADC3 unused by PE */
(tIsrFunc)&Cpu_Interrupt, /* 0x78 0x000001E0 - ivINT_I2S1_Tx unused by PE */
(tIsrFunc)&Cpu_Interrupt /* 0x79 0x000001E4 - ivINT_I2S1_Rx unused by PE */
}
};
/*lint -restore Enable MISRA rule (11.4) checking. */
/*!
** @}
*/
/*
** ###################################################################
**
** This file was created by Processor Expert 10.5 [05.21]
** for the Freescale Kinetis series of microcontrollers.
**
** ###################################################################
*/
/*! @file
*
* @brief Routines to access the LEDs on the TWR-K70F120M.
*
* This contains the functions for operating the LEDs.
*
* @author PMcL
* @date 2015-08-15
*/
#ifndef LEDS_H
#define LEDS_H
// new types
#include "types.h"
/*! @brief LED to pin mapping on the TWR-K70F120M
*
*/
typedef enum
{
LED_ORANGE = (1 << 11),
LED_YELLOW = (1 << 28),
LED_GREEN = (1 << 29),
LED_BLUE = (1 << 10)
} TLED;
/*! @brief Sets up the LEDs before first use.
*
* @return bool - TRUE if the LEDs were successfully initialized.
*/
bool LEDs_Init(void);
/*! @brief Turns an LED on.
*
* @param color The color of the LED to turn on.
* @note Assumes that LEDs_Init has been called.
*/
void LEDs_On(const TLED color);
/*! @brief Turns off an LED.
*
* @param color THe color of the LED to turn off.
* @note Assumes that LEDs_Init has been called.
*/
void LEDs_Off(const TLED color);
/*! @brief Toggles an LED.
*
* @param color THe color of the LED to toggle.
* @note Assumes that LEDs_Init has been called.
*/
void LEDs_Toggle(const TLED color);
#endif
/*! @file
*
* @brief HAL for pushbutton switches on the TWR-K70.
*
* This contains the functions for the pushbutton switches on the TWR-K70.
*
* @author PMcL
* @date 2015-10-25
*/
#ifndef BUTTONS_H
#define BUTTONS_H
// New types
#include "types.h"
/*! @brief Initializes the pushbutton switches.
*
* @param buttonSetup is a pointer to a switch setup structure.
* @param userFunction is a pointer to a user callback function.
*/
bool Buttons_Init(void (*userFunction)(void));
/*! @brief Interrupt service routine for Port D buttons.
*
* A button in Port D has been pressed.
* The user callback function will be called.
* @note Assumes the button has been initialized.
*/
void __attribute__ ((interrupt)) PortD_ISR(void);
/*! @brief Interrupt service routine for Port E buttons.
*
* A button in Port E has been pressed.
* The user callback function will be called.
* @note Assumes the button has been initialized.
*/
void __attribute__ ((interrupt)) PortE_ISR(void);
#endif
/*! @file
*
* @brief Routines to implement packet encoding and decoding for the serial port.
*
* This contains the functions for implementing the "Tower to PC Protocol" 5-byte packets.
*
* @author PMcL
* @date 2015-07-23
*/
#ifndef TIMER_H
#define TIMER_H
// new types
#include "types.h"
/*! @brief Initializes the Timer before first use.
*
* Sets up the internal SysTick clock.
* Registers the user's callback function.
* @param userFunction is a pointer to a user callback function.
*/
void Timer_Init(void (*userFunction)(void));
/*! @brief Interrupt service routine for the timer.
*
* The internal systick clock has ticked.
* The user callback function will be called after 1 second has elapsed.
* @note Assumes the Timer has been initialized.
*/
void __attribute__ ((interrupt)) Timer_TickISR(void);
#endif
/*! @file
*
* @brief Declares new types.
*
* This contains types that are especially useful for the Tower to PC Protocol.
*
* @author PMcL
* @date 2015-07-23
*/
#ifndef TYPES_H
#define TYPES_H
#include <stdint.h>
#include <stdbool.h>
// Unions to efficiently access hi and lo parts of integers and words
typedef union
{
int16_t l;
struct
{
int8_t Lo;
int8_t Hi;
} s;
} int16union_t;
typedef union
{
uint16_t l;
struct
{
uint8_t Lo;
uint8_t Hi;
} s;
} uint16union_t;
// Union to efficiently access hi and lo parts of a long integer
typedef union
{
uint32_t l;
struct
{
uint16_t Lo;
uint16_t Hi;
} s;
} uint32union_t;
// Union to efficiently access individual bytes of a float
typedef union
{
float d;
struct
{
uint16union_t dLo;
uint16union_t dHi;
} dParts;
} TFloat;
#endif
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright : 2012 Freescale, Inc. All Rights Reserved.
This configuration file is a standard interchange file that's format is maintained
by Freescale, Inc. The configuration file is a derivative work
of the Processor Expert Software technology licensed for use by customers
as defined as SOFTWARE in the product's End User License Agreement. This file
and format are free to use and distribute for read-only purposes. You do not have
the right to create these files or modify this format or use for any purposes other
than interchange with the Processor Expert Software technology.
THIS SOFTWARE IS PROVIDED "AS IS".
NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT
LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE APPLY TO THIS SOFTWARE. IN NO EVENT WILL FREESCALE BE LIABLE, WHETHER
IN CONTRACT, TORT, OR OTHERWISE, FOR ANY INCIDENTAL, SPECIAL, INDIRECT,
CONSEQUENTIAL OR PUNITIVE DAMAGES, INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR
ANY LOSS OF USE, LOSS OF TIME, INCONVENIENCE, COMMERCIAL LOSS, OR LOST PROFITS,
SAVINGS, OR REVENUES TO THE FULL EXTENT SUCH MAY BE DISCLAIMED BY LAW.
-->
<export xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ProjectInfoDescription.xsd">
<PROCESSOR>
<DeviceID>MK70FN1M0xxx12</DeviceID>
<CoreNum>1</CoreNum>
<Cores>
<Core>
<CoreSet>Cortex-M4</CoreSet>
</Core>
</Cores>
<SRAMsize>128k</SRAMsize>
<FLASHsize>1M</FLASHsize>
</PROCESSOR>
<PATHS>
<LinkerCommandFile>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Project_Settings\Linker_Files\ProcessorExpert.ld</LinkerCommandFile>
<IncludePaths>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Static_Code\PDD\</Path>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Static_Code\IO_Map\</Path>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Sources\</Path>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\</Path>
</IncludePaths>
<SourceCodePaths>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\</Path>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Project_Settings\Startup_Code\</Path>
<Path>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Sources\</Path>
</SourceCodePaths>
</PATHS>
<FILES>
<GeneratedCs>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\Cpu.c</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\PE_LDD.c</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\Vectors.c</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Project_Settings\Startup_Code\startup.c</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Sources\Events.c</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Sources\main.c</PathName>
</GeneratedCs>
<GeneratedHs>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\Cpu.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\IO_Map.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\PE_Const.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\PE_Error.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\PE_LDD.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Generated_Code\PE_Types.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Library\LEDs.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Library\buttons.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Library\timer.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Library\types.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Sources\Events.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Static_Code\IO_Map\MK70F12.h</PathName>
<PathName>F:\#Work\48434 Embedded Software\4 Labs\Lab 0\Template\Lab0\Static_Code\PDD\PDD_Types.h</PathName>
</GeneratedHs>
</FILES>
<OPTIONS>
</OPTIONS>
</export>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="com.pemicro.debug.gdbjtag.pne.launchConfigurationType">
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.PE.DEVICE_NAME" value="K70FN1M0M12"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.PE.GDB_IP" value="127.0.0.1"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.PE.GDB_OPTIONS" value=""/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.PE.GDB_PORT" value="7224"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.PE.HARDWARE_INTERFACE" value="0"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.PE.LAST_ATTRIBUTE_HEADER" value="com.pemicro.debug.gdbjtag.pne.ml."/>
<booleanAttribute key="com.pemicro.debug.gdbjtag.pne.PE.USE_EXTERNAL_SERVER" value="true"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbClientOtherCommands" value="set mem inaccessible-by-default off&#13;&#10;set tcp auto-retry on&#13;&#10;set tcp connect-timeout 30"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbClientOtherOptions" value=""/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerConnection" value="usb"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerConnectionAddress" value=""/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerDebugInterface" value="swd"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerDeviceEndianness" value="little"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerDeviceName" value=""/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerDeviceSpeed" value="30"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerExecutable" value="${jlink_path}/JLinkGDBServerCL"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerGdbPortNumber" value="7224"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerLog" value=""/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerOther" value="-s"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerSwoPortNumber" value="2332"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.gdbServerTelnetPortNumber" value="51794"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.interfaceSpeed" value="auto"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.swoEnableTargetCpuFreq" value="0"/>
<stringAttribute key="com.pemicro.debug.gdbjtag.pne.swoEnableTargetPortMask" value="0x1"/>
<intAttribute key="com.pemicro.debug.gdbjtag.pne.swoEnableTargetSwoFreq" value="0"/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.imageFileName" value=""/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.imageOffset" value=""/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.ipAddress" value="127.0.0.1"/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.jtagDevice" value="GNU ARM J-Link"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.loadImage" value="true"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.loadSymbols" value="true"/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.pcRegister" value=""/>
<intAttribute key="org.eclipse.cdt.debug.gdbjtag.core.portNumber" value="7224"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setPcRegister" value="false"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setStopAt" value="true"/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.stopAt" value="main"/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.symbolsFileName" value=""/>
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.symbolsOffset" value=""/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.useFileForImage" value="false"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.useFileForSymbols" value="false"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.useProjBinaryForImage" value="true"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.useProjBinaryForSymbols" value="true"/>
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.useRemoteTarget" value="true"/>
<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="${cross_prefix}gdb${cross_suffix}"/>
<booleanAttribute key="org.eclipse.cdt.dsf.gdb.UPDATE_THREADLIST_ON_SUSPEND" value="false"/>
<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="Debug/Test02.elf"/>
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="Test02"/>
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value=""/>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
<listEntry value="/Test02"/>
</listAttribute>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="4"/>
</listAttribute>
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;memoryBlockExpressionList context=&quot;reserved-for-future-use&quot;/&gt;&#13;&#10;"/>
<stringAttribute key="process_factory_id" value="org.eclipse.cdt.dsf.gdb.GdbProcessFactory"/>
</launchConfiguration>
This diff is collapsed.
This diff is collapsed.
/*!
** @file
** @version 1.0
** @brief
** Main module.
** This module implements a simple 12-hour clock.
** It time-stamps button pushes and stores them in a FIFO used a packed representation.
*/
/*!
** @addtogroup main_module main module documentation
** @{
*/
/* MODULE main */
// CPU module - contains low level hardware initialization routines
#include "Cpu.h"
#include "PE_Types.h"
#include "PE_Error.h"
#include "PE_Const.h"
#include "IO_Map.h"
// Simple timer
#include "timer.h"
// Button functions
#include "buttons.h"
// LED functions
#include "LEDs.h"
// The packed time representation
// 15 12 11 6 5 0
// |----|----|----|----|----|----|----|----|----|----|----|----|----|----|----|----|
// | hours | minutes | seconds |
typedef uint16_t PackedTime_t;
// ***
// You will need to create a FIFO object with a size suitable to store 10 time-stamps using the packed time representation.
// ***
static void OneSecondElapsed(void)
{
LEDs_Toggle(LED_BLUE);
// One second has elapsed - update the time here
}
static void Button1Pressed(void)
{
LEDs_Toggle(LED_ORANGE);
// The button has been pressed - put a time-stamp into the FIFO
}
static void TowerInit(void)
{
PE_low_level_init();
Timer_Init(OneSecondElapsed);
Buttons_Init(Button1Pressed);
LEDs_Init();
__EI();
}
/*lint -save -e970 Disable MISRA rule (6.3) checking. */
int main(void)
/*lint -restore Enable MISRA rule (6.3) checking. */
{
/* Write your local variable definition here */
/*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
PE_low_level_init();
/*** End of Processor Expert internal initialization. ***/
TowerInit();
/* Write your code here */
for (;;)
{
}
}
/* END main */
/*!
** @}
*/
This diff is collapsed.
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