Added YRDKRL78G14 build configuration to the IAR RL78 demo.

This commit is contained in:
Richard Barry 2013-02-24 19:48:26 +00:00
parent a5d0e3f0c1
commit 17bba16fa6
12 changed files with 1389 additions and 213 deletions

View File

@ -91,15 +91,11 @@
asm file. It is valid in a C file, but not valid in an asm file. */
#ifdef __IAR_SYSTEMS_ICC__
#pragma language=extended
// #pragma language=extended
#pragma system_include
#include <intrinsics.h>
/* Device specific includes. */
#include <ior5f100le.h>
#include <ior5f100le_ext.h>
#endif /* __IAR_SYSTEMS_ICC__ */
#define configUSE_PREEMPTION 1
@ -142,26 +138,7 @@ to exclude the API function. */
#define INCLUDE_xTimerGetTimerDaemonTaskHandle 0
/******************************************************************************
* PORT SPECIFIC CONFIGURATION OPTIONS
******************************************************************************/
/*
* RL78/G13 Clock Source Configuration
* 1 = use internal High Speed Clock Source (typically 32Mhz on the RL78/G13)
* 0 = use external Clock Source
*/
#define configCLOCK_SOURCE 1
#if configCLOCK_SOURCE == 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 20000000 ) /* using the external clock source */
#else
#define configCPU_CLOCK_HZ ( ( unsigned long ) 32000000 ) /* using the internal high speed clock */
#endif /* configCLOCK_SOURCE */
#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
#endif /* FREERTOS_CONFIG_H */

View File

@ -3,7 +3,7 @@
<project>
<fileVersion>2</fileVersion>
<configuration>
<name>Debug</name>
<name>YRPBRL78G13</name>
<toolchain>
<name>RL78</name>
</toolchain>
@ -255,6 +255,309 @@
<file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\FreeRTOS\OpenRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
<loadFlag>1</loadFlag>
</plugin>
<plugin>
<file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$EW_DIR$\common\plugins\Stack\Stack.ENU.ewplugin</file>
<loadFlag>1</loadFlag>
</plugin>
<plugin>
<file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
<loadFlag>1</loadFlag>
</plugin>
</debuggerPlugins>
</configuration>
<configuration>
<name>YRDKRL78G14</name>
<toolchain>
<name>RL78</name>
</toolchain>
<debug>1</debug>
<settings>
<name>C-SPY</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>DebugMandatory</name>
<state>1</state>
</option>
<option>
<name>DebugInput</name>
<state>1</state>
</option>
<option>
<name>DebugProcessorVariant</name>
<state>0</state>
</option>
<option>
<name>DebuggerNearConstLocation</name>
<state>0</state>
</option>
<option>
<name>DebugRunToEnable</name>
<state>1</state>
</option>
<option>
<name>DebugRunToName</name>
<state>main</state>
</option>
<option>
<name>DebugMacOverride</name>
<state>0</state>
</option>
<option>
<name>DebugMacFile</name>
<state></state>
</option>
<option>
<name>DynDriver</name>
<state>TKRL78</state>
</option>
<option>
<name>DebugDDFOverride</name>
<state>0</state>
</option>
<option>
<name>DebugDDFFile</name>
<state>$TOOLKIT_DIR$\CONFIG\DDF\ior5f104pj.ddf</state>
</option>
<option>
<name>DebugCUseExtraOptions</name>
<state>0</state>
</option>
<option>
<name>DebugExtraOptions</name>
<state></state>
</option>
<option>
<name>DebugImagesSuppressCheck1</name>
<state>0</state>
</option>
<option>
<name>DebugImagesPath1</name>
<state></state>
</option>
<option>
<name>DebugImagesSuppressCheck2</name>
<state>0</state>
</option>
<option>
<name>DebugImagesPath2</name>
<state></state>
</option>
<option>
<name>DebugImagesSuppressCheck3</name>
<state>0</state>
</option>
<option>
<name>DebugImagesPath3</name>
<state></state>
</option>
<option>
<name>DebugImagesOffset1</name>
<state></state>
</option>
<option>
<name>DebugImagesOffset2</name>
<state></state>
</option>
<option>
<name>DebugImagesOffset3</name>
<state></state>
</option>
<option>
<name>DebugImagesUse1</name>
<state>0</state>
</option>
<option>
<name>DebugImagesUse2</name>
<state>0</state>
</option>
<option>
<name>DebugImagesUse3</name>
<state>0</state>
</option>
</data>
</settings>
<settings>
<name>E1RL78</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>E1Mandatory</name>
<state>0</state>
</option>
<option>
<name>E1SuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1VerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1LogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
<option>
<name>E1DoLogfile</name>
<state>0</state>
</option>
</data>
</settings>
<settings>
<name>E20RL78</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>E20Mandatory</name>
<state>0</state>
</option>
<option>
<name>E20SuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E20VerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E20LogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
<option>
<name>E20DoLogfile</name>
<state>0</state>
</option>
</data>
</settings>
<settings>
<name>IECRL78</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>IecMandatory</name>
<state>0</state>
</option>
<option>
<name>IecSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>IecVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>IecLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
<option>
<name>IecDoLogfile</name>
<state>0</state>
</option>
<option>
<name>IecSupExchAdapter</name>
<state>0</state>
</option>
</data>
</settings>
<settings>
<name>SIMRL78</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>SimMandatory</name>
<state>1</state>
</option>
</data>
</settings>
<settings>
<name>TKRL78</name>
<archiveVersion>1</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>TKMandatory</name>
<state>0</state>
</option>
<option>
<name>TKSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>TKVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>TKLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
<option>
<name>TKDoLogfile</name>
<state>0</state>
</option>
</data>
</settings>
<debuggerPlugins>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\FreeRTOS\OpenRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>

File diff suppressed because it is too large Load Diff

View File

@ -58,9 +58,6 @@
;------------------------------------------------------------------------------
#if __CORE__ != __RL78_1__
#error "This file is only for RL78 Devices"
#endif
; Functions implemented in this file
;------------------------------------------------------------------------------
@ -68,9 +65,11 @@
PUBLIC vRegTest1
PUBLIC vRegTest2
; Functions used by this file
; Functions and variables used by this file
;------------------------------------------------------------------------------
EXTERN vRegTestError
EXTERN usRegTest1LoopCounter
EXTERN usRegTest2LoopCounter
;------------------------------------------------------------------------------
; Fill all the registers with known values, then check that the registers
@ -146,6 +145,9 @@ loop1:
#endif
; Indicate that this task is still cycling.
INCW usRegTest1LoopCounter
MOVW AX, #0x1122
BR loop1
@ -207,6 +209,9 @@ loop2:
#endif
; Indicate that this task is still cycling.
INCW usRegTest2LoopCounter
MOVW AX, #0x99aa
BR loop2

View File

@ -152,7 +152,7 @@ its own executions. */
#define mainDEMO_TIMER_PERIOD_MS ( mainCHECK_TIMER_PERIOD_MS / mainDEMO_TIMER_INCREMENTS_PER_CHECK_TIMER_TIMEOUT )
/* The LED toggled by the check timer. */
#define mainLED_0 P7_bit.no7
#define mainLED_0 P1_bit.no0
/* A block time of zero simple means "don't block". */
#define mainDONT_BLOCK ( 0U )
@ -184,10 +184,9 @@ extern void vRegTest2( void *pvParameters );
/*-----------------------------------------------------------*/
/* If an error is discovered by one of the RegTest tasks then this flag is set
to pdFAIL. The 'check' timer then inspects this flag to detect errors within
the RegTest tasks. */
static short sRegTestStatus = pdPASS;
/* Variables that are incremented on each cycle of the two reg tests to allow
the check timer to know that they are still executing. */
unsigned short usRegTest1LoopCounter = 0, usRegTest2LoopCounter;
/* The check timer. This uses prvCheckTimerCallback() as its callback
function. */
@ -203,13 +202,13 @@ static volatile unsigned long ulDemoSoftwareTimerCounter = 0UL;
enabled. */
__root __far const unsigned char OptionByte[] @ 0x00C0 =
{
WATCHDOG_DISABLED, LVI_ENABLED, RESERVED_FF, OCD_ENABLED
0x00U, 0xFFU, 0xF8U, 0x81U
};
/* Security byte definition */
__root __far const unsigned char SecuIDCode[] @ 0x00C4 =
__root __far const unsigned char ucSecurityCode[] @ 0x00C4 =
{
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
/*-----------------------------------------------------------*/
@ -274,6 +273,7 @@ static void prvDemoTimerCallback( xTimerHandle xTimer )
static void prvCheckTimerCallback( xTimerHandle xTimer )
{
static portBASE_TYPE xChangedTimerPeriodAlready = pdFALSE, xErrorStatus = pdPASS;
static unsigned short usLastRegTest1Counter = 0, usLastRegTest2Counter = 0;
/* Inspect the status of the standard demo tasks. */
if( xAreDynamicPriorityTasksStillRunning() != pdTRUE )
@ -291,11 +291,25 @@ static portBASE_TYPE xChangedTimerPeriodAlready = pdFALSE, xErrorStatus = pdPASS
xErrorStatus = pdFAIL;
}
/* Inspect the status of the reg test tasks. */
if( sRegTestStatus != pdPASS )
/* Indicate an error if either of the reg test loop counters have not
incremented since the last time this function was called. */
if( usLastRegTest1Counter == usRegTest1LoopCounter )
{
xErrorStatus = pdFAIL;
}
else
{
usLastRegTest1Counter = usRegTest1LoopCounter;
}
if( usLastRegTest2Counter == usRegTest2LoopCounter )
{
xErrorStatus = pdFAIL;
}
else
{
usLastRegTest2Counter = usRegTest2LoopCounter;
}
/* Ensure that the demo software timer has expired
mainDEMO_TIMER_INCREMENTS_PER_CHECK_TIMER_TIMEOUT times in between
@ -340,12 +354,6 @@ unsigned portCHAR ucResetFlag = RESF;
portDISABLE_INTERRUPTS();
/* Clock Configuration:
In this port, to use the internal high speed clock source of the
microcontroller, define the configCLOCK_SOURCE as 1 in FreeRTOSConfig.h. To
use an external clock define configCLOCK_SOURCE as 0. */
#if configCLOCK_SOURCE == 1
{
/* Set fMX */
CMC = 0x00;
MSTOP = 1U;
@ -362,47 +370,17 @@ unsigned portCHAR ucResetFlag = RESF;
/* Set fIH */
HIOSTOP = 0U;
}
#else
{
unsigned char ucTempStabset, ucTempStabWait;
/* Set fMX */
CMC = 0x41;
OSTS = 0x07;
MSTOP = 0U;
ucTempStabset = 0xFF;
do
{
ucTempStabWait = OSTC;
ucTempStabWait &= ucTempStabset;
}
while( ucTempStabWait != ucTempStabset );
/* Set fMAIN */
MCM0 = 1U;
/* Set fSUB */
XTSTOP = 1U;
OSMC = 0x10;
/* Set fCLK */
CSS = 0U;
/* Set fIH */
HIOSTOP = 0U;
}
#endif /* configCLOCK_SOURCE == 1 */
/* LED port initialization - set port register. */
P7 &= 0x7F;
// P7 &= 0x7F;
P1 &= 0xFE;
/* Set port mode register. */
PM7 &= 0x7F;
// PM7 &= 0x7F;
PM1 &= 0xFE;
/* Switch pin initialization - enable pull-up resistor. */
PU12_bit.no0 = 1;
// PU12_bit.no0 = 1;
return pdTRUE;
}
@ -410,12 +388,9 @@ unsigned portCHAR ucResetFlag = RESF;
void vRegTestError( void )
{
/* Called by the RegTest tasks if an error is found. lRegTestStatus is
inspected by the check task. */
sRegTestStatus = pdFAIL;
/* Do not return from here as the reg test tasks clobber all registers so
function calls may not function correctly. */
/* Called by both reg test tasks if an error is found. There is no way out
of this function so the loop counter of the calling task will stop
incrementing, which will result in the check timer signialling an error. */
for( ;; );
}
/*-----------------------------------------------------------*/

View File

@ -2,14 +2,23 @@
@REM C-SPY Debugger, as an aid to preparing a command line for running
@REM the cspybat command line utility using the appropriate settings.
@REM
@REM You can launch cspybat by typing the name of this batch file followed
@REM by the name of the debug file (usually an ELF/DWARF or UBROF file).
@REM Note that this file is generated every time a new debug session
@REM is initialized, so you may want to move or rename the file before
@REM making changes.
@REM
@REM You can launch cspybat by typing the name of this batch file followed
@REM by the name of the debug file (usually an ELF/DWARF or UBROF file).
@REM
@REM Read about available command line parameters in the C-SPY Debugging
@REM Guide. Hints about additional command line parameters that may be
@REM useful in specific cases:
@REM --download_only Downloads a code image without starting a debug
@REM session afterwards.
@REM --silent Omits the sign-on message.
@REM --timeout Limits the maximum allowed execution time.
@REM
"C:\devtools\IAR Systems\Embedded Workbench 6.0\common\bin\cspybat" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78proc.dll" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78ocd.dll" %1 --plugin "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78bat.dll" --backend -B "--core" "rl78_1" "--near_const_location" "rom0" "--near_const_start" "0xf2000" "--near_const_size" "51.75" "-p" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\CONFIG\DDF\ior5f100le.ddf" "-d" "tk"
"C:\devtools\IAR Systems\Embedded Workbench 6.0\common\bin\cspybat" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78proc.dll" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78ocd.dll" %1 --plugin "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\bin\rl78bat.dll" --backend -B "--core" "rl78_2" "--near_const_location" "rom0" "--near_const_start" "0xf3000" "--near_const_size" "27.75" "-p" "C:\devtools\IAR Systems\Embedded Workbench 6.0\rl78\CONFIG\DDF\ior5f104pj.ddf" "-d" "tk"

View File

@ -19,19 +19,19 @@
<Column0>188</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
<Column0>242</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
</Workspace>
<Disassembly>
<PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><MixedMode>1</MixedMode><CodeCovShow>1</CodeCovShow><InstrProfShow>1</InstrProfShow></Disassembly>
<STACK2><PreferedWindows><Position>1</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></STACK2><Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register></Static>
<PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><MixedMode>1</MixedMode><CodeCovShow>1</CodeCovShow><InstrProfShow>1</InstrProfShow><col-names><item>Disassembly</item><item>_I0</item></col-names><col-widths><item>500</item><item>20</item></col-widths><DisasmHistory/><ShowCodeCoverage>0</ShowCodeCoverage><ShowInstrProfiling>0</ShowInstrProfiling></Disassembly>
<STACK2><PreferedWindows><Position>1</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></STACK2><Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register><WATCH_1><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><expressions><item></item></expressions><col-names><item>Expression</item><item>Location</item><item>Type</item><item>Value</item></col-names><col-widths><item>100</item><item>150</item><item>100</item><item>100</item></col-widths></WATCH_1></Static>
<Windows>
<Wnd0>
<Wnd1>
<Tabs>
<Tab>
<Identity>TabID-30626-17561</Identity>
@ -47,7 +47,7 @@
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd0><Wnd1>
<SelectedTab>0</SelectedTab></Wnd1><Wnd4>
<Tabs>
<Tab>
<Identity>TabID-8606-17564</Identity>
@ -59,20 +59,20 @@
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd1></Windows>
<SelectedTab>0</SelectedTab></Wnd4><Wnd5><Tabs><Tab><Identity>TabID-3875-4388</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd5></Windows>
<Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>231</YPos><SelStart>11243</SelStart><SelEnd>11243</SelEnd></Tab><ActiveTab>0</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\portmacro.h</Filename><XPos>0</XPos><YPos>70</YPos><SelStart>4200</SelStart><SelEnd>4200</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\MemMang\heap_1.c</Filename><XPos>0</XPos><YPos>103</YPos><SelStart>5748</SelStart><SelEnd>5748</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>76</YPos><SelStart>4876</SelStart><SelEnd>4876</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\RegTest.s87</Filename><XPos>0</XPos><YPos>124</YPos><SelStart>5213</SelStart><SelEnd>5213</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\tasks.c</Filename><XPos>0</XPos><YPos>1245</YPos><SelStart>46367</SelStart><SelEnd>46367</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port_iodefine.h</Filename><XPos>0</XPos><YPos>750</YPos><SelStart>23118</SelStart><SelEnd>23118</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>185</YPos><SelStart>10072</SelStart><SelEnd>10072</SelEnd></Tab><ActiveTab>6</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port.c</Filename><XPos>0</XPos><YPos>231</YPos><SelStart>9542</SelStart><SelEnd>9542</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port_iodefine_ext.h</Filename><XPos>0</XPos><YPos>303</YPos><SelStart>9467</SelStart><SelEnd>9467</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\portasm.s87</Filename><XPos>0</XPos><YPos>65</YPos><SelStart>4092</SelStart><SelEnd>4092</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\Common\Minimal\dynamic.c</Filename><XPos>0</XPos><YPos>370</YPos><SelStart>16102</SelStart><SelEnd>16102</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-01bf0d90><key>iaridepm.enu1</key></Toolbar-01bf0d90></Sizes></Row0><Row1><Sizes><Toolbar-02bb4d40><key>debuggergui.enu1</key></Toolbar-02bb4d40><Toolbar-02bb55d8><key>rl78ocd.enu1</key></Toolbar-02bb55d8></Sizes></Row1></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>631</Bottom><Right>262</Right><x>-2</x><y>-2</y><xscreen>264</xscreen><yscreen>244</yscreen><sizeHorzCX>206250</sizeHorzCX><sizeHorzCY>259023</sizeHorzCY><sizeVertCX>206250</sizeVertCX><sizeVertCY>671975</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>242</Bottom><Right>1282</Right><x>-2</x><y>-2</y><xscreen>1284</xscreen><yscreen>244</yscreen><sizeHorzCX>1003125</sizeHorzCX><sizeHorzCY>259023</sizeHorzCY><sizeVertCX>206250</sizeVertCX><sizeVertCY>259023</sizeVertCY></Rect></Wnd0></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-01349228><key>iaridepm.enu1</key></Toolbar-01349228></Sizes></Row0><Row1><Sizes><Toolbar-04b811e8><key>debuggergui.enu1</key></Toolbar-04b811e8><Toolbar-0b5d8968><key>rl78ocd.enu1</key></Toolbar-0b5d8968></Sizes></Row1><Row2><Sizes/></Row2><Row3><Sizes/></Row3><Row4><Sizes/></Row4><Row5><Sizes/></Row5><Row6><Sizes/></Row6><Row7><Sizes/></Row7><Row8><Sizes/></Row8></Top><Left><Row0><Sizes><Wnd4><Rect><Top>-2</Top><Left>-2</Left><Bottom>808</Bottom><Right>316</Right><x>-2</x><y>-2</y><xscreen>141</xscreen><yscreen>108</yscreen><sizeHorzCX>83929</sizeHorzCX><sizeHorzCY>109980</sizeHorzCY><sizeVertCX>189286</sizeVertCX><sizeVertCY>824847</sizeVertCY></Rect></Wnd4></Sizes></Row0></Left><Right><Row0><Sizes><Wnd5><Rect><Top>-2</Top><Left>-2</Left><Bottom>808</Bottom><Right>684</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>408333</sizeVertCX><sizeVertCY>824847</sizeVertCY></Rect></Wnd5></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>106</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>108</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>109980</sizeHorzCY><sizeVertCX>83929</sizeVertCX><sizeVertCY>109980</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Project>

View File

@ -15,7 +15,7 @@ TypeViolation=1
UnspecRange=1
ActionState=1
[DebugChecksum]
Checksum=-1460440724
Checksum=104434279
[DisAssemblyWindow]
NumStates=_ 1
State 1=_ 1
@ -24,12 +24,12 @@ Enabled=_ 0
[CodeCoverage]
Enabled=_ 0
[E1]
Map0=0,0,65535,65536
Map1=1,1044224,1048319,4096
Map0=0,0,262143,262144
Map1=1,1023744,1048319,24576
MapEntries=2
HWsettings=1,0,0,0,4,0,1,0,16,16
HWsettings=3,0,1,2,4,0,1,0,16,1
HWsettingsCube=2,4294967295,2,4294967295,0,1,0,0
HWsettingsRsuid=55555555555555555554
HWsettingsRsuid=FFFFFFFFFFFFFFFFFFFF
EventEntries=0
SeqName0=
SeqData0=0,0
@ -75,11 +75,12 @@ TraceSettings=64,0,0,0,0,0,8192
TimerSettings=0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CoverSettings=1048192,1048207,0
Version=1,xxx.txt
LastDevFile=DR5F100LE.DVF
LastDevFile=DR5F104PJ.DVF
EmulType=64
BreakToggle=0
EventLimits=0, 1, 1, 0, 0, 0, 2
EventLimits=0,1,1,0,0,0,2
LastSetupFailed=1
ForceHwSetup=0
[StackPlugin]
Enabled=1
OverflowWarningsEnabled=1
@ -92,12 +93,12 @@ LimitSize=0
ByteLimit=50
[TK]
LastSetupFailed=0
Map0=0,0,65535,65536
Map1=1,1044224,1048319,4096
Map0=0,0,262143,262144
Map1=1,1023744,1048319,24576
MapEntries=2
HWsettings=1,0,0,2,4,0,1,0,16,1
HWsettings=3,0,1,2,4,0,1,0,16,1
HWsettingsCube=2,4294967295,2,4294967295,0,1,0,0
HWsettingsRsuid=55555555555555555554
HWsettingsRsuid=00000000000000000000
EventEntries=0
SeqName0=
SeqData0=0,0
@ -139,14 +140,15 @@ SeqEnable34=0,0,0,0,0,0,0,0,0,0
SeqEnable44=0,0,0,0,0,0,0,0,0,0
SeqDisable4=0,0,0,0,0,0,0,0,0,0
SeqData24=0,0,0,0,0,0
TraceSettings=64,0,0,0,0,0,8192
TraceSettings=128,0,0,0,0,0,8192
TimerSettings=0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CoverSettings=1048192,1048207,0
Version=1,trace.txt
LastDevFile=DR5F100LE.DVF
LastDevFile=DR5F104PJ.DVF
EmulType=256
BreakToggle=0
EventLimits=0, 1, 1, 0, 0, 0, 2
EventLimits=0,2,2,0,0,0,2
ForceHwSetup=0
[Stack]
FillEnabled=0
OverflowWarningsEnabled=1
@ -159,6 +161,8 @@ LimitSize=0
ByteLimit=50
[CallStack]
ShowArgs=0
[Disassembly]
MixedMode=1
[Log file]
LoggingEnabled=_ 0
LogFile=_ ""
@ -176,9 +180,9 @@ Enabled=0
Mode=0
Graph=0
Symbiont=0
Exclusions=
[Breakpoints]
Bp0=_ "STD_CODE" "{$PROJ_DIR$\..\..\Source\portable\MemMang\heap_1.c}.121.4@1" 1 0 0 0 "" 0 ""
Count=1
Count=0
[Aliases]
A0=_ "C:\Data\RL78_STICK\FreeRTOSV6.1.1\Source\portable\IAR\RL78\portasm.s87" "E:\Data\RL78_STICK\FreeRTOSV6.1.1\Source\portable\IAR\RL78\portasm.s87"
Count=1

View File

@ -3,7 +3,7 @@
<Workspace>
<ConfigDictionary>
<CurrentConfigs><Project>RTOSDemo/Debug</Project></CurrentConfigs></ConfigDictionary>
<CurrentConfigs><Project>RTOSDemo/YRDKRL78G14</Project></CurrentConfigs></ConfigDictionary>
<Desktop>
<Static>
<Workspace>
@ -12,12 +12,12 @@
<Column0>244</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
<Column0>319</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
</Workspace>
<Build><ColumnWidth0>20</ColumnWidth0><ColumnWidth1>684</ColumnWidth1><ColumnWidth2>182</ColumnWidth2><ColumnWidth3>45</ColumnWidth3></Build><TerminalIO/><Debug-Log><ColumnWidth0>20</ColumnWidth0><ColumnWidth1>1218</ColumnWidth1></Debug-Log><Disassembly><MixedMode>1</MixedMode><CodeCovShow>1</CodeCovShow><InstrProfShow>1</InstrProfShow></Disassembly><Find-in-Files><ColumnWidth0>439</ColumnWidth0><ColumnWidth1>62</ColumnWidth1><ColumnWidth2>753</ColumnWidth2></Find-in-Files></Static>
<Windows>
<Wnd2>
<Wnd0>
<Tabs>
<Tab>
<Identity>TabID-25565-17041</Identity>
@ -25,24 +25,24 @@
<Factory>Workspace</Factory>
<Session>
<NodeDict><ExpandedNode>RTOSDemo</ExpandedNode></NodeDict></Session>
<NodeDict><ExpandedNode>RTOSDemo</ExpandedNode><ExpandedNode>RTOSDemo/Demo Source</ExpandedNode><ExpandedNode>RTOSDemo/Kernel Source</ExpandedNode><ExpandedNode>RTOSDemo/Kernel Source/port.c</ExpandedNode></NodeDict></Session>
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd2><Wnd3><Tabs><Tab><Identity>TabID-4654-17433</Identity><TabName>Build</TabName><Factory>Build</Factory><Session/></Tab><Tab><Identity>TabID-7454-1824</Identity><TabName>Find in Files</TabName><Factory>Find-in-Files</Factory><Session/></Tab><Tab><Identity>TabID-32037-14096</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3></Windows>
<SelectedTab>0</SelectedTab></Wnd0><Wnd1><Tabs><Tab><Identity>TabID-4654-17433</Identity><TabName>Build</TabName><Factory>Build</Factory><Session/></Tab><Tab><Identity>TabID-7454-1824</Identity><TabName>Find in Files</TabName><Factory>Find-in-Files</Factory><Session/></Tab><Tab><Identity>TabID-32199-1847</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd1></Windows>
<Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>60</YPos><SelStart>11655</SelStart><SelEnd>11655</SelEnd></Tab><ActiveTab>0</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\portmacro.h</Filename><XPos>0</XPos><YPos>70</YPos><SelStart>4200</SelStart><SelEnd>4200</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\MemMang\heap_1.c</Filename><XPos>0</XPos><YPos>103</YPos><SelStart>5748</SelStart><SelEnd>5748</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>76</YPos><SelStart>4876</SelStart><SelEnd>4876</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\RegTest.s87</Filename><XPos>0</XPos><YPos>124</YPos><SelStart>5213</SelStart><SelEnd>5213</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\tasks.c</Filename><XPos>0</XPos><YPos>1245</YPos><SelStart>46367</SelStart><SelEnd>46367</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port_iodefine.h</Filename><XPos>0</XPos><YPos>750</YPos><SelStart>23118</SelStart><SelEnd>23118</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>185</YPos><SelStart>10072</SelStart><SelEnd>10072</SelEnd></Tab><ActiveTab>6</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port.c</Filename><XPos>0</XPos><YPos>231</YPos><SelStart>9542</SelStart><SelEnd>9542</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\port_iodefine_ext.h</Filename><XPos>0</XPos><YPos>303</YPos><SelStart>9467</SelStart><SelEnd>9467</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\portasm.s87</Filename><XPos>0</XPos><YPos>65</YPos><SelStart>4092</SelStart><SelEnd>4092</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\Common\Minimal\dynamic.c</Filename><XPos>0</XPos><YPos>370</YPos><SelStart>16102</SelStart><SelEnd>16102</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-01336518><key>iaridepm.enu1</key></Toolbar-01336518></Sizes></Row0></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>629</Bottom><Right>318</Right><x>-2</x><y>-2</y><xscreen>263</xscreen><yscreen>200</yscreen><sizeHorzCX>156548</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>190476</sizeVertCX><sizeVertCY>642566</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>309</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>311</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>316701</sizeHorzCY><sizeVertCX>205357</sizeVertCX><sizeVertCY>258656</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-01349228><key>iaridepm.enu1</key></Toolbar-01349228></Sizes></Row0><Row1><Sizes/></Row1><Row2><Sizes/></Row2><Row3><Sizes/></Row3><Row4><Sizes/></Row4><Row5><Sizes/></Row5><Row6><Sizes/></Row6><Row7><Sizes/></Row7><Row8><Sizes/></Row8><Row9><Sizes/></Row9></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>639</Bottom><Right>409</Right><x>-2</x><y>-2</y><xscreen>647</xscreen><yscreen>471</yscreen><sizeHorzCX>385119</sizeHorzCX><sizeHorzCY>479633</sizeHorzCY><sizeVertCX>244643</sizeVertCX><sizeVertCY>652749</sizeVertCY></Rect></Wnd0></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>299</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>301</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>306517</sizeHorzCY><sizeVertCX>505357</sizeVertCX><sizeVertCY>608961</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Workspace>

View File

@ -233,32 +233,32 @@ const unsigned short usClockHz = 15000UL; /* Internal clock. */
const unsigned short usCompareMatch = ( usClockHz / configTICK_RATE_HZ ) + 1UL;
/* Use the internal 15K clock. */
OSMC = 0x16U;
OSMC = ( unsigned char ) 0x16;
/* Supply the RTC clock. */
RTCEN = 1U;
RTCEN = ( unsigned char ) 1U;
/* Disable ITMC operation. */
ITMC = 0x0000;
ITMC = ( unsigned char ) 0x0000;
/* Disable INTIT interrupt. */
ITMK = 1U;
ITMK = ( unsigned char ) 1;
/* Set INTIT high priority */
ITPR1 = 1U;
ITPR0 = 1U;
/* Set interval. */
ITMC = usCompareMatch;
ITPR1 = ( unsigned char ) 1;
ITPR0 = ( unsigned char ) 1;
/* Clear INIT interrupt. */
ITIF = 0U;
ITIF = ( unsigned char ) 0;
/* Set interval and enable interrupt operation. */
ITMC = usCompareMatch | 0x8000U;
/* Enable INTIT interrupt. */
ITMK = 0U;
ITMK = ( unsigned char ) 0;
/* Enable IT operation. */
ITMC |= 0x8000;
// ITMC |= 0x8000;
}
/*-----------------------------------------------------------*/

View File

@ -53,11 +53,6 @@
#include "ISR_Support.h"
#if __CORE__ != __RL78_1__
#error "This file is only for RL78 Devices"
#endif
#define CS 0xFFFFC
#define ES 0xFFFFD

View File

@ -75,6 +75,9 @@
#ifndef PORTMACRO_H
#define PORTMACRO_H
#include "port_iodefine.h"
#include "port_iodefine_ext.h"
#ifdef __cplusplus
extern "C" {
#endif
@ -178,19 +181,6 @@ extern volatile unsigned short usCriticalNesting; \
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void *pvParameters )
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters )
/* --------------------------------------------------------------------------*/
/* Option-bytes and security ID */
/* --------------------------------------------------------------------------*/
#define OPT_BYTES_SIZE 4
#define SECU_ID_SIZE 10
#define WATCHDOG_DISABLED 0x00
#define LVI_ENABLED 0xFE
#define LVI_DISABLED 0xFF
#define RESERVED_FF 0xFF
#define OCD_DISABLED 0x04
#define OCD_ENABLED 0x81
#define OCD_ENABLED_ERASE 0x80
#ifdef __cplusplus
}
#endif