]> git.sur5r.net Git - freertos/commitdiff
Add RSK definition and LED flash tasks into RX64M demo.
authorrtel <rtel@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Fri, 28 Mar 2014 11:47:40 +0000 (11:47 +0000)
committerrtel <rtel@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Fri, 28 Mar 2014 11:47:40 +0000 (11:47 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2230 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.cproject
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.info
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/.project
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.c [new file with mode: 0644]
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.h [new file with mode: 0644]
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/ParTest.c
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/rskrx64mdef.h [new file with mode: 0644]
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main.c
FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/main_full.c

index b6a733d6be9256af063897083db98c0196842fe1..0bcdbe39b65172a261dc6682676ef875d3fa42bc 100644 (file)
@@ -3,105 +3,6 @@
 \r
 <cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">\r
        <storageModule moduleId="org.eclipse.cdt.core.settings">\r
-               <cconfiguration id="com.renesas.cdt.rxc.release.win32.configuration.Id.1672907423">\r
-                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.rxc.release.win32.configuration.Id.1672907423" moduleId="org.eclipse.cdt.core.settings" name="Release">\r
-                               <externalSettings/>\r
-                               <extensions>\r
-                                       <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>\r
-                                       <extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>\r
-                                       <extension id="com.renesas.cdt.core.KPITGCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                                       <extension id="com.renesas.cdt.core.KPITVCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                                       <extension id="com.renesas.cdt.core.KPITGASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                                       <extension id="com.renesas.cdt.core.KPITMakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                                       <extension id="com.renesas.cdt.core.KPITGLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                                       <extension id="com.renesas.cdt.core.CCRXErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>\r
-                               </extensions>\r
-                       </storageModule>\r
-                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">\r
-                               <configuration artifactName="RX64MStartUp" 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 *.x *.lbp src/*.src src/*.p src/*.pp *.bls *.libelf *.lbk *.abs" description="Release - No Debug" errorParsers="com.renesas.cdt.core.KPITMakeErrorParser;com.renesas.cdt.core.KPITGCCErrorParser;com.renesas.cdt.core.KPITGASErrorParser;com.renesas.cdt.core.KPITGLDErrorParser;com.renesas.cdt.core.KPITVCErrorParser;com.renesas.cdt.core.CCRXErrorParser" id="com.renesas.cdt.rxc.release.win32.configuration.Id.1672907423" name="Release" parent="com.renesas.cdt.rxc.release.win32.configuration.Id">\r
-                                       <folderInfo id="com.renesas.cdt.rxc.release.win32.configuration.Id.1672907423." name="/" resourcePath="">\r
-                                               <toolChain id="com.renesas.cdt.rxc.release.win32.toolChain.Id.979371638" name="Renesas RXC Toolchain" superClass="com.renesas.cdt.rxc.release.win32.toolChain.Id">\r
-                                                       <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF;org.eclipse.cdt.core.PE" id="com.renesas.cdt.rxc.release.win32.targetPlatform.IdId.326289097" osList="win32" superClass="com.renesas.cdt.rxc.release.win32.targetPlatform.IdId"/>\r
-                                                       <builder buildPath="${workspace_loc:/RX64MStartUp}/Release" id="com.renesas.cdt.rxc.release.win32.builder.Id.1780466888" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="SHC Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.renesas.cdt.rxc.release.win32.builder.Id"/>\r
-                                                       <tool id="com.renesas.cdt.rxc.release.win32.tool.compiler.Id.1494256709" name="Compiler" superClass="com.renesas.cdt.rxc.release.win32.tool.compiler.Id">\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.defines.535029115" name="Defines" superClass="com.renesas.cdt.renesas.Compiler.option.defines" valueType="definedSymbols">\r
-                                                                       <listOptionValue builtIn="false" value="__RX"/>\r
-                                                               </option>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.cpuType.773963808" name="CPU type" superClass="com.renesas.cdt.rxc.Release.Compiler.option.cpuType" value="RX600" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.endian.1825401874" name="Data Endian" superClass="com.renesas.cdt.rxc.Release.Compiler.option.endian" value="Little-endian data" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.roundTo.897838305" name="Round to" superClass="com.renesas.cdt.rxc.Release.Compiler.option.roundTo" value="Nearest" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.precisionDouble.540860970" name="Precision of double" superClass="com.renesas.cdt.rxc.Release.Compiler.option.precisionDouble" value="Single precision" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.signChar.1383946864" name="Sign of char" superClass="com.renesas.cdt.rxc.Release.Compiler.option.signChar" value="unsigned" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.signBitField.946035889" name="Sign of bit field" superClass="com.renesas.cdt.rxc.Release.Compiler.option.signBitField" value="unsigned" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.allocLowerBit.3737301" name="Allocate from lower bit" superClass="com.renesas.cdt.rxc.Release.Compiler.option.allocLowerBit" value="Lower bit" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.widthDivergence.1887628902" name="Width of divergence of function" superClass="com.renesas.cdt.rxc.Release.Compiler.option.widthDivergence" value="24 bit" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.patchCode.1241305343" name="Patch code generation" superClass="com.renesas.cdt.rxc.Release.Compiler.option.patchCode" value="None" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.registerFastInterrupt.968046492" name="Fast interrupt register" superClass="com.renesas.cdt.rxc.Release.Compiler.option.registerFastInterrupt" value="None" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.ROM.1819672052" name="ROM" superClass="com.renesas.cdt.rxc.Release.Compiler.option.ROM" value="None" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.RAM.2013992852" name="RAM" superClass="com.renesas.cdt.rxc.Release.Compiler.option.RAM" value="None" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.addressRegister.759178237" name="Address Register" superClass="com.renesas.cdt.rxc.Release.Compiler.option.addressRegister" value="None" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.device.337119841" name="Device" superClass="com.renesas.cdt.renesas.Compiler.option.device" value="R5F564ML" valueType="string"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.deviceShortName.561062042" name="DeviceShortName" superClass="com.renesas.cdt.renesas.Compiler.option.deviceShortName" value="R5F564MLDxFC" valueType="string"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.incFileDirectories.417739342" name="Include file directories" superClass="com.renesas.cdt.renesas.Compiler.option.incFileDirectories" valueType="includePath">\r
-                                                                       <listOptionValue builtIn="false" value="&quot;${TCINSTALL}/include&quot;"/>\r
-                                                               </option>\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.CPUSeries.1432961866" name="Cpu Series" superClass="com.renesas.cdt.renesas.Compiler.option.CPUSeries" value="RX64M" valueType="string"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Compiler.option.UserDef.1388700075" name="User-defined options" superClass="com.renesas.cdt.renesas.Compiler.option.UserDef" valueType="stringList">\r
-                                                                       <listOptionValue builtIn="false" value="-nologo"/>\r
-                                                                       <listOptionValue builtIn="false" value="-change_message=warning"/>\r
-                                                               </option>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Compiler.option.cpu.1320717512" name="CPU" superClass="com.renesas.cdt.rxc.Release.Compiler.option.cpu" value="RX64M" valueType="string"/>\r
-                                                               <inputType id="%Base.Compiler.Shc.C.Input.Id.129210005" name="C Input" superClass="%Base.Compiler.Shc.C.Input.Id"/>\r
-                                                               <inputType id="%Base.Compiler.Shc.C.Input1.Id.1021200129" name="C++ Input" superClass="%Base.Compiler.Shc.C.Input1.Id"/>\r
-                                                       </tool>\r
-                                                       <tool id="%com.renesas.cdt.rxc.release.win32.tool.assembler.Id.409101298" name="Assembler" superClass="%com.renesas.cdt.rxc.release.win32.tool.assembler.Id">\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Assembler.option.endian.534674149" name="Data Endian" superClass="com.renesas.cdt.rxc.Release.Assembler.option.endian" value="Little-endian data" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.Assembler.option.address.852994699" name="Address" superClass="com.renesas.cdt.rxc.Release.Assembler.option.address" value="00000000" valueType="string"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Assembler.option.userDefine.370665869" name="User-defined options" superClass="com.renesas.cdt.renesas.Assembler.option.userDefine" valueType="stringList">\r
-                                                                       <listOptionValue builtIn="false" value="-nologo"/>\r
-                                                                       <listOptionValue builtIn="false" value=""/>\r
-                                                                       <listOptionValue builtIn="false" value=""/>\r
-                                                               </option>\r
-                                                               <inputType id="%Base.Assembler.shcInputType.Id.1346544456" name="Assembler InputType" superClass="%Base.Assembler.shcInputType.Id"/>\r
-                                                       </tool>\r
-                                                       <tool id="com.renesas.cdt.rxc.release.win32.tool.linker.Id.1020824477" name="Linker" superClass="com.renesas.cdt.rxc.release.win32.tool.linker.Id">\r
-                                                               <option id="com.renesas.cdt.renesas.Linker.option.rom.644591168" name="ROM to RAM mapped section" superClass="com.renesas.cdt.renesas.Linker.option.rom" valueType="stringList">\r
-                                                                       <listOptionValue builtIn="false" value="D=R"/>\r
-                                                                       <listOptionValue builtIn="false" value="D_1=R_1"/>\r
-                                                                       <listOptionValue builtIn="false" value="D_2=R_2"/>\r
-                                                               </option>\r
-                                                               <option id="com.renesas.cdt.renesas.Linker.option.linkOrderList.1750231185" name="" superClass="com.renesas.cdt.renesas.Linker.option.linkOrderList" valueType="stringList">\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\RX64MStartUp.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\dbsct.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\interrupt_handlers.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\reset_program.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\sbrk.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\src\vector_table.obj&quot;"/>\r
-                                                                       <listOptionValue builtIn="false" value="&quot;.\RX64MStartUp.lib&quot;"/>\r
-                                                               </option>\r
-                                                               <option id="com.renesas.cdt.renesas.Linker.option.typeOfOutputFileOption.5828690" name="Type of output file:" superClass="com.renesas.cdt.renesas.Linker.option.typeOfOutputFileOption" value="Stype via absolute" valueType="enumerated"/>\r
-                                                       </tool>\r
-                                                       <tool command="lbgrx" id="%com.renesas.cdt.rxc.release.win32.tool.libgen.Id.695800513" name="Standard Library" superClass="%com.renesas.cdt.rxc.release.win32.tool.libgen.Id">\r
-                                                               <option id="com.renesas.cdt.rxc.Release.StandardLibrary.option.endian.2085196719" name="Data Endian" superClass="com.renesas.cdt.rxc.Release.StandardLibrary.option.endian" value="Little-endian data" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.rxc.Release.StandardLibrary.option.address.1396339506" name="Address" superClass="com.renesas.cdt.rxc.Release.StandardLibrary.option.address" value="00000000" valueType="string"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.libConfiguration.508834085" name="Library configuration" superClass="com.renesas.cdt.renesas.StandardLibrary.option.libConfiguration" value="C(C89)" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.mathc89.1881776053" name="math.h (C89/C99): Mathematical/trigonometric operations (double-precision)" superClass="com.renesas.cdt.renesas.StandardLibrary.option.mathc89" value="false" valueType="boolean"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.stdioc89.1128197584" name="stdio.h (C89/C99): Input/Output" superClass="com.renesas.cdt.renesas.StandardLibrary.option.stdioc89" value="false" valueType="boolean"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.stdlibc89.284113515" name="stdlib.h (C89/C99): General purpose library features" superClass="com.renesas.cdt.renesas.StandardLibrary.option.stdlibc89" value="false" valueType="boolean"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.stringc89.245389191" name="string.h (C89/C99): String handling operations" superClass="com.renesas.cdt.renesas.StandardLibrary.option.stringc89" value="false" valueType="boolean"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.rxcnewCPP.1295998752" name="new (EC++): Memory allocation and deallocation routines" superClass="com.renesas.cdt.renesas.StandardLibrary.option.rxcnewCPP" value="false" valueType="boolean"/>\r
-                                                               <option id="com.renesas.cdt.renesas.StandardLibrary.option.mode.741613136" name="Mode" superClass="com.renesas.cdt.renesas.StandardLibrary.option.mode" value="com.renesas.cdt.renesas.StandardLibrary.option.buildOnlyWhenOptionsChanged" valueType="enumerated"/>\r
-                                                       </tool>\r
-                                                       <tool id="com.renesas.cdt.rxc.release.win32.tool.convertor.Id.2027596800" name="Converter" superClass="com.renesas.cdt.rxc.release.win32.tool.convertor.Id"/>\r
-                                               </toolChain>\r
-                                       </folderInfo>\r
-                                       <sourceEntries>\r
-                                               <entry excluding="src" flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name=""/>\r
-                                       </sourceEntries>\r
-                               </configuration>\r
-                       </storageModule>\r
-                       <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>\r
-               </cconfiguration>\r
                <cconfiguration id="com.renesas.cdt.rxc.hardwaredebug.win32.configuration.Id.534038930">\r
                        <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.renesas.cdt.rxc.hardwaredebug.win32.configuration.Id.534038930" moduleId="org.eclipse.cdt.core.settings" name="HardwareDebug">\r
                                <externalSettings/>\r
                                                                <option id="com.renesas.cdt.renesas.Compiler.option.deviceShortName.849913083" name="DeviceShortName" superClass="com.renesas.cdt.renesas.Compiler.option.deviceShortName" value="R5F564MLDxFC" valueType="string"/>\r
                                                                <option id="com.renesas.cdt.renesas.Compiler.option.incFileDirectories.92846512" name="Include file directories" superClass="com.renesas.cdt.renesas.Compiler.option.incFileDirectories" valueType="includePath">\r
                                                                        <listOptionValue builtIn="false" value="&quot;${TCINSTALL}/include&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Source/Renesas_Code}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Source/Common_Demo_Source/include}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Source/FreeRTOS_Source/include}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/Source}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;.\RTOSDemo.lib&quot;"/>\r
                                                                </option>\r
                                                                <option id="com.renesas.cdt.renesas.Linker.option.typeOfOutputFileOption.2104356968" name="Type of output file:" superClass="com.renesas.cdt.renesas.Linker.option.typeOfOutputFileOption" value="Stype via absolute" valueType="enumerated"/>\r
-                                                               <option id="com.renesas.cdt.renesas.Linker.option.linkOrder.1520767120" name="%option.name.179" superClass="com.renesas.cdt.renesas.Linker.option.linkOrder"/>\r
+                                                               <option id="com.renesas.cdt.renesas.Linker.option.linkOrder.1520767120" name="%option.name.179" superClass="com.renesas.cdt.renesas.Linker.option.linkOrder" valueType="stringList"/>\r
                                                                <option id="com.renesas.cdt.renesas.Linker.option.userDefined.1074366648" name="User-defined options" superClass="com.renesas.cdt.renesas.Linker.option.userDefined" valueType="stringList">\r
                                                                        <listOptionValue builtIn="false" value="-nomessage"/>\r
                                                                        <listOptionValue builtIn="false" value="-nologo"/>\r
index e1cdccf4b146a38476395a08020c8ad33675ca93..d54af9bd6e15bd5830a63def205006d4e5cafb39 100644 (file)
@@ -2,5 +2,5 @@ TOOL_CHAIN=Renesas RXC Toolchain
 VERSION=v2.01.00
 TC_INSTALL=C:\Devtools\Renesas\RX\2_1_0\
 VERSION_IDE=3.06.02.004
-E2STUDIO_VERSION=2.1.0.21
 ACTIVE_CONFIGURATION=HardwareDebug
+E2STUDIO_VERSION=2.1.0.21
index 281d83f6a52026a2aad1893c11819104c6646c19..0255a85f61a52debbd78d525b9448d6b456b81a9 100644 (file)
@@ -83,7 +83,7 @@
        </linkedResources>\r
        <filteredResources>\r
                <filter>\r
-                       <id>1394031827230</id>\r
+                       <id>1395248551327</id>\r
                        <name>Source/Common_Demo_Source/Minimal</name>\r
                        <type>6</type>\r
                        <matcher>\r
@@ -92,7 +92,7 @@
                        </matcher>\r
                </filter>\r
                <filter>\r
-                       <id>1394031827245</id>\r
+                       <id>1395248551343</id>\r
                        <name>Source/Common_Demo_Source/Minimal</name>\r
                        <type>6</type>\r
                        <matcher>\r
                        </matcher>\r
                </filter>\r
                <filter>\r
-                       <id>1394031827261</id>\r
+                       <id>1395248551358</id>\r
                        <name>Source/Common_Demo_Source/Minimal</name>\r
                        <type>6</type>\r
                        <matcher>\r
                        </matcher>\r
                </filter>\r
                <filter>\r
-                       <id>1394031827261</id>\r
-                       <name>Source/Common_Demo_Source/Minimal</name>\r
-                       <type>6</type>\r
-                       <matcher>\r
-                               <id>org.eclipse.ui.ide.multiFilter</id>\r
-                               <arguments>1.0-name-matches-false-false-IntQueue.c</arguments>\r
-                       </matcher>\r
-               </filter>\r
-               <filter>\r
-                       <id>1394031827276</id>\r
+                       <id>1395248551374</id>\r
                        <name>Source/Common_Demo_Source/Minimal</name>\r
                        <type>6</type>\r
                        <matcher>\r
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.c b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.c
new file mode 100644 (file)
index 0000000..805bcab
--- /dev/null
@@ -0,0 +1,164 @@
+/*\r
+    FreeRTOS V8.0.0 - Copyright (C) 2014 Real Time Engineers Ltd. \r
+    All rights reserved\r
+\r
+    VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
+\r
+    ***************************************************************************\r
+     *                                                                       *\r
+     *    FreeRTOS provides completely free yet professionally developed,    *\r
+     *    robust, strictly quality controlled, supported, and cross          *\r
+     *    platform software that has become a de facto standard.             *\r
+     *                                                                       *\r
+     *    Help yourself get started quickly and support the FreeRTOS         *\r
+     *    project by purchasing a FreeRTOS tutorial book, reference          *\r
+     *    manual, or both from: http://www.FreeRTOS.org/Documentation        *\r
+     *                                                                       *\r
+     *    Thank you!                                                         *\r
+     *                                                                       *\r
+    ***************************************************************************\r
+\r
+    This file is part of the FreeRTOS distribution.\r
+\r
+    FreeRTOS is free software; you can redistribute it and/or modify it under\r
+    the terms of the GNU General Public License (version 2) as published by the\r
+    Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.\r
+\r
+    >>! NOTE: The modification to the GPL is included to allow you to distribute\r
+    >>! a combined work that includes FreeRTOS without being obliged to provide\r
+    >>! the source code for proprietary components outside of the FreeRTOS\r
+    >>! kernel.\r
+\r
+    FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY\r
+    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\r
+    FOR A PARTICULAR PURPOSE.  Full license text is available from the following\r
+    link: http://www.freertos.org/a00114.html\r
+\r
+    1 tab == 4 spaces!\r
+\r
+    ***************************************************************************\r
+     *                                                                       *\r
+     *    Having a problem?  Start by reading the FAQ "My application does   *\r
+     *    not run, what could be wrong?"                                     *\r
+     *                                                                       *\r
+     *    http://www.FreeRTOS.org/FAQHelp.html                               *\r
+     *                                                                       *\r
+    ***************************************************************************\r
+\r
+    http://www.FreeRTOS.org - Documentation, books, training, latest versions,\r
+    license and Real Time Engineers Ltd. contact details.\r
+\r
+    http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,\r
+    including FreeRTOS+Trace - an indispensable productivity tool, a DOS\r
+    compatible FAT file system, and our tiny thread aware UDP/IP stack.\r
+\r
+    http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High\r
+    Integrity Systems to sell under the OpenRTOS brand.  Low cost OpenRTOS\r
+    licenses offer ticketed support, indemnification and middleware.\r
+\r
+    http://www.SafeRTOS.com - High Integrity Systems also provide a safety\r
+    engineered and independently SIL3 certified version for use in safety and\r
+    mission critical applications that require provable dependability.\r
+\r
+    1 tab == 4 spaces!\r
+*/\r
+\r
+/*\r
+ * This file contains the non-portable and therefore RX62N specific parts of\r
+ * the IntQueue standard demo task - namely the configuration of the timers\r
+ * that generate the interrupts and the interrupt entry points.\r
+ */\r
+\r
+/* Scheduler includes. */\r
+#include "FreeRTOS.h"\r
+#include "task.h"\r
+\r
+/* Demo includes. */\r
+#include "IntQueueTimer.h"\r
+#include "IntQueue.h"\r
+\r
+/* Renesas includes. */\r
+#include "r_cg_macrodriver.h"\r
+\r
+#define tmrTIMER_0_1_FREQUENCY ( 2000UL )\r
+#define tmrTIMER_2_3_FREQUENCY ( 2001UL )\r
+\r
+void vInitialiseTimerForIntQueueTest( void )\r
+{\r
+#if 0\r
+       /* Ensure interrupts do not start until full configuration is complete. */\r
+       portENTER_CRITICAL();\r
+       {\r
+               /* Cascade two 8bit timer channels to generate the interrupts. \r
+               8bit timer unit 1 (TMR0 and TMR1) and 8bit timer unit 2 (TMR2 and TMR3 are\r
+               utilised for this test. */\r
+\r
+               /* Enable the timers. */\r
+               SYSTEM.MSTPCRA.BIT.MSTPA5 = 0;\r
+               SYSTEM.MSTPCRA.BIT.MSTPA4 = 0;\r
+\r
+               /* Enable compare match A interrupt request. */\r
+               TMR0.TCR.BIT.CMIEA = 1;\r
+               TMR2.TCR.BIT.CMIEA = 1;\r
+\r
+               /* Clear the timer on compare match A. */\r
+               TMR0.TCR.BIT.CCLR = 1;\r
+               TMR2.TCR.BIT.CCLR = 1;\r
+\r
+               /* Set the compare match value. */\r
+               TMR01.TCORA = ( unsigned short ) ( ( ( configPERIPHERAL_CLOCK_HZ / tmrTIMER_0_1_FREQUENCY ) -1 ) / 8 );\r
+               TMR23.TCORA = ( unsigned short ) ( ( ( configPERIPHERAL_CLOCK_HZ / tmrTIMER_0_1_FREQUENCY ) -1 ) / 8 );\r
+\r
+               /* 16 bit operation ( count from timer 1,2 ). */\r
+               TMR0.TCCR.BIT.CSS = 3;\r
+               TMR2.TCCR.BIT.CSS = 3;\r
+       \r
+               /* Use PCLK as the input. */\r
+               TMR1.TCCR.BIT.CSS = 1;\r
+               TMR3.TCCR.BIT.CSS = 1;\r
+       \r
+               /* Divide PCLK by 8. */\r
+               TMR1.TCCR.BIT.CKS = 2;\r
+               TMR3.TCCR.BIT.CKS = 2;\r
+#warning Need to enable and configure interrupts here.\r
+               /* Enable TMR 0, 2 interrupts. */\r
+//             IEN( TMR0, CMIA0 ) = 1;\r
+//             IEN( TMR2, CMIA2 ) = 1;\r
+// CMT         _IEN( _CMT0_CMI0 ) = 1;\r
+\r
+               /* ...and set its priority to the application defined kernel priority. */\r
+// CMT         _IPR( _CMT0_CMI0 ) = configKERNEL_INTERRUPT_PRIORITY;\r
+\r
+\r
+\r
+               /* Set the timer interrupts to be above the kernel.  The interrupts are\r
+               assigned different priorities so they nest with each other. */\r
+//             IPR( TMR0, CMIA0 ) = configMAX_SYSCALL_INTERRUPT_PRIORITY - 1;\r
+//             IPR( TMR2, CMIA2 ) = ( configMAX_SYSCALL_INTERRUPT_PRIORITY - 2 );\r
+       }\r
+       portEXIT_CRITICAL();\r
+       \r
+       /* Ensure the interrupts are clear as they are edge detected. */\r
+//     IR( TMR0, CMIA0 ) = 0;\r
+//     IR( TMR2, CMIA2 ) = 0;\r
+#endif\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+//#pragma interrupt ( vT0_1InterruptHandler( vect = VECT_TMR0_CMIA0, enable ) )\r
+// CMT#pragma interrupt (vT0_1InterruptHandler( vect = _VECT( _CMT0_CMI0 ), enable ) )\r
+void vT0_1InterruptHandler( void )\r
+{\r
+       portYIELD_FROM_ISR( xFirstTimerHandler() );\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+//#pragma interrupt ( vT2_3InterruptHandler( vect = VECT_TMR2_CMIA2, enable ) )\r
+void vT2_3InterruptHandler( void )\r
+{\r
+       portYIELD_FROM_ISR( xSecondTimerHandler() );\r
+}\r
+\r
+\r
+\r
+\r
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.h b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/IntQueueTimer.h
new file mode 100644 (file)
index 0000000..f88c4ec
--- /dev/null
@@ -0,0 +1,74 @@
+/*\r
+    FreeRTOS V8.0.0 - Copyright (C) 2014 Real Time Engineers Ltd. \r
+    All rights reserved\r
+\r
+    VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
+\r
+    ***************************************************************************\r
+     *                                                                       *\r
+     *    FreeRTOS provides completely free yet professionally developed,    *\r
+     *    robust, strictly quality controlled, supported, and cross          *\r
+     *    platform software that has become a de facto standard.             *\r
+     *                                                                       *\r
+     *    Help yourself get started quickly and support the FreeRTOS         *\r
+     *    project by purchasing a FreeRTOS tutorial book, reference          *\r
+     *    manual, or both from: http://www.FreeRTOS.org/Documentation        *\r
+     *                                                                       *\r
+     *    Thank you!                                                         *\r
+     *                                                                       *\r
+    ***************************************************************************\r
+\r
+    This file is part of the FreeRTOS distribution.\r
+\r
+    FreeRTOS is free software; you can redistribute it and/or modify it under\r
+    the terms of the GNU General Public License (version 2) as published by the\r
+    Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.\r
+\r
+    >>! NOTE: The modification to the GPL is included to allow you to distribute\r
+    >>! a combined work that includes FreeRTOS without being obliged to provide\r
+    >>! the source code for proprietary components outside of the FreeRTOS\r
+    >>! kernel.\r
+\r
+    FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY\r
+    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\r
+    FOR A PARTICULAR PURPOSE.  Full license text is available from the following\r
+    link: http://www.freertos.org/a00114.html\r
+\r
+    1 tab == 4 spaces!\r
+\r
+    ***************************************************************************\r
+     *                                                                       *\r
+     *    Having a problem?  Start by reading the FAQ "My application does   *\r
+     *    not run, what could be wrong?"                                     *\r
+     *                                                                       *\r
+     *    http://www.FreeRTOS.org/FAQHelp.html                               *\r
+     *                                                                       *\r
+    ***************************************************************************\r
+\r
+    http://www.FreeRTOS.org - Documentation, books, training, latest versions,\r
+    license and Real Time Engineers Ltd. contact details.\r
+\r
+    http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,\r
+    including FreeRTOS+Trace - an indispensable productivity tool, a DOS\r
+    compatible FAT file system, and our tiny thread aware UDP/IP stack.\r
+\r
+    http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High\r
+    Integrity Systems to sell under the OpenRTOS brand.  Low cost OpenRTOS\r
+    licenses offer ticketed support, indemnification and middleware.\r
+\r
+    http://www.SafeRTOS.com - High Integrity Systems also provide a safety\r
+    engineered and independently SIL3 certified version for use in safety and\r
+    mission critical applications that require provable dependability.\r
+\r
+    1 tab == 4 spaces!\r
+*/\r
+\r
+#ifndef INT_QUEUE_TIMER_H\r
+#define INT_QUEUE_TIMER_H\r
+\r
+void vInitialiseTimerForIntQueueTest( void );\r
+portBASE_TYPE xTimer0Handler( void );\r
+portBASE_TYPE xTimer1Handler( void );\r
+\r
+#endif\r
+\r
index 80d5cb0a31f5636c04ffa7adde07da3005086f65..739ab7e3f965565cbe4d32f910285eefee9e2abb 100644 (file)
@@ -75,7 +75,7 @@
 #include "partest.h"\r
 \r
 /* Hardware specifics. */\r
-//#include "iodefine.h"\r
+#include "rskrx64mdef.h"\r
 \r
 #define partestNUM_LEDS ( 4 )\r
 \r
@@ -85,14 +85,22 @@ long lParTestGetLEDState( unsigned long ulLED );
 \r
 void vParTestInitialise( void )\r
 {\r
-       /* Port pin configuration is done by the low level set up prior to this\r
-       function being called. */\r
+       /* First set the data levels. */\r
+       LED0 = LED_OFF;\r
+       LED1 = LED_OFF;\r
+       LED2 = LED_OFF;\r
+       LED3 = LED_OFF;\r
+\r
+       /* Set port direction registers. */\r
+       LED0_PIN_DIR = OUTPUT_PIN;\r
+       LED1_PIN_DIR = OUTPUT_PIN;\r
+       LED2_PIN_DIR = OUTPUT_PIN;\r
+       LED3_PIN_DIR = OUTPUT_PIN;\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
 void vParTestSetLED( unsigned long ulLED, signed long xValue )\r
 {\r
-#if 0\r
        if( ulLED < partestNUM_LEDS )\r
        {\r
                if( xValue != 0 )\r
@@ -135,13 +143,11 @@ void vParTestSetLED( unsigned long ulLED, signed long xValue )
                        taskEXIT_CRITICAL();\r
                }\r
        }\r
-#endif\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
 void vParTestToggleLED( unsigned long ulLED )\r
 {\r
-#if 0\r
        if( ulLED < partestNUM_LEDS )\r
        {\r
                taskENTER_CRITICAL();\r
@@ -157,14 +163,13 @@ void vParTestToggleLED( unsigned long ulLED )
                }\r
                taskEXIT_CRITICAL();\r
        }\r
-#endif\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
 long lParTestGetLEDState( unsigned long ulLED )\r
 {\r
 long lReturn = pdTRUE;\r
-#if 0\r
+\r
        if( ulLED < partestNUM_LEDS )\r
        {\r
                switch( ulLED )\r
@@ -191,7 +196,7 @@ long lReturn = pdTRUE;
                                                break;\r
                }\r
        }\r
-#endif\r
+\r
        return lReturn;\r
 }\r
 /*-----------------------------------------------------------*/\r
diff --git a/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/rskrx64mdef.h b/FreeRTOS/Demo/RX600_RX64M_RSK_Renesas_e2studio/Source/Renesas_Code/rskrx64mdef.h
new file mode 100644 (file)
index 0000000..be732e7
--- /dev/null
@@ -0,0 +1,82 @@
+/*******************************************************************************\r
+* DISCLAIMER\r
+* This software is supplied by Renesas Electronics Corporation and is only \r
+* intended for use with Renesas products. No other uses are authorized. This \r
+* software is owned by Renesas Electronics Corporation and is protected under\r
+* all applicable laws, including copyright laws.\r
+* THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING\r
+* THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT\r
+* LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE \r
+* AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.\r
+* TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS \r
+* ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE \r
+* FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR\r
+* ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE\r
+* BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\r
+* Renesas reserves the right, without notice, to make changes to this software\r
+* and to discontinue the availability of this software. By using this software,\r
+* you agree to the additional terms and conditions found by accessing the \r
+* following link:\r
+* http://www.renesas.com/disclaimer\r
+*******************************************************************************/\r
+/*******************************************************************************\r
+* Copyright (C) 2012 Renesas Electronics Corporation. All rights reserved.    */\r
+/*******************************************************************************\r
+* File Name     : rskrx64mdef.h\r
+* Version       : 1.00\r
+* Device        : R5F564ML\r
+* Tool-Chain    : Renesas RX Standard 2.01.0\r
+* H/W Platform  : RSK+RX64M\r
+* Description   : Defines macros relating to the RX64M user LEDs and switches\r
+*******************************************************************************/\r
+/*******************************************************************************\r
+* History       : 20 Mar. 2014 Ver. 0.00 Alpha Release\r
+*******************************************************************************/\r
+\r
+/*******************************************************************************\r
+* Macro Definitions\r
+*******************************************************************************/\r
+/* Multiple inclusion prevention macro */\r
+#ifndef RSKRX64MDEF_H\r
+#define RSKRX64MDEF_H\r
+\r
+/*******************************************************************************\r
+* User Includes (Project Level Includes)\r
+*******************************************************************************/\r
+/* Defines RX64M port registers */\r
+#include "r_cg_macrodriver.h"\r
+\r
+/* General Values */\r
+#define LED_ON          (0)\r
+#define LED_OFF         (1)\r
+#define SET_BIT_HIGH    (1)\r
+#define SET_BIT_LOW     (0)\r
+#define SET_BYTE_HIGH   (0xFF)\r
+#define SET_BYTE_LOW    (0x00)\r
+#define OUTPUT_PIN      (1)\r
+#define INPUT_PIN       (0)\r
+\r
+/* Switch port pins data direction */\r
+#define SW1_PIN_DIR     (PORT1.PDR.BIT.B5)\r
+#define SW2_PIN_DIR     (PORT1.PDR.BIT.B2)\r
+#define SW3_PIN_DIR     (PORT0.PDR.BIT.B7)\r
+\r
+/* Switches */\r
+#define SW1             (PORT1.PIDR.BIT.B5)\r
+#define SW2             (PORT1.PIDR.BIT.B2)\r
+#define SW3             (PORT0.PIDR.BIT.B7)\r
+\r
+/* LED data direction */\r
+#define LED0_PIN_DIR    (PORT0.PDR.BIT.B3)\r
+#define LED1_PIN_DIR    (PORT0.PDR.BIT.B5)\r
+#define LED2_PIN_DIR    (PORT2.PDR.BIT.B6)\r
+#define LED3_PIN_DIR    (PORT2.PDR.BIT.B7)\r
+\r
+/* LED ouptut pin settings */\r
+#define LED0                   (PORT0.PODR.BIT.B3)\r
+#define LED1            (PORT0.PODR.BIT.B5)\r
+#define LED2            (PORT2.PODR.BIT.B6)\r
+#define LED3            (PORT2.PODR.BIT.B7)\r
+\r
+/* End of multiple inclusion prevention macro */\r
+#endif\r
index 4c51843c5ba72eabace08f0689e9178182007634..f80363805fa93c8bec24a180688a50081eb174dc 100644 (file)
@@ -163,6 +163,9 @@ int main( void )
 \r
 static void prvSetupHardware( void )\r
 {\r
+       /* Set up the ports used by the LED outputs (the name ParTest is now\r
+       obsolete - it originally came from "parallel port test"). */\r
+       vParTestInitialise();\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index efa49c50473299dbf8f1f53acc3071aea78da281..8eb620c75a1323119a8fda8a074c2da02c9676d9 100644 (file)
  * In addition to the standard demo tasks, the following tasks and tests are\r
  * defined and/or created within this file:\r
  *\r
- * FreeRTOS+CLI command console.  The command console is access through the\r
- * UART to USB connector on the ZC702 Zynq development board (marked J2).  For\r
- * reasons of robustness testing the UART driver is deliberately written to be\r
- * inefficient and should not be used as a template for a production driver.\r
- * Type "help" to see a list of registered commands.  The FreeRTOS+CLI license\r
- * is different to the FreeRTOS license, see http://www.FreeRTOS.org/cli for\r
- * license and usage details.  The default baud rate is 115200.\r
- *\r
- * "Reg test" tasks - These fill both the core and floating point registers with\r
- * known values, then check that each register maintains its expected value for\r
- * the lifetime of the task.  Each task uses a different set of values.  The reg\r
- * test tasks execute with a very low priority, so get preempted very\r
- * frequently.  A register containing an unexpected value is indicative of an\r
- * error in the context switching mechanism.\r
+ * "Reg test" tasks - These fill the core registers with known values, then\r
+ * check that each register maintains its expected value for the lifetime of the\r
+ * task.  Each task uses a different set of values.  The reg test tasks execute\r
+ * with a very low priority, so get preempted very frequently.  A register\r
+ * containing an unexpected value is indicative of an error in the context\r
+ * switching mechanism.\r
  *\r
  * "Check" task - The check task period is initially set to three seconds.  The\r
  * task checks that all the standard demo tasks, and the register check tasks,\r
 #include "QueueOverwrite.h"\r
 #include "IntQueue.h"\r
 #include "EventGroupsDemo.h"\r
+#include "flash.h"\r
 \r
 /* Priorities for the demo application tasks. */\r
 #define mainSEM_TEST_PRIORITY                          ( tskIDLE_PRIORITY + 1UL )\r
 #define mainCOM_TEST_TASK_PRIORITY                     ( tskIDLE_PRIORITY + 2 )\r
 #define mainCHECK_TASK_PRIORITY                                ( configMAX_PRIORITIES - 1 )\r
 #define mainQUEUE_OVERWRITE_PRIORITY           ( tskIDLE_PRIORITY )\r
+#define mainFLASH_PRIORITY                                     ( tskIDLE_PRIORITY )\r
 \r
 /* The priority used by the UART command console task. */\r
 #define mainUART_COMMAND_CONSOLE_TASK_PRIORITY ( configMAX_PRIORITIES - 2 )\r
 \r
 /* The LED used by the check timer. */\r
-#define mainCHECK_LED                                          ( 0 )\r
+#define mainCHECK_LED                                          ( 3 )\r
 \r
 /* A block time of zero simply means "don't block". */\r
 #define mainDONT_BLOCK                                         ( 0UL )\r
@@ -233,7 +227,7 @@ void main_full( void )
        /* Start all the other standard demo/test tasks.  They have not particular\r
        functionality, but do demonstrate how to use the FreeRTOS API and test the\r
        kernel port. */\r
-//     vStartInterruptQueueTasks();\r
+       vStartInterruptQueueTasks();\r
        vStartDynamicPriorityTasks();\r
        vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );\r
        vCreateBlockTimeTasks();\r
@@ -245,13 +239,7 @@ void main_full( void )
        vStartTimerDemoTask( mainTIMER_TEST_PERIOD );\r
        vStartQueueOverwriteTask( mainQUEUE_OVERWRITE_PRIORITY );\r
        vStartEventGroupTasks();\r
-\r
-       /* Start the tasks that implements the command console on the UART, as\r
-       described above. */\r
-//     vUARTCommandConsoleStart( mainUART_COMMAND_CONSOLE_STACK_SIZE, mainUART_COMMAND_CONSOLE_TASK_PRIORITY );\r
-\r
-       /* Register the standard CLI commands. */\r
-//     vRegisterSampleCLICommands();\r
+       vStartLEDFlashTasks( mainFLASH_PRIORITY );\r
 \r
        /* Create the register check tasks, as described at the top of this     file */\r
        xTaskCreate( prvRegTestTaskEntry1, "Reg1", configMINIMAL_STACK_SIZE, mainREG_TEST_TASK_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r