mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-19 21:11:57 -04:00
RL78 GCC: Save and restore all register banks.
This commit is contained in:
parent
3b9d0819c9
commit
3b1ff85222
|
@ -71,7 +71,7 @@
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_mdata"/>
|
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_mdata"/>
|
||||||
</sections>
|
</sections>
|
||||||
<sections name=".data_original" isKeep="true">
|
<sections name=".data_original" isNoLoad="true" isKeep="true">
|
||||||
<sectionAddress xsi:type="com.renesas.linkersection.model:FixedAddress" fixedAddress="1023744"/>
|
<sectionAddress xsi:type="com.renesas.linkersection.model:FixedAddress" fixedAddress="1023744"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_data_original"/>
|
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_data_original"/>
|
||||||
|
@ -79,7 +79,6 @@
|
||||||
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data_original.*"/>
|
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data_original.*"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_edata_original"/>
|
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_edata_original"/>
|
||||||
<reservedMemAddress xsi:type="com.renesas.linkersection.model:ReferencedLabelAddress" label="//@sections.12/@contents.12"/>
|
|
||||||
</sections>
|
</sections>
|
||||||
<sections name="trace_buffer" isKeep="true">
|
<sections name="trace_buffer" isKeep="true">
|
||||||
<sectionAddress xsi:type="com.renesas.linkersection.model:FixedAddress" fixedAddress="1024768"/>
|
<sectionAddress xsi:type="com.renesas.linkersection.model:FixedAddress" fixedAddress="1024768"/>
|
||||||
|
@ -90,8 +89,9 @@
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_data"/>
|
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_data"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data"/>
|
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data.*"/>
|
<contents xsi:type="com.renesas.linkersection.model:WildCardExpression" specificSection="true" name=".data.*"/>
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_edata"/>
|
|
||||||
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
<contents xsi:type="com.renesas.linkersection.model:Keyword" text=". = ALIGN(2)"/>
|
||||||
|
<contents xsi:type="com.renesas.linkersection.model:Label" rhs="= .;" lhs="_edata"/>
|
||||||
|
<reservedMemAddress xsi:type="com.renesas.linkersection.model:ReferencedLabelAddress" label="//@sections.12/@contents.12"/>
|
||||||
</sections>
|
</sections>
|
||||||
<sections name=".bss">
|
<sections name=".bss">
|
||||||
<sectionAddress xsi:type="com.renesas.linkersection.model:ReferencedSectionAddress" referencedSection="//@sections.15"/>
|
<sectionAddress xsi:type="com.renesas.linkersection.model:ReferencedSectionAddress" referencedSection="//@sections.15"/>
|
||||||
|
|
|
@ -3,212 +3,6 @@
|
||||||
|
|
||||||
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||||
<cconfiguration id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394">
|
|
||||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394" moduleId="org.eclipse.cdt.core.settings" name="HardwareDebug">
|
|
||||||
<externalSettings/>
|
|
||||||
<extensions>
|
|
||||||
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.MakeErrorParser" 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 artifactExtension="mot" artifactName="RTOSDemo" buildArtefactType="com.renesas.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=com.renesas.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf *.lst *.lis *.lpp *.map" description="" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394" name="HardwareDebug" parent="com.renesas.cdt.RL78.configuration.hardwaredebug">
|
|
||||||
<folderInfo id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394." name="/" resourcePath="">
|
|
||||||
<toolChain id="com.renesas.cdt.RL78.toolChain.hardwaredebugConf.1486648127" name="KPIT GNURL78-ELF Toolchain" superClass="com.renesas.cdt.RL78.toolChain.hardwaredebugConf">
|
|
||||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF;org.eclipse.cdt.core.PE" id="com.renesas.cdt.rl78.hardwaredebug.win32.targetPlatform.458738982" osList="win32" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.targetPlatform"/>
|
|
||||||
<builder buildPath="${workspace_loc:/RTOSDemo/HardwareDebug}" id="com.renesas.cdt.rl78.hardwaredebug.win32.builder.Id.1815542768" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU Make Builder" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.builder.Id"/>
|
|
||||||
<tool command="rl78-elf-libgen" id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.libgen.Id.898204242" name="Library Generator" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.libgen.Id">
|
|
||||||
<option id="com.renesas.cdt.core.LibraryGenerator.option.stdio.1978567981" name="stdio.h : Performs input/oputput handling" superClass="com.renesas.cdt.core.LibraryGenerator.option.stdio" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.LibraryGenerator.option.stdlib.152368107" name="stdlib.h : Performs C program statndard processing such as storage area management" superClass="com.renesas.cdt.core.LibraryGenerator.option.stdlib" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.LibraryGenerator.option.string.596961681" name="string.h : Performs string comparison, copying " superClass="com.renesas.cdt.core.LibraryGenerator.option.string" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.LibraryGenerator.option.selectLibrary.652647554" name="Select library" superClass="com.renesas.cdt.core.LibraryGenerator.option.selectLibrary" value="Optimized" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.core.LibraryGenerator.option.libraryType.703164222" name="Library type" superClass="com.renesas.cdt.core.LibraryGenerator.option.libraryType" value="Project-Built" valueType="enumerated"/>
|
|
||||||
</tool>
|
|
||||||
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.compiler.Id.323331132" name="Compiler" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.compiler.Id">
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.1364542281" name="CPU Type" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.g14" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul.260959197" name="Multiplication code Generation Option" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul" value="None" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.includeFileDir.1067754383" name="Include file directories" superClass="com.renesas.cdt.core.Compiler.option.includeFileDir" valueType="includePath">
|
|
||||||
<listOptionValue builtIn="false" value=""${TCINSTALL}\rl78-elf\optlibinc""/>
|
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/Common-Demo-Tasks/include}""/>
|
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src}""/>
|
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/FreeRTOS_Source/include}""/>
|
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/FreeRTOS_Source/portable/GCC/RL78}""/>
|
|
||||||
</option>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.CPUSeries.880521657" name="Cpu Series" superClass="com.renesas.cdt.core.Compiler.option.CPUSeries" value="R5F10JBC" valueType="string"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning14.2112181183" name="Print extra warning messages(-Wextra)" superClass="com.renesas.cdt.core.Compiler.option.warning14" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.stdWarnings.1766930891" name="Standard Warnings" superClass="com.renesas.cdt.core.Compiler.option.stdWarnings" value="com.renesas.cdt.core.Compiler.option.stdWarnings.enableAll" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning1.1518994610" name="Issue Warning if an array subscript has type char(-Wchar-subscripts)" superClass="com.renesas.cdt.core.Compiler.option.warning1" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning2.180333158" name="Issue Warning if comment appears within comment(-Wcomment)" superClass="com.renesas.cdt.core.Compiler.option.warning2" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning3.658110954" name="Issue Warning if string functions format is incorrect(-Wformat)" superClass="com.renesas.cdt.core.Compiler.option.warning3" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning4.1235459335" name="Issue Warning if a function or parameter is implicitly declare(-Wimplicit)" superClass="com.renesas.cdt.core.Compiler.option.warning4" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning5.1569221265" name="Disable Warning about the use of #import(-Wno-import)" superClass="com.renesas.cdt.core.Compiler.option.warning5" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning6.769740812" name="Issue Warning if parantheses are omitted in certain contexts(-Wparentheses)" superClass="com.renesas.cdt.core.Compiler.option.warning6" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning7.1073639370" name="Issue Warning of possible return type problems(-Wreturn-type)" superClass="com.renesas.cdt.core.Compiler.option.warning7" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning8.1548061643" name="Issue Warning of possible switch statement problems(-Wswitch)" superClass="com.renesas.cdt.core.Compiler.option.warning8" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning9.1851919047" name="Issue Warning if any trigraphs are encountered(-Wtrigraphs)" superClass="com.renesas.cdt.core.Compiler.option.warning9" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning10.649453947" name="Issue Warning if a variable is unused aside from its declaration(-Wunused)" superClass="com.renesas.cdt.core.Compiler.option.warning10" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning11.1438339511" name="Issue Warning if an uninitialised automatic variable is used(-Wuninitialized)" superClass="com.renesas.cdt.core.Compiler.option.warning11" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning12.62902878" name="Issue Warning of member intialisation mismatch(-Wreorder)" superClass="com.renesas.cdt.core.Compiler.option.warning12" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.warning13.1346187712" name="Issue Warning of bad sign comparisions(-Wsign-compare)" superClass="com.renesas.cdt.core.Compiler.option.warning13" value="true" valueType="boolean"/>
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat.2111907264" name="Debug format" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat.dwarf" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel.474691448" name="Optimization level" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel.none" valueType="enumerated"/>
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.macroDefines.1975812623" name="Macro Defines" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.macroDefines" valueType="stringList">
|
|
||||||
<listOptionValue builtIn="false" value="YRDKRL78G14"/>
|
|
||||||
</option>
|
|
||||||
<option id="com.renesas.cdt.core.Compiler.option.includeSymbolTable.1341454572" name="Include Symbol Table(s)" superClass="com.renesas.cdt.core.Compiler.option.includeSymbolTable" value="true" valueType="boolean"/>
|
|
||||||
<inputType id="%Base.Compiler.C.InputType.Id.304532987" name="C Input" superClass="%Base.Compiler.C.InputType.Id"/>
|
|
||||||
</tool>
|
|
||||||
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.assembler.Id.1483562315" name="Assembler" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.assembler.Id">
|
|
||||||
<option id="com.renesas.cdt.core.Assembler.option.includeFileDirectories.1195749866" name="Include file directories" superClass="com.renesas.cdt.core.Assembler.option.includeFileDirectories" valueType="includePath">
|
|
||||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}\src""/>
|
|
||||||
</option>
|
|
||||||
<option id="com.renesas.cdt.core.Assembler.option.includeSymbolTable.139641641" name="Include Symbol Table(-as)" superClass="com.renesas.cdt.core.Assembler.option.includeSymbolTable" value="true" valueType="boolean"/>
|
|
||||||
<inputType id="%Base.Assembler.inputType.Id.1124641218" name="Assembler InputType" superClass="%Base.Assembler.inputType.Id"/>
|
|
||||||
</tool>
|
|
||||||
<tool command="rl78-elf-ld" commandLinePattern="${COMMAND} ${OUTPUT_FLAG}${OUTPUT_PREFIX} ${OUTPUT}${INPUTS} ${FLAGS}" id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.linker.Id.148124689" name="Linker" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.linker.Id">
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.970009502" name="Archive search directories" superClass="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories" valueType="stringList">
|
|
||||||
<listOptionValue builtIn="false" value=""${CONFIGDIR}""/>
|
|
||||||
<listOptionValue builtIn="false" value=""${TCINSTALL}\lib\gcc\rl78-elf\\${GCC_VERSION}""/>
|
|
||||||
</option>
|
|
||||||
<option id="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles.628448046" name="Archive (library) files" superClass="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles" valueType="stringList">
|
|
||||||
<listOptionValue builtIn="false" value="${ProjName}"/>
|
|
||||||
<listOptionValue builtIn="false" value="gcc"/>
|
|
||||||
</option>
|
|
||||||
<option id="com.renesas.cdt.core.Linker.option.userDefinedOptions.1480388571" name="User defined options" superClass="com.renesas.cdt.core.Linker.option.userDefinedOptions" valueType="stringList">
|
|
||||||
<listOptionValue builtIn="false" value="-e_PowerON_Reset"/>
|
|
||||||
</option>
|
|
||||||
<option command="-stats" id="com.renesas.cdt.core.Linker.option.misc8.1524197031" name="Compute and display statistics about the operation of the linker(-stats)" superClass="com.renesas.cdt.core.Linker.option.misc8" value="true" valueType="boolean"/>
|
|
||||||
</tool>
|
|
||||||
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.objcopy.Id.1332327082" name="Objcopy" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.objcopy.Id"/>
|
|
||||||
</toolChain>
|
|
||||||
</folderInfo>
|
|
||||||
<sourceEntries>
|
|
||||||
<entry excluding="src/RegTest.S" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
|
|
||||||
</sourceEntries>
|
|
||||||
</configuration>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="scannerConfiguration">
|
|
||||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
|
||||||
<profile id="com.iar.cdt.v850.scanner.IAR_V850_PerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="false" filePath=""/>
|
|
||||||
<parser enabled="false"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="com.iar.cdt.v850.toolchain.scannerInfoProvider1">
|
|
||||||
<runAction arguments="" command="" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="com.iar.cdt.rl78.scanner.IAR_RL78_PerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="false" filePath=""/>
|
|
||||||
<parser enabled="false"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="com.iar.cdt.rl78.toolchain.scannerInfoProviderRL78">
|
|
||||||
<runAction arguments="" command="" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="com.iar.cdt.rx.scanner.IAR_RX_PerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="false" filePath=""/>
|
|
||||||
<parser enabled="false"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="com.iar.cdt.rx.toolchain.scannerInfoProviderRX">
|
|
||||||
<runAction arguments="" command="" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="makefileGenerator">
|
|
||||||
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
|
||||||
<buildOutputProvider>
|
|
||||||
<openAction enabled="true" filePath=""/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</buildOutputProvider>
|
|
||||||
<scannerInfoProvider id="specsFile">
|
|
||||||
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
|
||||||
<parser enabled="true"/>
|
|
||||||
</scannerInfoProvider>
|
|
||||||
</profile>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
|
||||||
</cconfiguration>
|
|
||||||
<cconfiguration id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896">
|
<cconfiguration id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896">
|
||||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896" moduleId="org.eclipse.cdt.core.settings" name="YRDKRL78G14">
|
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896" moduleId="org.eclipse.cdt.core.settings" name="YRDKRL78G14">
|
||||||
<externalSettings/>
|
<externalSettings/>
|
||||||
|
@ -415,6 +209,212 @@
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
||||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||||
</cconfiguration>
|
</cconfiguration>
|
||||||
|
<cconfiguration id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896.848838140">
|
||||||
|
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896.848838140" moduleId="org.eclipse.cdt.core.settings" name="RSKRL78G1C">
|
||||||
|
<externalSettings/>
|
||||||
|
<extensions>
|
||||||
|
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||||
|
<extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||||
|
<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||||
|
<extension id="org.eclipse.cdt.core.MakeErrorParser" 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 artifactExtension="mot" artifactName="RTOSDemo" buildArtefactType="com.renesas.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=com.renesas.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf *.lst *.lis *.lpp *.map" description="" id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896.848838140" name="RSKRL78G1C" parent="com.renesas.cdt.RL78.configuration.hardwaredebug">
|
||||||
|
<folderInfo id="com.renesas.cdt.RL78.configuration.hardwaredebug.1462655394.864201896.848838140." name="/" resourcePath="">
|
||||||
|
<toolChain id="com.renesas.cdt.RL78.toolChain.hardwaredebugConf.1539056525" name="KPIT GNURL78-ELF Toolchain" superClass="com.renesas.cdt.RL78.toolChain.hardwaredebugConf">
|
||||||
|
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF;org.eclipse.cdt.core.PE" id="com.renesas.cdt.rl78.hardwaredebug.win32.targetPlatform.1930314102" osList="win32" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.targetPlatform"/>
|
||||||
|
<builder buildPath="${workspace_loc:/RTOSDemo/HardwareDebug}" id="com.renesas.cdt.rl78.hardwaredebug.win32.builder.Id.513359906" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="GNU Make Builder" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.builder.Id"/>
|
||||||
|
<tool command="rl78-elf-libgen" id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.libgen.Id.1268974285" name="Library Generator" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.libgen.Id">
|
||||||
|
<option id="com.renesas.cdt.core.LibraryGenerator.option.stdio.911793759" name="stdio.h : Performs input/oputput handling" superClass="com.renesas.cdt.core.LibraryGenerator.option.stdio" value="false" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.LibraryGenerator.option.stdlib.1355603265" name="stdlib.h : Performs C program statndard processing such as storage area management" superClass="com.renesas.cdt.core.LibraryGenerator.option.stdlib" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.LibraryGenerator.option.string.1375717436" name="string.h : Performs string comparison, copying " superClass="com.renesas.cdt.core.LibraryGenerator.option.string" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.LibraryGenerator.option.selectLibrary.2003767005" name="Select library" superClass="com.renesas.cdt.core.LibraryGenerator.option.selectLibrary" value="Optimized" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.core.LibraryGenerator.option.libraryType.1466545808" name="Library type" superClass="com.renesas.cdt.core.LibraryGenerator.option.libraryType" value="Project-Built" valueType="enumerated"/>
|
||||||
|
</tool>
|
||||||
|
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.compiler.Id.2123469861" name="Compiler" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.compiler.Id">
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.973510681" name="CPU Type" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.g1c" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul.876151860" name="Multiplication code Generation Option" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul" value="None" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.includeFileDir.709582364" name="Include file directories" superClass="com.renesas.cdt.core.Compiler.option.includeFileDir" valueType="includePath">
|
||||||
|
<listOptionValue builtIn="false" value=""${TCINSTALL}\rl78-elf\optlibinc""/>
|
||||||
|
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/Common-Demo-Tasks/include}""/>
|
||||||
|
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src}""/>
|
||||||
|
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/FreeRTOS_Source/include}""/>
|
||||||
|
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/src/FreeRTOS_Source/portable/GCC/RL78}""/>
|
||||||
|
</option>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.CPUSeries.1635355107" name="Cpu Series" superClass="com.renesas.cdt.core.Compiler.option.CPUSeries" value="R5F10JBC" valueType="string"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning14.718469333" name="Print extra warning messages(-Wextra)" superClass="com.renesas.cdt.core.Compiler.option.warning14" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.stdWarnings.1773056093" name="Standard Warnings" superClass="com.renesas.cdt.core.Compiler.option.stdWarnings" value="com.renesas.cdt.core.Compiler.option.stdWarnings.enableAll" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning1.409407684" name="Issue Warning if an array subscript has type char(-Wchar-subscripts)" superClass="com.renesas.cdt.core.Compiler.option.warning1" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning2.197154356" name="Issue Warning if comment appears within comment(-Wcomment)" superClass="com.renesas.cdt.core.Compiler.option.warning2" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning3.1784044334" name="Issue Warning if string functions format is incorrect(-Wformat)" superClass="com.renesas.cdt.core.Compiler.option.warning3" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning4.1225978557" name="Issue Warning if a function or parameter is implicitly declare(-Wimplicit)" superClass="com.renesas.cdt.core.Compiler.option.warning4" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning5.1962967676" name="Disable Warning about the use of #import(-Wno-import)" superClass="com.renesas.cdt.core.Compiler.option.warning5" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning6.248630929" name="Issue Warning if parantheses are omitted in certain contexts(-Wparentheses)" superClass="com.renesas.cdt.core.Compiler.option.warning6" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning7.1359720126" name="Issue Warning of possible return type problems(-Wreturn-type)" superClass="com.renesas.cdt.core.Compiler.option.warning7" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning8.110294476" name="Issue Warning of possible switch statement problems(-Wswitch)" superClass="com.renesas.cdt.core.Compiler.option.warning8" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning9.677978489" name="Issue Warning if any trigraphs are encountered(-Wtrigraphs)" superClass="com.renesas.cdt.core.Compiler.option.warning9" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning10.1887488640" name="Issue Warning if a variable is unused aside from its declaration(-Wunused)" superClass="com.renesas.cdt.core.Compiler.option.warning10" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning11.1812348470" name="Issue Warning if an uninitialised automatic variable is used(-Wuninitialized)" superClass="com.renesas.cdt.core.Compiler.option.warning11" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning12.803153981" name="Issue Warning of member intialisation mismatch(-Wreorder)" superClass="com.renesas.cdt.core.Compiler.option.warning12" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.warning13.738663367" name="Issue Warning of bad sign comparisions(-Wsign-compare)" superClass="com.renesas.cdt.core.Compiler.option.warning13" value="true" valueType="boolean"/>
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat.971374425" name="Debug format" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.debugFormat.dwarf" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel.2018542110" name="Optimization level" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel" value="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.optimizationLevel.none" valueType="enumerated"/>
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.macroDefines.1382612927" name="Macro Defines" superClass="com.renesas.cdt.rl78.HardwareDebug.Compiler.option.macroDefines" valueType="stringList">
|
||||||
|
<listOptionValue builtIn="false" value="RSKRL78G1C"/>
|
||||||
|
</option>
|
||||||
|
<option id="com.renesas.cdt.core.Compiler.option.includeSymbolTable.992185200" name="Include Symbol Table(s)" superClass="com.renesas.cdt.core.Compiler.option.includeSymbolTable" value="true" valueType="boolean"/>
|
||||||
|
<inputType id="%Base.Compiler.C.InputType.Id.1356266742" name="C Input" superClass="%Base.Compiler.C.InputType.Id"/>
|
||||||
|
</tool>
|
||||||
|
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.assembler.Id.870260982" name="Assembler" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.assembler.Id">
|
||||||
|
<option id="com.renesas.cdt.core.Assembler.option.includeFileDirectories.2084802267" name="Include file directories" superClass="com.renesas.cdt.core.Assembler.option.includeFileDirectories" valueType="includePath">
|
||||||
|
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}\src""/>
|
||||||
|
</option>
|
||||||
|
<option id="com.renesas.cdt.core.Assembler.option.includeSymbolTable.703108790" name="Include Symbol Table(-as)" superClass="com.renesas.cdt.core.Assembler.option.includeSymbolTable" value="true" valueType="boolean"/>
|
||||||
|
<inputType id="%Base.Assembler.inputType.Id.65149048" name="Assembler InputType" superClass="%Base.Assembler.inputType.Id"/>
|
||||||
|
</tool>
|
||||||
|
<tool command="rl78-elf-ld" commandLinePattern="${COMMAND} ${OUTPUT_FLAG}${OUTPUT_PREFIX} ${OUTPUT}${INPUTS} ${FLAGS}" id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.linker.Id.1025535221" name="Linker" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.linker.Id">
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.1960648199" name="Archive search directories" superClass="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories" valueType="stringList">
|
||||||
|
<listOptionValue builtIn="false" value=""${CONFIGDIR}""/>
|
||||||
|
<listOptionValue builtIn="false" value=""${TCINSTALL}\lib\gcc\rl78-elf\\${GCC_VERSION}""/>
|
||||||
|
</option>
|
||||||
|
<option id="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles.1335777265" name="Archive (library) files" superClass="com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles" valueType="stringList">
|
||||||
|
<listOptionValue builtIn="false" value="${ProjName}"/>
|
||||||
|
<listOptionValue builtIn="false" value="gcc"/>
|
||||||
|
</option>
|
||||||
|
<option id="com.renesas.cdt.core.Linker.option.userDefinedOptions.1800942722" name="User defined options" superClass="com.renesas.cdt.core.Linker.option.userDefinedOptions" valueType="stringList">
|
||||||
|
<listOptionValue builtIn="false" value="-e_PowerON_Reset"/>
|
||||||
|
</option>
|
||||||
|
<option command="-stats" id="com.renesas.cdt.core.Linker.option.misc8.661027224" name="Compute and display statistics about the operation of the linker(-stats)" superClass="com.renesas.cdt.core.Linker.option.misc8" value="true" valueType="boolean"/>
|
||||||
|
</tool>
|
||||||
|
<tool id="com.renesas.cdt.rl78.hardwaredebug.win32.tool.objcopy.Id.1504543797" name="Objcopy" superClass="com.renesas.cdt.rl78.hardwaredebug.win32.tool.objcopy.Id"/>
|
||||||
|
</toolChain>
|
||||||
|
</folderInfo>
|
||||||
|
<sourceEntries>
|
||||||
|
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
|
||||||
|
</sourceEntries>
|
||||||
|
</configuration>
|
||||||
|
</storageModule>
|
||||||
|
<storageModule moduleId="scannerConfiguration">
|
||||||
|
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
||||||
|
<profile id="com.iar.cdt.v850.scanner.IAR_V850_PerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="false" filePath=""/>
|
||||||
|
<parser enabled="false"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="com.iar.cdt.v850.toolchain.scannerInfoProvider1">
|
||||||
|
<runAction arguments="" command="" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="com.iar.cdt.rl78.scanner.IAR_RL78_PerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="false" filePath=""/>
|
||||||
|
<parser enabled="false"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="com.iar.cdt.rl78.toolchain.scannerInfoProviderRL78">
|
||||||
|
<runAction arguments="" command="" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="com.iar.cdt.rx.scanner.IAR_RX_PerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="false" filePath=""/>
|
||||||
|
<parser enabled="false"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="com.iar.cdt.rx.toolchain.scannerInfoProviderRX">
|
||||||
|
<runAction arguments="" command="" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="makefileGenerator">
|
||||||
|
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
|
||||||
|
<buildOutputProvider>
|
||||||
|
<openAction enabled="true" filePath=""/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</buildOutputProvider>
|
||||||
|
<scannerInfoProvider id="specsFile">
|
||||||
|
<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/>
|
||||||
|
<parser enabled="true"/>
|
||||||
|
</scannerInfoProvider>
|
||||||
|
</profile>
|
||||||
|
</storageModule>
|
||||||
|
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||||
|
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
|
||||||
|
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||||
|
</cconfiguration>
|
||||||
</storageModule>
|
</storageModule>
|
||||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||||
<project id="RTOSDemo.com.renesas.cdt.RL78.projectType.1275970009" name="GNURL78" projectType="com.renesas.cdt.RL78.projectType"/>
|
<project id="RTOSDemo.com.renesas.cdt.RL78.projectType.1275970009" name="GNURL78" projectType="com.renesas.cdt.RL78.projectType"/>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#Mon Mar 04 17:13:11 GMT 2013
|
#Wed Mar 06 15:45:34 GMT 2013
|
||||||
Library\ Generator\ Command=rl78-elf-libgen
|
Library\ Generator\ Command=rl78-elf-libgen
|
||||||
com.renesas.cdt.core.Assembler.option.includeFileDirectories="${workspace_loc\:/${ProjName}}\\src";
|
com.renesas.cdt.core.Assembler.option.includeFileDirectories="${workspace_loc\:/${ProjName}}\\src";
|
||||||
com.renesas.cdt.core.Compiler.option.includeFileDir.1067754383="${TCINSTALL}\\rl78-elf\\optlibinc";
|
com.renesas.cdt.core.Compiler.option.includeFileDir.1067754383="${TCINSTALL}\\rl78-elf\\optlibinc";
|
||||||
|
@ -14,6 +14,7 @@ com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType=RL78 - G1C
|
||||||
com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.1364542281=RL78 - G1C
|
com.renesas.cdt.rl78.HardwareDebug.Compiler.option.cpuType.1364542281=RL78 - G1C
|
||||||
com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul=None
|
com.renesas.cdt.rl78.HardwareDebug.Compiler.option.mmul=None
|
||||||
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles=${ProjName};gcc;
|
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveLibraryFiles=${ProjName};gcc;
|
||||||
|
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.1960648199="${CONFIGDIR}";"${TCINSTALL}\\lib\\gcc\\rl78-elf\\\\${GCC_VERSION}";
|
||||||
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.970009502="${CONFIGDIR}";"${TCINSTALL}\\lib\\gcc\\rl78-elf\\\\${GCC_VERSION}";
|
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.970009502="${CONFIGDIR}";"${TCINSTALL}\\lib\\gcc\\rl78-elf\\\\${GCC_VERSION}";
|
||||||
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.984802356="${CONFIGDIR}";"${TCINSTALL}\\lib\\gcc\\rl78-elf\\\\${GCC_VERSION}";
|
com.renesas.cdt.rl78.HardwareDebug.Linker.option.archiveSearchDirectories.984802356="${CONFIGDIR}";"${TCINSTALL}\\lib\\gcc\\rl78-elf\\\\${GCC_VERSION}";
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
|
|
96
FreeRTOS/Demo/RL78_E2Studio_GCC/RSKRL78G1C.launch
Normal file
96
FreeRTOS/Demo/RL78_E2Studio_GCC/RSKRL78G1C.launch
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<launchConfiguration type="com.renesas.cdt.launch.dsf.gdbremote.launchConfigurationType">
|
||||||
|
<intAttribute key="com.renesas.cdt.core.admPortNumber" value="61236"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.initCommands" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.ipAddress" value="localhost"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.jtagDevice" value="E1 (RL78)"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.loadImage" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.optionInitCommands" value=""/>
|
||||||
|
<intAttribute key="com.renesas.cdt.core.portNumber" value="61234"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.runCommands" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.serverParam" value="-g E1 -l 0 -t R5F10JGC -p 61234 -d 61236 -umFreq= 0 -usFreq= 0 -umClock= 1 -w 0 -usupplyVoltage= 1 -ucommMethod= 0 -usecurityID= 00000000000000000000 -upermitFlash= 1 -uuseWideVoltageMode= 1 -ueraseRom= 1 -uuseOnChipDebug= 0 -uuseUserOptionByte= 0 -ustopTimerEmu= 0 -ustopSerialEmu= 0 -umaskInternalResetSignal= 0 -umaskTargetResetSignal= 0 -n 0 -uverifyOnWritingMemory= 1"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.setResume" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.setStopAt" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.startServer" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.stopAt" value="main"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.targetDevice" value="R5F10JGC"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.useRemoteTarget" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.verboseMode" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.launch.dsf.IO_MAP" value="${eclipse_home}..\internal\IoFiles\RL78\R5F10JGC.sfrx"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.launch.dsf.USE_DEFAULT_IO_MAP" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.allow.clock.source.internal" value="false"/>
|
||||||
|
<intAttribute key="com.renesas.hardwaredebug.e1.clock_source" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.connection.mode" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.e1_pwr" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.execute.program" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.external_memory" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.fine.baud.rate" value="2.00"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.flash_overwrite_blocks" value=""/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.hw_break" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.id_code" value="FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.inputclock" value="12.0000"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.jtag.clock.freq" value="16.5"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.jtag.or.fine" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.le" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.mode" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.mode_pin" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.prog_rewrite_dflash" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.prog_rewrite_irom" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.supply.voltage" value="3.3V"/>
|
||||||
|
<intAttribute key="com.renesas.hardwaredebug.e1.work_ram_start" value="4096"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.communication.method" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.e1_pwr" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.eraseFlash" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.hw_break" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.le" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.main.clock.freq" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.mask.internal.reset.signal" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.mask.target.reset.signal" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.monitor.clock" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.permit.flash.programming" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.security.id" value="00000000000000000000"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.stopSerialEmu" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.stopTimerEmu" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.sub.clock.freq" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.supply.voltage" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.use.wide.voltage.mode" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.verify.on.writing.to.memory" value="true"/>
|
||||||
|
<intAttribute key="org.eclipse.cdt.debug.gdbjtag.core.delay" value="3"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doHalt" value="true"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doReset" value="false"/>
|
||||||
|
<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.initCommands" value=""/>
|
||||||
|
<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=""/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.runCommands" value=""/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setPcRegister" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setResume" value="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"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="${eclipse_home}../DebugComp/rl78-elf-gdb"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.dsf.gdb.NON_STOP" value="true"/>
|
||||||
|
<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN_SYMBOL" value="main"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="RSKRL78G1C/RTOSDemo.x"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="RTOSDemo"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value=""/>
|
||||||
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||||
|
<listEntry value="/RTOSDemo"/>
|
||||||
|
</listAttribute>
|
||||||
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||||
|
<listEntry value="4"/>
|
||||||
|
</listAttribute>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.core.capture_output" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.ui.ATTR_CONSOLE_OUTPUT_ON" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
|
||||||
|
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <memoryBlockExpressionList context="reserved-for-future-use"/> "/>
|
||||||
|
</launchConfiguration>
|
96
FreeRTOS/Demo/RL78_E2Studio_GCC/YRDKRL78G14.launch
Normal file
96
FreeRTOS/Demo/RL78_E2Studio_GCC/YRDKRL78G14.launch
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<launchConfiguration type="com.renesas.cdt.launch.dsf.gdbremote.launchConfigurationType">
|
||||||
|
<intAttribute key="com.renesas.cdt.core.admPortNumber" value="61236"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.initCommands" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.ipAddress" value="localhost"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.jtagDevice" value="E1 (RL78)"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.loadImage" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.optionInitCommands" value=""/>
|
||||||
|
<intAttribute key="com.renesas.cdt.core.portNumber" value="61234"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.runCommands" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.serverParam" value="-g E1 -l 0 -t R5F104PJ -p 61234 -d 61236 -umFreq= 0 -usFreq= 0 -umClock= 1 -w 0 -usupplyVoltage= 1 -ucommMethod= 0 -usecurityID= 00000000000000000000 -upermitFlash= 1 -uuseWideVoltageMode= 1 -ueraseRom= 1 -uuseOnChipDebug= 0 -uuseUserOptionByte= 0 -ustopTimerEmu= 0 -ustopSerialEmu= 0 -umaskInternalResetSignal= 0 -umaskTargetResetSignal= 0 -n 0 -uverifyOnWritingMemory= 1"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.setResume" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.setStopAt" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.startServer" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.stopAt" value="main"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.core.targetDevice" value="R5F104PJ"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.useRemoteTarget" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.core.verboseMode" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.cdt.launch.dsf.IO_MAP" value="${eclipse_home}..\internal\IoFiles\RL78\R5F104PJ.sfrx"/>
|
||||||
|
<booleanAttribute key="com.renesas.cdt.launch.dsf.USE_DEFAULT_IO_MAP" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.allow.clock.source.internal" value="false"/>
|
||||||
|
<intAttribute key="com.renesas.hardwaredebug.e1.clock_source" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.connection.mode" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.e1_pwr" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.execute.program" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.external_memory" value=""/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.fine.baud.rate" value="2.00"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.flash_overwrite_blocks" value=""/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.hw_break" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.id_code" value="FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.inputclock" value="12.0000"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.jtag.clock.freq" value="16.5"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.jtag.or.fine" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.le" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.mode" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.mode_pin" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.prog_rewrite_dflash" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1.prog_rewrite_irom" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1.supply.voltage" value="3.3V"/>
|
||||||
|
<intAttribute key="com.renesas.hardwaredebug.e1.work_ram_start" value="4096"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.communication.method" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.e1_pwr" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.eraseFlash" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.hw_break" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.le" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.main.clock.freq" value="0"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.mask.internal.reset.signal" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.mask.target.reset.signal" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.monitor.clock" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.permit.flash.programming" value="true"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.security.id" value="00000000000000000000"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.stopSerialEmu" value="false"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.stopTimerEmu" value="false"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.sub.clock.freq" value="0"/>
|
||||||
|
<stringAttribute key="com.renesas.hardwaredebug.e1rl78.supply.voltage" value="1"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.use.wide.voltage.mode" value="true"/>
|
||||||
|
<booleanAttribute key="com.renesas.hardwaredebug.e1rl78.verify.on.writing.to.memory" value="true"/>
|
||||||
|
<intAttribute key="org.eclipse.cdt.debug.gdbjtag.core.delay" value="3"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doHalt" value="true"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.doReset" value="false"/>
|
||||||
|
<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.initCommands" value=""/>
|
||||||
|
<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=""/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.debug.gdbjtag.core.runCommands" value=""/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setPcRegister" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.debug.gdbjtag.core.setResume" value="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"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.dsf.gdb.DEBUG_NAME" value="${eclipse_home}../DebugComp/rl78-elf-gdb"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.dsf.gdb.NON_STOP" value="true"/>
|
||||||
|
<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
|
||||||
|
<booleanAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN" value="true"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_STOP_AT_MAIN_SYMBOL" value="main"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="YRDKRL78G14/RTOSDemo.x"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_ATTR" value="RTOSDemo"/>
|
||||||
|
<stringAttribute key="org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR" value=""/>
|
||||||
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||||
|
<listEntry value="/RTOSDemo"/>
|
||||||
|
</listAttribute>
|
||||||
|
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||||
|
<listEntry value="4"/>
|
||||||
|
</listAttribute>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.core.capture_output" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.ui.ATTR_CONSOLE_OUTPUT_ON" value="false"/>
|
||||||
|
<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
|
||||||
|
<stringAttribute key="org.eclipse.dsf.launch.MEMORY_BLOCKS" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <memoryBlockExpressionList context="reserved-for-future-use"/> "/>
|
||||||
|
</launchConfiguration>
|
|
@ -56,48 +56,48 @@
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
license and Real Time Engineers Ltd. contact details.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
fully thread aware and reentrant UDP/IP stack.
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
Integrity Systems, who sell the code with commercial support,
|
Integrity Systems, who sell the code with commercial support,
|
||||||
indemnification and middleware, under the OpenRTOS brand.
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The first test creates three tasks - two counter tasks (one continuous count
|
* The first test creates three tasks - two counter tasks (one continuous count
|
||||||
* and one limited count) and one controller. A "count" variable is shared
|
* and one limited count) and one controller. A "count" variable is shared
|
||||||
* between all three tasks. The two counter tasks should never be in a "ready"
|
* between all three tasks. The two counter tasks should never be in a "ready"
|
||||||
* state at the same time. The controller task runs at the same priority as
|
* state at the same time. The controller task runs at the same priority as
|
||||||
* the continuous count task, and at a lower priority than the limited count
|
* the continuous count task, and at a lower priority than the limited count
|
||||||
* task.
|
* task.
|
||||||
*
|
*
|
||||||
* One counter task loops indefinitely, incrementing the shared count variable
|
* One counter task loops indefinitely, incrementing the shared count variable
|
||||||
* on each iteration. To ensure it has exclusive access to the variable it
|
* on each iteration. To ensure it has exclusive access to the variable it
|
||||||
* raises it's priority above that of the controller task before each
|
* raises it's priority above that of the controller task before each
|
||||||
* increment, lowering it again to it's original priority before starting the
|
* increment, lowering it again to it's original priority before starting the
|
||||||
* next iteration.
|
* next iteration.
|
||||||
*
|
*
|
||||||
* The other counter task increments the shared count variable on each
|
* The other counter task increments the shared count variable on each
|
||||||
* iteration of it's loop until the count has reached a limit of 0xff - at
|
* iteration of it's loop until the count has reached a limit of 0xff - at
|
||||||
* which point it suspends itself. It will not start a new loop until the
|
* which point it suspends itself. It will not start a new loop until the
|
||||||
* controller task has made it "ready" again by calling vTaskResume ().
|
* controller task has made it "ready" again by calling vTaskResume ().
|
||||||
* This second counter task operates at a higher priority than controller
|
* This second counter task operates at a higher priority than controller
|
||||||
* task so does not need to worry about mutual exclusion of the counter
|
* task so does not need to worry about mutual exclusion of the counter
|
||||||
* variable.
|
* variable.
|
||||||
*
|
*
|
||||||
* The controller task is in two sections. The first section controls and
|
* The controller task is in two sections. The first section controls and
|
||||||
* monitors the continuous count task. When this section is operational the
|
* monitors the continuous count task. When this section is operational the
|
||||||
* limited count task is suspended. Likewise, the second section controls
|
* limited count task is suspended. Likewise, the second section controls
|
||||||
* and monitors the limited count task. When this section is operational the
|
* and monitors the limited count task. When this section is operational the
|
||||||
* continuous count task is suspended.
|
* continuous count task is suspended.
|
||||||
*
|
*
|
||||||
* In the first section the controller task first takes a copy of the shared
|
* In the first section the controller task first takes a copy of the shared
|
||||||
|
@ -107,11 +107,11 @@
|
||||||
* the continuous count task will execute and increment the shared variable.
|
* the continuous count task will execute and increment the shared variable.
|
||||||
* When the controller task wakes it checks that the continuous count task
|
* When the controller task wakes it checks that the continuous count task
|
||||||
* has executed by comparing the copy of the shared variable with its current
|
* has executed by comparing the copy of the shared variable with its current
|
||||||
* value. This time, to ensure mutual exclusion, the scheduler itself is
|
* value. This time, to ensure mutual exclusion, the scheduler itself is
|
||||||
* suspended with a call to vTaskSuspendAll (). This is for demonstration
|
* suspended with a call to vTaskSuspendAll (). This is for demonstration
|
||||||
* purposes only and is not a recommended technique due to its inefficiency.
|
* purposes only and is not a recommended technique due to its inefficiency.
|
||||||
*
|
*
|
||||||
* After a fixed number of iterations the controller task suspends the
|
* After a fixed number of iterations the controller task suspends the
|
||||||
* continuous count task, and moves on to its second section.
|
* continuous count task, and moves on to its second section.
|
||||||
*
|
*
|
||||||
* At the start of the second section the shared variable is cleared to zero.
|
* At the start of the second section the shared variable is cleared to zero.
|
||||||
|
@ -123,7 +123,7 @@
|
||||||
* a check on the shared variable to ensure everything is as expected.
|
* a check on the shared variable to ensure everything is as expected.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* The second test consists of a couple of very simple tasks that post onto a
|
* The second test consists of a couple of very simple tasks that post onto a
|
||||||
* queue while the scheduler is suspended. This test was added to test parts
|
* queue while the scheduler is suspended. This test was added to test parts
|
||||||
* of the scheduler not exercised by the first test.
|
* of the scheduler not exercised by the first test.
|
||||||
*
|
*
|
||||||
|
@ -165,7 +165,7 @@ static portTASK_FUNCTION_PROTO( vQueueSendWhenSuspendedTask, pvParameters );
|
||||||
to the controller task to prevent them having to be file scope. */
|
to the controller task to prevent them having to be file scope. */
|
||||||
static xTaskHandle xContinousIncrementHandle, xLimitedIncrementHandle;
|
static xTaskHandle xContinousIncrementHandle, xLimitedIncrementHandle;
|
||||||
|
|
||||||
/* The shared counter variable. This is passed in as a parameter to the two
|
/* The shared counter variable. This is passed in as a parameter to the two
|
||||||
counter variables for demonstration purposes. */
|
counter variables for demonstration purposes. */
|
||||||
static unsigned long ulCounter;
|
static unsigned long ulCounter;
|
||||||
|
|
||||||
|
@ -178,7 +178,7 @@ static volatile portBASE_TYPE xSuspendedQueueSendError = pdFALSE;
|
||||||
static volatile portBASE_TYPE xSuspendedQueueReceiveError = pdFALSE;
|
static volatile portBASE_TYPE xSuspendedQueueReceiveError = pdFALSE;
|
||||||
|
|
||||||
/* Queue used by the second test. */
|
/* Queue used by the second test. */
|
||||||
xQueueHandle xSuspendedTestQueue;
|
static xQueueHandle xSuspendedTestQueue;
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
|
@ -190,10 +190,10 @@ void vStartDynamicPriorityTasks( void )
|
||||||
xSuspendedTestQueue = xQueueCreate( priSUSPENDED_QUEUE_LENGTH, sizeof( unsigned long ) );
|
xSuspendedTestQueue = xQueueCreate( priSUSPENDED_QUEUE_LENGTH, sizeof( unsigned long ) );
|
||||||
|
|
||||||
/* vQueueAddToRegistry() adds the queue to the queue registry, if one is
|
/* vQueueAddToRegistry() adds the queue to the queue registry, if one is
|
||||||
in use. The queue registry is provided as a means for kernel aware
|
in use. The queue registry is provided as a means for kernel aware
|
||||||
debuggers to locate queues and has no purpose if a kernel aware debugger
|
debuggers to locate queues and has no purpose if a kernel aware debugger
|
||||||
is not being used. The call to vQueueAddToRegistry() will be removed
|
is not being used. The call to vQueueAddToRegistry() will be removed
|
||||||
by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is
|
by the pre-processor if configQUEUE_REGISTRY_SIZE is not defined or is
|
||||||
defined to be less than 1. */
|
defined to be less than 1. */
|
||||||
vQueueAddToRegistry( xSuspendedTestQueue, ( signed char * ) "Suspended_Test_Queue" );
|
vQueueAddToRegistry( xSuspendedTestQueue, ( signed char * ) "Suspended_Test_Queue" );
|
||||||
|
|
||||||
|
@ -207,7 +207,7 @@ void vStartDynamicPriorityTasks( void )
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Just loops around incrementing the shared variable until the limit has been
|
* Just loops around incrementing the shared variable until the limit has been
|
||||||
* reached. Once the limit has been reached it suspends itself.
|
* reached. Once the limit has been reached it suspends itself.
|
||||||
*/
|
*/
|
||||||
static portTASK_FUNCTION( vLimitedIncrementTask, pvParameters )
|
static portTASK_FUNCTION( vLimitedIncrementTask, pvParameters )
|
||||||
{
|
{
|
||||||
|
@ -224,12 +224,12 @@ unsigned long *pulCounter;
|
||||||
for( ;; )
|
for( ;; )
|
||||||
{
|
{
|
||||||
/* Just count up to a value then suspend. */
|
/* Just count up to a value then suspend. */
|
||||||
( *pulCounter )++;
|
( *pulCounter )++;
|
||||||
|
|
||||||
if( *pulCounter >= priMAX_COUNT )
|
if( *pulCounter >= priMAX_COUNT )
|
||||||
{
|
{
|
||||||
vTaskSuspend( NULL );
|
vTaskSuspend( NULL );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
@ -247,7 +247,7 @@ unsigned portBASE_TYPE uxOurPriority;
|
||||||
the task. */
|
the task. */
|
||||||
pulCounter = ( unsigned long * ) pvParameters;
|
pulCounter = ( unsigned long * ) pvParameters;
|
||||||
|
|
||||||
/* Query our priority so we can raise it when exclusive access to the
|
/* Query our priority so we can raise it when exclusive access to the
|
||||||
shared variable is required. */
|
shared variable is required. */
|
||||||
uxOurPriority = uxTaskPriorityGet( NULL );
|
uxOurPriority = uxTaskPriorityGet( NULL );
|
||||||
|
|
||||||
|
@ -256,7 +256,7 @@ unsigned portBASE_TYPE uxOurPriority;
|
||||||
/* Raise our priority above the controller task to ensure a context
|
/* Raise our priority above the controller task to ensure a context
|
||||||
switch does not occur while we are accessing this variable. */
|
switch does not occur while we are accessing this variable. */
|
||||||
vTaskPrioritySet( NULL, uxOurPriority + 1 );
|
vTaskPrioritySet( NULL, uxOurPriority + 1 );
|
||||||
( *pulCounter )++;
|
( *pulCounter )++;
|
||||||
vTaskPrioritySet( NULL, uxOurPriority );
|
vTaskPrioritySet( NULL, uxOurPriority );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -289,11 +289,11 @@ short sError = pdFALSE;
|
||||||
vTaskSuspend( xContinousIncrementHandle );
|
vTaskSuspend( xContinousIncrementHandle );
|
||||||
ulLastCounter = ulCounter;
|
ulLastCounter = ulCounter;
|
||||||
vTaskResume( xContinousIncrementHandle );
|
vTaskResume( xContinousIncrementHandle );
|
||||||
|
|
||||||
/* Now delay to ensure the other task has processor time. */
|
/* Now delay to ensure the other task has processor time. */
|
||||||
vTaskDelay( priSLEEP_TIME );
|
vTaskDelay( priSLEEP_TIME );
|
||||||
|
|
||||||
/* Check the shared variable again. This time to ensure mutual
|
/* Check the shared variable again. This time to ensure mutual
|
||||||
exclusion the whole scheduler will be locked. This is just for
|
exclusion the whole scheduler will be locked. This is just for
|
||||||
demo purposes! */
|
demo purposes! */
|
||||||
vTaskSuspendAll();
|
vTaskSuspendAll();
|
||||||
|
@ -380,7 +380,7 @@ portBASE_TYPE xGotValue;
|
||||||
{
|
{
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
/* Suspending the scheduler here is fairly pointless and
|
/* Suspending the scheduler here is fairly pointless and
|
||||||
undesirable for a normal application. It is done here purely
|
undesirable for a normal application. It is done here purely
|
||||||
to test the scheduler. The inner xTaskResumeAll() should
|
to test the scheduler. The inner xTaskResumeAll() should
|
||||||
never return pdTRUE as the scheduler is still locked by the
|
never return pdTRUE as the scheduler is still locked by the
|
||||||
|
@ -419,7 +419,7 @@ portBASE_TYPE xGotValue;
|
||||||
/* Called to check that all the created tasks are still running without error. */
|
/* Called to check that all the created tasks are still running without error. */
|
||||||
portBASE_TYPE xAreDynamicPriorityTasksStillRunning( void )
|
portBASE_TYPE xAreDynamicPriorityTasksStillRunning( void )
|
||||||
{
|
{
|
||||||
/* Keep a history of the check variables so we know if it has been incremented
|
/* Keep a history of the check variables so we know if it has been incremented
|
||||||
since the last call. */
|
since the last call. */
|
||||||
static unsigned short usLastTaskCheck = ( unsigned short ) 0;
|
static unsigned short usLastTaskCheck = ( unsigned short ) 0;
|
||||||
portBASE_TYPE xReturn = pdTRUE;
|
portBASE_TYPE xReturn = pdTRUE;
|
||||||
|
|
|
@ -91,7 +91,7 @@
|
||||||
#define configTICK_RATE_HZ ( ( unsigned short ) 1000 )
|
#define configTICK_RATE_HZ ( ( unsigned short ) 1000 )
|
||||||
#define configCPU_CLOCK_HZ ( ( unsigned long ) 32000000 ) /* Using the internal high speed clock */
|
#define configCPU_CLOCK_HZ ( ( unsigned long ) 32000000 ) /* Using the internal high speed clock */
|
||||||
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 4 )
|
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 4 )
|
||||||
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 100 )
|
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 90 )
|
||||||
#define configMAX_TASK_NAME_LEN ( 10 )
|
#define configMAX_TASK_NAME_LEN ( 10 )
|
||||||
#define configUSE_TRACE_FACILITY 0
|
#define configUSE_TRACE_FACILITY 0
|
||||||
#define configUSE_16_BIT_TICKS 1
|
#define configUSE_16_BIT_TICKS 1
|
||||||
|
@ -101,7 +101,7 @@
|
||||||
#define configUSE_MUTEXES 1
|
#define configUSE_MUTEXES 1
|
||||||
|
|
||||||
/* Hook function definitions. */
|
/* Hook function definitions. */
|
||||||
#define configUSE_IDLE_HOOK 1
|
#define configUSE_IDLE_HOOK 0
|
||||||
#define configUSE_TICK_HOOK 0
|
#define configUSE_TICK_HOOK 0
|
||||||
#define configUSE_MALLOC_FAILED_HOOK 1
|
#define configUSE_MALLOC_FAILED_HOOK 1
|
||||||
|
|
||||||
|
@ -129,10 +129,6 @@ to exclude the API function. */
|
||||||
|
|
||||||
#define configASSERT( x ) if( ( x ) == 0 ) vAssertCalled()
|
#define configASSERT( x ) if( ( x ) == 0 ) vAssertCalled()
|
||||||
|
|
||||||
#define __DATA_MODEL_FAR__ 0
|
|
||||||
#define __DATA_MODEL_NEAR__ 1
|
|
||||||
#define __DATA_MODEL__ __DATA_MODEL_FAR__
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* FREERTOS_CONFIG_H */
|
#endif /* FREERTOS_CONFIG_H */
|
||||||
|
|
||||||
|
|
|
@ -72,8 +72,6 @@
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*_RB_ #include "FreeRTOSConfig.h" */
|
|
||||||
|
|
||||||
/* Variables used by scheduler */
|
/* Variables used by scheduler */
|
||||||
.extern _pxCurrentTCB
|
.extern _pxCurrentTCB
|
||||||
.extern _usCriticalNesting
|
.extern _usCriticalNesting
|
||||||
|
@ -86,32 +84,47 @@
|
||||||
*/
|
*/
|
||||||
.macro portSAVE_CONTEXT
|
.macro portSAVE_CONTEXT
|
||||||
|
|
||||||
|
SEL RB0
|
||||||
|
|
||||||
/* Save AX Register to stack. */
|
/* Save AX Register to stack. */
|
||||||
PUSH AX
|
PUSH AX
|
||||||
PUSH HL
|
PUSH HL
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
|
||||||
/* Save CS register. */
|
/* Save CS register. */
|
||||||
MOV A, CS
|
MOV A, CS
|
||||||
XCH A, X
|
XCH A, X
|
||||||
/* Save ES register. */
|
/* Save ES register. */
|
||||||
MOV A, ES
|
MOV A, ES
|
||||||
PUSH AX
|
PUSH AX
|
||||||
#else
|
/* Save the remaining general purpose registers from bank 0. */
|
||||||
/* Save CS register. */
|
PUSH DE
|
||||||
MOV A, CS
|
PUSH BC
|
||||||
PUSH AX
|
/* Save the other register banks - only necessary in the GCC port. */
|
||||||
#endif
|
SEL RB1
|
||||||
/* Save the remaining general purpose registers. */
|
PUSH AX
|
||||||
PUSH DE
|
PUSH BC
|
||||||
PUSH BC
|
PUSH DE
|
||||||
|
PUSH HL
|
||||||
|
SEL RB2
|
||||||
|
PUSH AX
|
||||||
|
PUSH BC
|
||||||
|
PUSH DE
|
||||||
|
PUSH HL
|
||||||
|
SEL RB3
|
||||||
|
PUSH AX
|
||||||
|
PUSH BC
|
||||||
|
PUSH DE
|
||||||
|
PUSH HL
|
||||||
|
SEL RB0
|
||||||
/* Save the usCriticalNesting value. */
|
/* Save the usCriticalNesting value. */
|
||||||
MOVW AX, !_usCriticalNesting
|
MOVW AX, !_usCriticalNesting
|
||||||
PUSH AX
|
PUSH AX
|
||||||
/* Save the Stack pointer. */
|
/* Save the Stack pointer. */
|
||||||
MOVW AX, !_pxCurrentTCB
|
MOVW AX, !_pxCurrentTCB
|
||||||
MOVW HL, AX
|
MOVW HL, AX
|
||||||
MOVW AX, SP
|
MOVW AX, SP
|
||||||
MOVW [HL], AX
|
MOVW [HL], AX
|
||||||
|
/* Switch stack pointers. */
|
||||||
|
movw sp,#_stack /* Set stack pointer */
|
||||||
|
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
@ -123,33 +136,46 @@
|
||||||
* of the selected task from the task stack
|
* of the selected task from the task stack
|
||||||
*/
|
*/
|
||||||
.macro portRESTORE_CONTEXT MACRO
|
.macro portRESTORE_CONTEXT MACRO
|
||||||
|
SEL RB0
|
||||||
/* Restore the Stack pointer. */
|
/* Restore the Stack pointer. */
|
||||||
MOVW AX, !_pxCurrentTCB
|
MOVW AX, !_pxCurrentTCB
|
||||||
MOVW HL, AX
|
MOVW HL, AX
|
||||||
MOVW AX, [HL]
|
MOVW AX, [HL]
|
||||||
MOVW SP, AX
|
MOVW SP, AX
|
||||||
/* Restore usCriticalNesting value. */
|
/* Restore usCriticalNesting value. */
|
||||||
POP AX
|
POP AX
|
||||||
MOVW !_usCriticalNesting, AX
|
MOVW !_usCriticalNesting, AX
|
||||||
|
/* Restore the alternative register banks - only necessary in the GCC
|
||||||
|
port. */
|
||||||
|
SEL RB3
|
||||||
|
POP HL
|
||||||
|
POP DE
|
||||||
|
POP BC
|
||||||
|
POP AX
|
||||||
|
SEL RB2
|
||||||
|
POP HL
|
||||||
|
POP DE
|
||||||
|
POP BC
|
||||||
|
POP AX
|
||||||
|
SEL RB1
|
||||||
|
POP HL
|
||||||
|
POP DE
|
||||||
|
POP BC
|
||||||
|
POP AX
|
||||||
|
SEL RB0
|
||||||
/* Restore the necessary general purpose registers. */
|
/* Restore the necessary general purpose registers. */
|
||||||
POP BC
|
POP BC
|
||||||
POP DE
|
POP DE
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
|
||||||
/* Restore the ES register. */
|
/* Restore the ES register. */
|
||||||
POP AX
|
POP AX
|
||||||
MOV ES, A
|
MOV ES, A
|
||||||
/* Restore the CS register. */
|
/* Restore the CS register. */
|
||||||
XCH A, X
|
XCH A, X
|
||||||
MOV CS, A
|
MOV CS, A
|
||||||
#else
|
|
||||||
POP AX
|
|
||||||
/* Restore the CS register. */
|
|
||||||
MOV CS, A
|
|
||||||
#endif
|
|
||||||
/* Restore general purpose register HL. */
|
/* Restore general purpose register HL. */
|
||||||
POP HL
|
POP HL
|
||||||
/* Restore AX. */
|
/* Restore AX. */
|
||||||
POP AX
|
POP AX
|
||||||
|
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@ interrupts don't accidentally become enabled before the scheduler is started. */
|
||||||
#define portINITIAL_CRITICAL_NESTING ( ( unsigned short ) 10 )
|
#define portINITIAL_CRITICAL_NESTING ( ( unsigned short ) 10 )
|
||||||
|
|
||||||
/* Initial PSW value allocated to a newly created task.
|
/* Initial PSW value allocated to a newly created task.
|
||||||
* 1100011000000000
|
* 11000110
|
||||||
* ||||||||-------------- Fill byte
|
* ||||||||-------------- Fill byte
|
||||||
* |||||||--------------- Carry Flag cleared
|
* |||||||--------------- Carry Flag cleared
|
||||||
* |||||----------------- In-service priority Flags set to low level
|
* |||||----------------- In-service priority Flags set to low level
|
||||||
|
@ -95,7 +95,8 @@ interrupts don't accidentally become enabled before the scheduler is started. */
|
||||||
* |--------------------- Zero Flag set
|
* |--------------------- Zero Flag set
|
||||||
* ---------------------- Global Interrupt Flag set (enabled)
|
* ---------------------- Global Interrupt Flag set (enabled)
|
||||||
*/
|
*/
|
||||||
#define portPSW ( 0xc6UL )
|
//#define portPSW ( 0xc6UL )
|
||||||
|
#define portPSW ( 0x86UL )
|
||||||
|
|
||||||
/* The address of the pxCurrentTCB variable, but don't know or need to know its
|
/* The address of the pxCurrentTCB variable, but don't know or need to know its
|
||||||
type. */
|
type. */
|
||||||
|
@ -137,67 +138,24 @@ portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE
|
||||||
{
|
{
|
||||||
unsigned long *pulLocal;
|
unsigned long *pulLocal;
|
||||||
|
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
/* Parameters are passed in on the stack, and written using a 32bit value
|
||||||
{
|
hence a space is left for the second two bytes. */
|
||||||
/* Parameters are passed in on the stack, and written using a 32bit value
|
|
||||||
hence a space is left for the second two bytes. */
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* Write in the parameter value. */
|
|
||||||
pulLocal = ( unsigned long * ) pxTopOfStack;
|
|
||||||
*pulLocal = ( unsigned long ) pvParameters;
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* These values are just spacers. The return address of the function
|
|
||||||
would normally be written here. */
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x00;
|
|
||||||
pxTopOfStack--;
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x00;
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* The start address / PSW value is also written in as a 32bit value,
|
|
||||||
so leave a space for the second two bytes. */
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* Task function start address combined with the PSW. */
|
|
||||||
pulLocal = ( unsigned long * ) pxTopOfStack;
|
|
||||||
*pulLocal = ( ( ( unsigned long ) pxCode ) | ( portPSW << 24UL ) );
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* An initial value for the AX register. */
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x1111;
|
|
||||||
pxTopOfStack--;
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
{
|
|
||||||
/* Task function address is written to the stack first. As it is
|
|
||||||
written as a 32bit value a space is left on the stack for the second
|
|
||||||
two bytes. */
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* Task function start address combined with the PSW. */
|
|
||||||
pulLocal = ( unsigned long * ) pxTopOfStack;
|
|
||||||
*pulLocal = ( ( ( unsigned long ) pxCode ) | ( portPSW << 24UL ) );
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* The parameter is passed in AX. */
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) pvParameters;
|
|
||||||
pxTopOfStack--;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef This_was_an_alternative_to_the_two_above
|
|
||||||
/* Parameters are passed in on the stack. */
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) pvParameters;
|
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
|
||||||
#warning Why is the offset necessary? Presumably because the parameter could be 20 bits.
|
/* Write in the parameter value. */
|
||||||
pxTopOfStack--;
|
pulLocal = ( unsigned long * ) pxTopOfStack;
|
||||||
|
*pulLocal = ( unsigned long ) pvParameters;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
|
||||||
/* Task function address is written to the stack first. As it is
|
/* These values are just spacers. The return address of the function
|
||||||
written as a 32bit value a space is left on the stack for the second
|
would normally be written here. */
|
||||||
two bytes. */
|
*pxTopOfStack = ( portSTACK_TYPE ) 0x00;
|
||||||
|
pxTopOfStack--;
|
||||||
|
*pxTopOfStack = ( portSTACK_TYPE ) 0x00;
|
||||||
|
pxTopOfStack--;
|
||||||
|
|
||||||
|
/* The start address / PSW value is also written in as a 32bit value,
|
||||||
|
so leave a space for the second two bytes. */
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
|
||||||
/* Task function start address combined with the PSW. */
|
/* Task function start address combined with the PSW. */
|
||||||
|
@ -206,9 +164,9 @@ unsigned long *pulLocal;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
|
||||||
/* An initial value for the AX register. */
|
/* An initial value for the AX register. */
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0xaaaa;
|
*pxTopOfStack = ( portSTACK_TYPE ) 0x1111;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
#endif
|
|
||||||
/* An initial value for the HL register. */
|
/* An initial value for the HL register. */
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x2222;
|
*pxTopOfStack = ( portSTACK_TYPE ) 0x2222;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
@ -217,11 +175,9 @@ unsigned long *pulLocal;
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x0F00;
|
*pxTopOfStack = ( portSTACK_TYPE ) 0x0F00;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
|
||||||
/* Finally the remaining general purpose registers DE and BC */
|
/* The remaining general purpose registers bank 0 (DE and BC) and the other
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0xDEDE;
|
three register banks.. */
|
||||||
pxTopOfStack--;
|
pxTopOfStack -= 14;
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) 0xBCBC;
|
|
||||||
pxTopOfStack--;
|
|
||||||
|
|
||||||
/* Finally the critical section nesting count is set to zero when the task
|
/* Finally the critical section nesting count is set to zero when the task
|
||||||
first starts. */
|
first starts. */
|
||||||
|
|
|
@ -86,6 +86,7 @@
|
||||||
.extern _vTaskIncrementTick
|
.extern _vTaskIncrementTick
|
||||||
|
|
||||||
.text
|
.text
|
||||||
|
.align 2
|
||||||
|
|
||||||
/* FreeRTOS yield handler. This is installed as the BRK software interrupt
|
/* FreeRTOS yield handler. This is installed as the BRK software interrupt
|
||||||
handler. */
|
handler. */
|
||||||
|
@ -101,6 +102,7 @@ _vPortYield:
|
||||||
|
|
||||||
/* Starts the scheduler by restoring the context of the task that will execute
|
/* Starts the scheduler by restoring the context of the task that will execute
|
||||||
first. */
|
first. */
|
||||||
|
.align 2
|
||||||
_vPortStartFirstTask:
|
_vPortStartFirstTask:
|
||||||
/* Restore the context of whichever task will execute first. */
|
/* Restore the context of whichever task will execute first. */
|
||||||
portRESTORE_CONTEXT
|
portRESTORE_CONTEXT
|
||||||
|
@ -109,6 +111,7 @@ _vPortStartFirstTask:
|
||||||
|
|
||||||
/* FreeRTOS tick handler. This is installed as the interval timer interrupt
|
/* FreeRTOS tick handler. This is installed as the interval timer interrupt
|
||||||
handler. */
|
handler. */
|
||||||
|
.align 2
|
||||||
_vPortTickISR:
|
_vPortTickISR:
|
||||||
|
|
||||||
/* Save the context of the currently executing task. */
|
/* Save the context of the currently executing task. */
|
||||||
|
|
|
@ -156,7 +156,7 @@ extern volatile unsigned short usCriticalNesting; \
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Task utilities. */
|
/* Task utilities. */
|
||||||
#define portYIELD() __asm volatile ( "BRK" )
|
#define portYIELD() __asm volatile ( "BRK" )
|
||||||
#define portYIELD_FROM_ISR( xHigherPriorityTaskWoken ) if( xHigherPriorityTaskWoken ) vTaskSwitchContext()
|
#define portYIELD_FROM_ISR( xHigherPriorityTaskWoken ) if( xHigherPriorityTaskWoken ) vTaskSwitchContext()
|
||||||
#define portNOP() __asm volatile ( "NOP" )
|
#define portNOP() __asm volatile ( "NOP" )
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
|
@ -94,19 +94,27 @@
|
||||||
_vRegTest1Task:
|
_vRegTest1Task:
|
||||||
|
|
||||||
/* First fill the registers. */
|
/* First fill the registers. */
|
||||||
|
SEL RB0
|
||||||
MOVW AX, #0x1122
|
MOVW AX, #0x1122
|
||||||
MOVW BC, #0x3344
|
MOVW BC, #0x3344
|
||||||
MOVW DE, #0x5566
|
MOVW DE, #0x5566
|
||||||
MOVW HL, #0x7788
|
MOVW HL, #0x7788
|
||||||
MOV CS, #0x01
|
SEL RB1
|
||||||
|
MOVW AX, #0x1111
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
MOVW BC, #0x2222
|
||||||
|
MOVW DE, #0x3333
|
||||||
; ES is not saved or restored when using the near memory model so only
|
MOVW HL, #0x4444
|
||||||
; test it when using the far model.
|
SEL RB2
|
||||||
MOV ES, #0x02
|
MOVW AX, #0x5555
|
||||||
|
MOVW BC, #0x6666
|
||||||
#endif
|
MOVW DE, #0x7777
|
||||||
|
MOVW HL, #0x8888
|
||||||
|
SEL RB3
|
||||||
|
MOVW AX, #0xAAAA
|
||||||
|
MOVW BC, #0xBBBB
|
||||||
|
MOVW DE, #0xCCCC
|
||||||
|
MOVW HL, #0xDDDD
|
||||||
|
SEL RB0
|
||||||
|
|
||||||
_loop1:
|
_loop1:
|
||||||
|
|
||||||
|
@ -136,26 +144,72 @@ _loop1:
|
||||||
CMPW AX, #0x7788
|
CMPW AX, #0x7788
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
MOV A, CS
|
|
||||||
CMP A, #0x01
|
/* Set AX back to its initial value. */
|
||||||
|
MOVW AX, #0x1122
|
||||||
|
|
||||||
|
SEL RB1
|
||||||
|
CMPW AX, #0x1111
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
CMPW AX, #0x2222
|
||||||
|
|
||||||
/* ES is not saved or restored when using the near memory model so only
|
|
||||||
test it when using the far model. */
|
|
||||||
MOV A, ES
|
|
||||||
CMP A, #0x02
|
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0x3333
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0x4444
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0x1111
|
||||||
|
|
||||||
#endif
|
|
||||||
|
SEL RB2
|
||||||
|
CMPW AX, #0x5555
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
|
CMPW AX, #0x6666
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0x7777
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0x8888
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0x5555
|
||||||
|
|
||||||
|
|
||||||
|
SEL RB3
|
||||||
|
CMPW AX, #0xAAAA
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
|
CMPW AX, #0xBBBB
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0xCCCC
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0xDDDD
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0xAAAA
|
||||||
|
|
||||||
|
|
||||||
|
SEL RB0
|
||||||
|
|
||||||
/* Indicate that this task is still cycling. */
|
/* Indicate that this task is still cycling. */
|
||||||
INCW !_usRegTest1LoopCounter
|
INCW !_usRegTest1LoopCounter
|
||||||
|
|
||||||
MOVW AX, #0x1122
|
|
||||||
BR !!_loop1
|
BR !!_loop1
|
||||||
|
|
||||||
|
|
||||||
|
@ -166,17 +220,27 @@ _loop1:
|
||||||
*/
|
*/
|
||||||
_vRegTest2Task:
|
_vRegTest2Task:
|
||||||
|
|
||||||
|
SEL RB0
|
||||||
MOVW AX, #0x99aa
|
MOVW AX, #0x99aa
|
||||||
MOVW BC, #0xbbcc
|
MOVW BC, #0xbbcc
|
||||||
MOVW DE, #0xddee
|
MOVW DE, #0xddee
|
||||||
MOVW HL, #0xff12
|
MOVW HL, #0xff12
|
||||||
MOV CS, #0x03
|
SEL RB1
|
||||||
|
MOVW AX, #0x0110
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
MOVW BC, #0x0220
|
||||||
|
MOVW DE, #0x0330
|
||||||
MOV ES, #0x04
|
MOVW HL, #0x0440
|
||||||
|
SEL RB2
|
||||||
#endif
|
MOVW AX, #0x0550
|
||||||
|
MOVW BC, #0x0660
|
||||||
|
MOVW DE, #0x0770
|
||||||
|
MOVW HL, #0x0880
|
||||||
|
SEL RB3
|
||||||
|
MOVW AX, #0x0AA0
|
||||||
|
MOVW BC, #0x0BB0
|
||||||
|
MOVW DE, #0x0CC0
|
||||||
|
MOVW HL, #0x0DD0
|
||||||
|
SEL RB0
|
||||||
|
|
||||||
_loop2:
|
_loop2:
|
||||||
CMPW AX, #0x99aa
|
CMPW AX, #0x99aa
|
||||||
|
@ -194,24 +258,67 @@ _loop2:
|
||||||
CMPW AX, #0xff12
|
CMPW AX, #0xff12
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
MOV A, CS
|
MOVW AX, #0x99aa
|
||||||
CMP A, #0x03
|
|
||||||
|
SEL RB1
|
||||||
|
CMPW AX, #0x0110
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
#if __DATA_MODEL__ == __DATA_MODEL_FAR__
|
CMPW AX, #0x0220
|
||||||
|
|
||||||
MOV A, ES
|
|
||||||
CMP A, #0x04
|
|
||||||
BZ $.+5
|
BZ $.+5
|
||||||
BR !!_vRegTestError
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0x0330
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0x0440
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0x0110
|
||||||
|
|
||||||
#endif
|
SEL RB2
|
||||||
|
CMPW AX, #0x0550
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
|
CMPW AX, #0x0660
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0x0770
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0x0880
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0x0550
|
||||||
|
|
||||||
|
SEL RB3
|
||||||
|
CMPW AX, #0x0AA0
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, BC
|
||||||
|
CMPW AX, #0x0BB0
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, DE
|
||||||
|
CMPW AX, #0x0CC0
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, HL
|
||||||
|
CMPW AX, #0x0DD0
|
||||||
|
BZ $.+5
|
||||||
|
BR !!_vRegTestError
|
||||||
|
MOVW AX, #0x0AA0
|
||||||
|
|
||||||
|
SEL RB0
|
||||||
|
|
||||||
/* Indicate that this task is still cycling. */
|
/* Indicate that this task is still cycling. */
|
||||||
INCW !_usRegTest2LoopCounter
|
INCW !_usRegTest2LoopCounter
|
||||||
|
|
||||||
MOVW AX, #0x99aa
|
|
||||||
BR !!_loop2
|
BR !!_loop2
|
||||||
|
|
||||||
.end
|
.end
|
||||||
|
|
|
@ -211,24 +211,15 @@ static xTimerHandle xDemoTimer = NULL;
|
||||||
static volatile unsigned long ulDemoSoftwareTimerCounter = 0UL;
|
static volatile unsigned long ulDemoSoftwareTimerCounter = 0UL;
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
volatile unsigned char ucTemp;
|
|
||||||
short main( void )
|
short main( void )
|
||||||
{
|
{
|
||||||
ucTemp = RESF;
|
|
||||||
ucTemp = sizeof( char* );
|
|
||||||
ucTemp = sizeof( pdTASK_CODE );
|
|
||||||
#warning Take out all references to the P1 LED.
|
|
||||||
P1 &= 0xFE; PM1 &= 0xFE;
|
|
||||||
P1_bit.no0 = 1;
|
|
||||||
|
|
||||||
|
|
||||||
/* Creates all the tasks and timers, then starts the scheduler. */
|
/* Creates all the tasks and timers, then starts the scheduler. */
|
||||||
|
|
||||||
/* First create the 'standard demo' tasks. These are used to demonstrate
|
/* First create the 'standard demo' tasks. These are used to demonstrate
|
||||||
API functions being used and also to test the kernel port. More information
|
API functions being used and also to test the kernel port. More information
|
||||||
is provided on the FreeRTOS.org WEB site. */
|
is provided on the FreeRTOS.org WEB site. */
|
||||||
vStartDynamicPriorityTasks();
|
vStartDynamicPriorityTasks();
|
||||||
#warning Runs if the debugger is not connected and vStartDynamicPriorityTasks() is commented out.
|
|
||||||
vStartPolledQueueTasks( tskIDLE_PRIORITY );
|
vStartPolledQueueTasks( tskIDLE_PRIORITY );
|
||||||
vCreateBlockTimeTasks();
|
vCreateBlockTimeTasks();
|
||||||
|
|
||||||
|
@ -262,8 +253,10 @@ short main( void )
|
||||||
/* Finally start the scheduler running. */
|
/* Finally start the scheduler running. */
|
||||||
vTaskStartScheduler();
|
vTaskStartScheduler();
|
||||||
|
|
||||||
/* If this line is reached then vTaskStartScheduler() returned because there
|
/* If all is well execution will never reach here as the scheduler will be
|
||||||
was insufficient heap memory remaining for the idle task to be created. */
|
running. If this null loop is reached then it is likely there was
|
||||||
|
insufficient FreeRTOS heap available for the idle task and/or timer task to
|
||||||
|
be created. See http://www.freertos.org/a00111.html. */
|
||||||
for( ;; );
|
for( ;; );
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
@ -353,12 +346,6 @@ static unsigned short usLastRegTest1Counter = 0, usLastRegTest2Counter = 0;
|
||||||
/* Toggle the LED. The toggle rate will depend on whether or not an error
|
/* Toggle the LED. The toggle rate will depend on whether or not an error
|
||||||
has been found in any tasks. */
|
has been found in any tasks. */
|
||||||
LED_BIT = !LED_BIT;
|
LED_BIT = !LED_BIT;
|
||||||
|
|
||||||
if( xTaskGetTickCount() > ( ( portTickType ) 10000 / portTICK_RATE_MS ) )
|
|
||||||
{
|
|
||||||
/* Turn off the LED used to visualise a reset. */
|
|
||||||
P1_bit.no0 = 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
@ -379,7 +366,6 @@ void vApplicationMallocFailedHook( void )
|
||||||
timers, and semaphores. The size of the FreeRTOS heap is set by the
|
timers, and semaphores. The size of the FreeRTOS heap is set by the
|
||||||
configTOTAL_HEAP_SIZE configuration constant in FreeRTOSConfig.h. */
|
configTOTAL_HEAP_SIZE configuration constant in FreeRTOSConfig.h. */
|
||||||
taskDISABLE_INTERRUPTS();
|
taskDISABLE_INTERRUPTS();
|
||||||
P1_bit.no0 = 0;
|
|
||||||
for( ;; );
|
for( ;; );
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
@ -393,7 +379,6 @@ void vApplicationStackOverflowHook( xTaskHandle pxTask, signed char *pcTaskName
|
||||||
configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2. This hook
|
configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2. This hook
|
||||||
function is called if a stack overflow is detected. */
|
function is called if a stack overflow is detected. */
|
||||||
taskDISABLE_INTERRUPTS();
|
taskDISABLE_INTERRUPTS();
|
||||||
P1_bit.no0 = 0;
|
|
||||||
for( ;; );
|
for( ;; );
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
@ -453,7 +438,15 @@ static void prvRegTest2Entry( void *pvParameters )
|
||||||
|
|
||||||
void vAssertCalled( void )
|
void vAssertCalled( void )
|
||||||
{
|
{
|
||||||
taskDISABLE_INTERRUPTS();
|
volatile unsigned long ul = 0;
|
||||||
P1_bit.no0 = 0;
|
taskENTER_CRITICAL();
|
||||||
for( ;; );
|
{
|
||||||
|
/* Set ul to a non-zero value using the debugger to step out of this
|
||||||
|
function. */
|
||||||
|
while( ul == 0 )
|
||||||
|
{
|
||||||
|
__asm volatile( "NOP" );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
taskEXIT_CRITICAL();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue