mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-20 05:21:59 -04:00
Continue 78K0R development.
This commit is contained in:
parent
46425b4099
commit
299557fed2
55
Demo/NEC_78K0R_IAR/ButtonISR.s26
Normal file
55
Demo/NEC_78K0R_IAR/ButtonISR.s26
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
; FreeRTOS.org V5.1.1 - Copyright (C) 2003-2008 Richard Barry.
|
||||||
|
;
|
||||||
|
; This file is part of the FreeRTOS.org distribution.
|
||||||
|
;
|
||||||
|
; FreeRTOS.org is free software; you can redistribute it and/or modify
|
||||||
|
; it under the terms of the GNU General Public License as published by
|
||||||
|
; the Free Software Foundation; either version 2 of the License, or
|
||||||
|
; (at your option) any later version.
|
||||||
|
;
|
||||||
|
; FreeRTOS.org is distributed in the hope that it will be useful,
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
; GNU General Public License for more details.
|
||||||
|
;
|
||||||
|
; You should have received a copy of the GNU General Public License
|
||||||
|
; along with FreeRTOS.org; if not, write to the Free Software
|
||||||
|
; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
;
|
||||||
|
; A special exception to the GPL can be applied should you wish to distribute
|
||||||
|
; a combined work that includes FreeRTOS.org, without being obliged to provide
|
||||||
|
; the source code for any proprietary components. See the licensing section
|
||||||
|
; of http://www.FreeRTOS.org for full details of how and when the exception
|
||||||
|
; can be applied.
|
||||||
|
;
|
||||||
|
; ***************************************************************************
|
||||||
|
; See http://www.FreeRTOS.org for documentation, latest information, license
|
||||||
|
; and contact details. Please ensure to read the configuration and relevant
|
||||||
|
; port sections of the online documentation.
|
||||||
|
; ***************************************************************************
|
||||||
|
;
|
||||||
|
;------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#include "ISR_Support.h"
|
||||||
|
|
||||||
|
PUBLIC vButtonISRWrapper
|
||||||
|
EXTERN vButtonISRHandler
|
||||||
|
|
||||||
|
RSEG CODE:CODE
|
||||||
|
|
||||||
|
vButtonISRWrapper:
|
||||||
|
portSAVE_CONTEXT
|
||||||
|
call vButtonISRHandler
|
||||||
|
portRESTORE_CONTEXT
|
||||||
|
RETI
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; Set ISR location to the Interrupt vector table.
|
||||||
|
COMMON INTVEC:CODE:ROOT(1)
|
||||||
|
ORG 8
|
||||||
|
`??vButtonISRWrapper??INTVEC 8`:
|
||||||
|
DW vButtonISRWrapper
|
||||||
|
|
||||||
|
|
||||||
|
END
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS.org V5.0.2 - Copyright (C) 2003-2008 Richard Barry.
|
FreeRTOS.org V5.1.1 - Copyright (C) 2003-2009 Richard Barry.
|
||||||
|
|
||||||
This file is part of the FreeRTOS.org distribution.
|
This file is part of the FreeRTOS.org distribution.
|
||||||
|
|
||||||
|
@ -47,12 +47,35 @@
|
||||||
licensing and training services.
|
licensing and training services.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef INTEGER_TASKS_H
|
#include "FreeRTOS.h"
|
||||||
#define INTEGER_TASKS_H
|
#include "task.h"
|
||||||
|
#include "semphr.h"
|
||||||
|
|
||||||
void vStartIntegerMathTasks( unsigned portBASE_TYPE uxPriority );
|
static xSemaphoreHandle xButtonSemaphore;
|
||||||
portBASE_TYPE xAreIntegerMathsTaskStillRunning( void );
|
|
||||||
|
|
||||||
#endif
|
#define LED01 P7_bit.no7
|
||||||
|
|
||||||
|
void vButtonTask( void *pvParameters )
|
||||||
|
{
|
||||||
|
vSemaphoreCreateBinary( xButtonSemaphore );
|
||||||
|
|
||||||
|
for( ;; )
|
||||||
|
{
|
||||||
|
xSemaphoreTake( xButtonSemaphore, portMAX_DELAY );
|
||||||
|
LED01 = !LED01;
|
||||||
|
|
||||||
|
vTaskDelay( 200 / portTICK_RATE_MS );
|
||||||
|
xSemaphoreTake( xButtonSemaphore, 0 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
void vButtonISRHandler( void )
|
||||||
|
{
|
||||||
|
short sHigherPriorityTaskWoken = pdFALSE;
|
||||||
|
|
||||||
|
xSemaphoreGiveFromISR( xButtonSemaphore, &sHigherPriorityTaskWoken );
|
||||||
|
|
||||||
|
portYIELD_FROM_ISR( sHigherPriorityTaskWoken );
|
||||||
|
}
|
||||||
|
/*-----------------------------------------------------------*/
|
|
@ -104,6 +104,7 @@
|
||||||
#define configUSE_16_BIT_TICKS 1
|
#define configUSE_16_BIT_TICKS 1
|
||||||
#define configIDLE_SHOULD_YIELD 1
|
#define configIDLE_SHOULD_YIELD 1
|
||||||
#define configCHECK_FOR_STACK_OVERFLOW 0
|
#define configCHECK_FOR_STACK_OVERFLOW 0
|
||||||
|
#define configUSE_MUTEXES 1
|
||||||
|
|
||||||
/* Co-routine definitions. */
|
/* Co-routine definitions. */
|
||||||
#define configUSE_CO_ROUTINES 0
|
#define configUSE_CO_ROUTINES 0
|
||||||
|
@ -111,11 +112,11 @@
|
||||||
|
|
||||||
/* Set the following definitions to 1 to include the API function, or zero
|
/* Set the following definitions to 1 to include the API function, or zero
|
||||||
to exclude the API function. */
|
to exclude the API function. */
|
||||||
#define INCLUDE_vTaskPrioritySet 0
|
#define INCLUDE_vTaskPrioritySet 1
|
||||||
#define INCLUDE_uxTaskPriorityGet 0
|
#define INCLUDE_uxTaskPriorityGet 1
|
||||||
#define INCLUDE_vTaskDelete 1
|
#define INCLUDE_vTaskDelete 1
|
||||||
#define INCLUDE_vTaskCleanUpResources 0
|
#define INCLUDE_vTaskCleanUpResources 0
|
||||||
#define INCLUDE_vTaskSuspend 0
|
#define INCLUDE_vTaskSuspend 1
|
||||||
#define INCLUDE_vTaskDelayUntil 1
|
#define INCLUDE_vTaskDelayUntil 1
|
||||||
#define INCLUDE_vTaskDelay 1
|
#define INCLUDE_vTaskDelay 1
|
||||||
|
|
||||||
|
|
|
@ -1,353 +0,0 @@
|
||||||
/*
|
|
||||||
FreeRTOS.org V5.0.2 - Copyright (C) 2003-2008 Richard Barry.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS.org distribution.
|
|
||||||
|
|
||||||
FreeRTOS.org is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
FreeRTOS.org is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with FreeRTOS.org; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
A special exception to the GPL can be applied should you wish to distribute
|
|
||||||
a combined work that includes FreeRTOS.org, without being obliged to provide
|
|
||||||
the source code for any proprietary components. See the licensing section
|
|
||||||
of http://www.FreeRTOS.org for full details of how and when the exception
|
|
||||||
can be applied.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* SAVE TIME AND MONEY! We can port FreeRTOS.org to your own hardware, *
|
|
||||||
* and even write all or part of your application on your behalf. *
|
|
||||||
* See http://www.OpenRTOS.com for details of the services we provide to *
|
|
||||||
* expedite your project. *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
Please ensure to read the configuration and relevant port sections of the
|
|
||||||
online documentation.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
|
||||||
contact details.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
|
||||||
licensing and training services.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
Changes from V1.2.3
|
|
||||||
|
|
||||||
+ The created tasks now include calls to tskYIELD(), allowing them to be used
|
|
||||||
with the cooperative scheduler.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* From the functionality point of view this module has the same behavior like
|
|
||||||
* the integer.c standard demo task but the used stack size is optimized so that
|
|
||||||
* not so much memory space is used which is not needed.
|
|
||||||
*
|
|
||||||
* This does the same as flop. c, but uses variables of type long instead of
|
|
||||||
* type double.
|
|
||||||
*
|
|
||||||
* As with flop. c, the tasks created in this file are a good test of the
|
|
||||||
* scheduler context switch mechanism. The processor has to access 32bit
|
|
||||||
* variables in two or four chunks (depending on the processor). The low
|
|
||||||
* priority of these tasks means there is a high probability that a context
|
|
||||||
* switch will occur mid calculation. See the flop. c documentation for
|
|
||||||
* more information.
|
|
||||||
*
|
|
||||||
* \page IntegerC integer.c
|
|
||||||
* \ingroup DemoFiles
|
|
||||||
* <HR>
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
Changes from V1.2.1
|
|
||||||
|
|
||||||
+ The constants used in the calculations are larger to ensure the
|
|
||||||
optimiser does not truncate them to 16 bits.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <stdlib.h>
|
|
||||||
|
|
||||||
/* Scheduler include files. */
|
|
||||||
#include "FreeRTOS.h"
|
|
||||||
#include "task.h"
|
|
||||||
#include "print.h"
|
|
||||||
|
|
||||||
/* Demo program include files. */
|
|
||||||
#include "integer.h"
|
|
||||||
|
|
||||||
#define intgSTACK_SIZE ( ( unsigned portSHORT ) 96 )
|
|
||||||
#define intgNUMBER_OF_TASKS ( 8 )
|
|
||||||
|
|
||||||
/* Four tasks, each of which performs a different calculation on four byte
|
|
||||||
variables. Each of the four is created twice. */
|
|
||||||
static void vCompeteingIntMathTask1( void *pvParameters );
|
|
||||||
static void vCompeteingIntMathTask2( void *pvParameters );
|
|
||||||
static void vCompeteingIntMathTask3( void *pvParameters );
|
|
||||||
static void vCompeteingIntMathTask4( void *pvParameters );
|
|
||||||
|
|
||||||
/* These variables are used to check that all the tasks are still running. If a
|
|
||||||
task gets a calculation wrong it will stop incrementing its check variable. */
|
|
||||||
static volatile unsigned portSHORT usTaskCheck[ intgNUMBER_OF_TASKS ] = { ( unsigned portSHORT ) 0 };
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
void vStartIntegerMathTasks( unsigned portBASE_TYPE uxPriority )
|
|
||||||
{
|
|
||||||
xTaskCreate( vCompeteingIntMathTask1, "IntMath1", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 0 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask2, "IntMath2", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 1 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask3, "IntMath3", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 2 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask4, "IntMath4", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 3 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask1, "IntMath5", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 4 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask2, "IntMath6", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 5 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask3, "IntMath7", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 6 ] ), uxPriority, NULL );
|
|
||||||
xTaskCreate( vCompeteingIntMathTask4, "IntMath8", intgSTACK_SIZE, ( void * ) &( usTaskCheck[ 7 ] ), uxPriority, NULL );
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vCompeteingIntMathTask1( void *pvParameters )
|
|
||||||
{
|
|
||||||
portLONG l1, l2, l3, l4;
|
|
||||||
portSHORT sError = pdFALSE;
|
|
||||||
volatile unsigned portSHORT *pusTaskCheckVariable;
|
|
||||||
const portLONG lAnswer = ( ( portLONG ) 74565L + ( portLONG ) 1234567L ) * ( portLONG ) -918L;
|
|
||||||
const portCHAR * const pcTaskStartMsg = "Integer math task 1 started.\r\n";
|
|
||||||
const portCHAR * const pcTaskFailMsg = "Integer math task 1 failed.\r\n";
|
|
||||||
|
|
||||||
/* Queue a message for printing to say the task has started. */
|
|
||||||
vPrintDisplayMessage( &pcTaskStartMsg );
|
|
||||||
|
|
||||||
/* The variable this task increments to show it is still running is passed in
|
|
||||||
as the parameter. */
|
|
||||||
pusTaskCheckVariable = ( unsigned portSHORT * ) pvParameters;
|
|
||||||
|
|
||||||
/* Keep performing a calculation and checking the result against a constant. */
|
|
||||||
for(;;)
|
|
||||||
{
|
|
||||||
l1 = ( portLONG ) 74565L;
|
|
||||||
l2 = ( portLONG ) 1234567L;
|
|
||||||
l3 = ( portLONG ) -918L;
|
|
||||||
|
|
||||||
l4 = ( l1 + l2 ) * l3;
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
/* If the calculation does not match the expected constant, stop the
|
|
||||||
increment of the check variable. */
|
|
||||||
if( l4 != lAnswer )
|
|
||||||
{
|
|
||||||
vPrintDisplayMessage( &pcTaskFailMsg );
|
|
||||||
sError = pdTRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( sError == pdFALSE )
|
|
||||||
{
|
|
||||||
/* If the calculation has always been correct, increment the check
|
|
||||||
variable so we know this task is still running okay. */
|
|
||||||
( *pusTaskCheckVariable )++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vCompeteingIntMathTask2( void *pvParameters )
|
|
||||||
{
|
|
||||||
portLONG l1, l2, l3, l4;
|
|
||||||
portSHORT sError = pdFALSE;
|
|
||||||
volatile unsigned portSHORT *pusTaskCheckVariable;
|
|
||||||
const portLONG lAnswer = ( ( portLONG ) -389000L / ( portLONG ) 329999L ) * ( portLONG ) -89L;
|
|
||||||
const portCHAR * const pcTaskStartMsg = "Integer math task 2 started.\r\n";
|
|
||||||
const portCHAR * const pcTaskFailMsg = "Integer math task 2 failed.\r\n";
|
|
||||||
|
|
||||||
/* Queue a message for printing to say the task has started. */
|
|
||||||
vPrintDisplayMessage( &pcTaskStartMsg );
|
|
||||||
|
|
||||||
/* The variable this task increments to show it is still running is passed in
|
|
||||||
as the parameter. */
|
|
||||||
pusTaskCheckVariable = ( unsigned portSHORT * ) pvParameters;
|
|
||||||
|
|
||||||
/* Keep performing a calculation and checking the result against a constant. */
|
|
||||||
for( ;; )
|
|
||||||
{
|
|
||||||
l1 = -389000L;
|
|
||||||
l2 = 329999L;
|
|
||||||
l3 = -89L;
|
|
||||||
|
|
||||||
l4 = ( l1 / l2 ) * l3;
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
/* If the calculation does not match the expected constant, stop the
|
|
||||||
increment of the check variable. */
|
|
||||||
if( l4 != lAnswer )
|
|
||||||
{
|
|
||||||
vPrintDisplayMessage( &pcTaskFailMsg );
|
|
||||||
sError = pdTRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( sError == pdFALSE )
|
|
||||||
{
|
|
||||||
/* If the calculation has always been correct, increment the check
|
|
||||||
variable so we know this task is still running okay. */
|
|
||||||
( *pusTaskCheckVariable )++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vCompeteingIntMathTask3( void *pvParameters )
|
|
||||||
{
|
|
||||||
portLONG *plArray, lTotal1, lTotal2;
|
|
||||||
portSHORT sError = pdFALSE;
|
|
||||||
volatile unsigned portSHORT *pusTaskCheckVariable;
|
|
||||||
const unsigned portSHORT usArraySize = ( unsigned portSHORT ) 125;
|
|
||||||
unsigned portSHORT usPosition;
|
|
||||||
const portCHAR * const pcTaskStartMsg = "Integer math task 3 started.\r\n";
|
|
||||||
const portCHAR * const pcTaskFailMsg = "Integer math task 3 failed.\r\n";
|
|
||||||
|
|
||||||
/* Queue a message for printing to say the task has started. */
|
|
||||||
vPrintDisplayMessage( &pcTaskStartMsg );
|
|
||||||
|
|
||||||
/* The variable this task increments to show it is still running is passed in
|
|
||||||
as the parameter. */
|
|
||||||
pusTaskCheckVariable = ( unsigned portSHORT * ) pvParameters;
|
|
||||||
|
|
||||||
/* Create the array we are going to use for our check calculation. */
|
|
||||||
plArray = ( portLONG * ) pvPortMalloc( ( size_t ) 125 * sizeof( portLONG ) );
|
|
||||||
|
|
||||||
/* Keep filling the array, keeping a running total of the values placed in the
|
|
||||||
array. Then run through the array adding up all the values. If the two totals
|
|
||||||
do not match, stop the check variable from incrementing. */
|
|
||||||
for( ;; )
|
|
||||||
{
|
|
||||||
lTotal1 = ( portLONG ) 0;
|
|
||||||
lTotal2 = ( portLONG ) 0;
|
|
||||||
|
|
||||||
for( usPosition = 0; usPosition < usArraySize; usPosition++ )
|
|
||||||
{
|
|
||||||
plArray[ usPosition ] = ( portLONG ) usPosition + ( portLONG ) 5;
|
|
||||||
lTotal1 += ( portLONG ) usPosition + ( portLONG ) 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
for( usPosition = 0; usPosition < usArraySize; usPosition++ )
|
|
||||||
{
|
|
||||||
lTotal2 += plArray[ usPosition ];
|
|
||||||
}
|
|
||||||
|
|
||||||
if( lTotal1 != lTotal2 )
|
|
||||||
{
|
|
||||||
vPrintDisplayMessage( &pcTaskFailMsg );
|
|
||||||
sError = pdTRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
if( sError == pdFALSE )
|
|
||||||
{
|
|
||||||
/* If the calculation has always been correct, increment the check
|
|
||||||
variable so we know this task is still running okay. */
|
|
||||||
( *pusTaskCheckVariable )++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vCompeteingIntMathTask4( void *pvParameters )
|
|
||||||
{
|
|
||||||
portLONG *plArray, lTotal1, lTotal2;
|
|
||||||
portSHORT sError = pdFALSE;
|
|
||||||
volatile unsigned portSHORT *pusTaskCheckVariable;
|
|
||||||
const unsigned portSHORT usArraySize = 125;
|
|
||||||
unsigned portSHORT usPosition;
|
|
||||||
const portCHAR * const pcTaskStartMsg = "Integer math task 4 started.\r\n";
|
|
||||||
const portCHAR * const pcTaskFailMsg = "Integer math task 4 failed.\r\n";
|
|
||||||
|
|
||||||
/* Queue a message for printing to say the task has started. */
|
|
||||||
vPrintDisplayMessage( &pcTaskStartMsg );
|
|
||||||
|
|
||||||
/* The variable this task increments to show it is still running is passed in
|
|
||||||
as the parameter. */
|
|
||||||
pusTaskCheckVariable = ( unsigned portSHORT * ) pvParameters;
|
|
||||||
|
|
||||||
/* Create the array we are going to use for our check calculation. */
|
|
||||||
plArray = ( portLONG * ) pvPortMalloc( ( size_t ) 125 * sizeof( portLONG ) );
|
|
||||||
|
|
||||||
/* Keep filling the array, keeping a running total of the values placed in the
|
|
||||||
array. Then run through the array adding up all the values. If the two totals
|
|
||||||
do not match, stop the check variable from incrementing. */
|
|
||||||
for( ;; )
|
|
||||||
{
|
|
||||||
lTotal1 = ( portLONG ) 0;
|
|
||||||
lTotal2 = ( portLONG ) 0;
|
|
||||||
|
|
||||||
for( usPosition = 0; usPosition < usArraySize; usPosition++ )
|
|
||||||
{
|
|
||||||
plArray[ usPosition ] = ( portLONG ) usPosition * ( portLONG ) 12;
|
|
||||||
lTotal1 += ( portLONG ) usPosition * ( portLONG ) 12;
|
|
||||||
}
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
for( usPosition = 0; usPosition < usArraySize; usPosition++ )
|
|
||||||
{
|
|
||||||
lTotal2 += plArray[ usPosition ];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if( lTotal1 != lTotal2 )
|
|
||||||
{
|
|
||||||
vPrintDisplayMessage( &pcTaskFailMsg );
|
|
||||||
sError = pdTRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
taskYIELD();
|
|
||||||
|
|
||||||
if( sError == pdFALSE )
|
|
||||||
{
|
|
||||||
/* If the calculation has always been correct, increment the check
|
|
||||||
variable so we know this task is still running okay. */
|
|
||||||
( *pusTaskCheckVariable )++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
/* This is called to check that all the created tasks are still running. */
|
|
||||||
portBASE_TYPE xAreIntegerMathsTaskStillRunning( void )
|
|
||||||
{
|
|
||||||
/* Keep a history of the check variables so we know if they have been incremented
|
|
||||||
since the last call. */
|
|
||||||
static unsigned portSHORT usLastTaskCheck[ intgNUMBER_OF_TASKS ] = { ( unsigned portSHORT ) 0 };
|
|
||||||
portBASE_TYPE xReturn = pdTRUE, xTask;
|
|
||||||
|
|
||||||
/* Check the maths tasks are still running by ensuring their check variables
|
|
||||||
are still incrementing. */
|
|
||||||
for( xTask = 0; xTask < intgNUMBER_OF_TASKS; xTask++ )
|
|
||||||
{
|
|
||||||
if( usTaskCheck[ xTask ] == usLastTaskCheck[ xTask ] )
|
|
||||||
{
|
|
||||||
/* The check has not incremented so an error exists. */
|
|
||||||
xReturn = pdFALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
usLastTaskCheck[ xTask ] = usTaskCheck[ xTask ];
|
|
||||||
}
|
|
||||||
|
|
||||||
return xReturn;
|
|
||||||
}
|
|
|
@ -1,234 +0,0 @@
|
||||||
/*
|
|
||||||
FreeRTOS.org V5.0.2 - Copyright (C) 2003-2008 Richard Barry.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS.org distribution.
|
|
||||||
|
|
||||||
FreeRTOS.org is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
FreeRTOS.org is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with FreeRTOS.org; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
A special exception to the GPL can be applied should you wish to distribute
|
|
||||||
a combined work that includes FreeRTOS.org, without being obliged to provide
|
|
||||||
the source code for any proprietary components. See the licensing section
|
|
||||||
of http://www.FreeRTOS.org for full details of how and when the exception
|
|
||||||
can be applied.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* SAVE TIME AND MONEY! We can port FreeRTOS.org to your own hardware, *
|
|
||||||
* and even write all or part of your application on your behalf. *
|
|
||||||
* See http://www.OpenRTOS.com for details of the services we provide to *
|
|
||||||
* expedite your project. *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
Please ensure to read the configuration and relevant port sections of the
|
|
||||||
online documentation.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
|
||||||
contact details.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
|
||||||
licensing and training services.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This is a simple LED toggle test for the 78K0R/Kx3 Target Board (QB-78K0RKG3-TB).
|
|
||||||
*
|
|
||||||
* Creates two task that control one LED each.
|
|
||||||
*
|
|
||||||
* The first task toggles a LED with a frequency of 1Hz by using the vTaskDelay
|
|
||||||
* function. So the task is yielded for 1 seconed after each LED switch.
|
|
||||||
*
|
|
||||||
* The second LED can be toggled by a switch within the second task.
|
|
||||||
* When the switch is pushed it is detected by an interrupt. When the interrupt
|
|
||||||
* occurs a flag is set in the ISR and sent to the second task by using a queue.
|
|
||||||
* Therefore the xQueueSendFromISR() function is called from within the ISR to
|
|
||||||
* write the flag value to the queue. The task uses the xQueueReceive() function
|
|
||||||
* to read the flag value from the queue.
|
|
||||||
* If the flag value changed from the last task activation the LED is toggled.
|
|
||||||
*
|
|
||||||
* Also a check function is implemented to check if the task still run properly
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Scheduler include files. */
|
|
||||||
#include "FreeRTOS.h"
|
|
||||||
#include "task.h"
|
|
||||||
|
|
||||||
/* Demo program include files. */
|
|
||||||
#include "LED.h"
|
|
||||||
#include "queue.h"
|
|
||||||
#include "print.h"
|
|
||||||
|
|
||||||
#define LEDToggleSTACK_SIZE (( unsigned portSHORT ) configMINIMAL_STACK_SIZE)
|
|
||||||
#define LED_NUMBER_OF_TASKS 2
|
|
||||||
|
|
||||||
/* LED toggle wait time and check definitions */
|
|
||||||
#define LED1_Wait_Time 1000
|
|
||||||
#define LED2_Wait_Time 100
|
|
||||||
|
|
||||||
/* Task function prototypes */
|
|
||||||
static void vLEDToggleTask1( void *pvParameters);
|
|
||||||
static void vLEDToggleTask2( void *pvParameters);
|
|
||||||
|
|
||||||
/* Port Initialization for LED's and Switch */
|
|
||||||
static void prvLEDInit(void);
|
|
||||||
|
|
||||||
/* Switch press counter */
|
|
||||||
static unsigned portSHORT usClick = 0;
|
|
||||||
|
|
||||||
/* Queue used for LED02 toggle*/
|
|
||||||
static xQueueHandle xLEDQueue;
|
|
||||||
|
|
||||||
/*xQUEUE *xLEDQueue;*/
|
|
||||||
|
|
||||||
static volatile unsigned portSHORT usTask1Check = 0, usTask2Check = 0, usLEDQueue = 0;
|
|
||||||
|
|
||||||
void vStartLEDToggleTasks( unsigned portBASE_TYPE uxPriority )
|
|
||||||
{
|
|
||||||
|
|
||||||
const unsigned portBASE_TYPE uxQueueSize = 4;
|
|
||||||
|
|
||||||
prvLEDInit();
|
|
||||||
|
|
||||||
/* Create the queue used by the Switch ISR and the second task. */
|
|
||||||
xLEDQueue = xQueueCreate( uxQueueSize, ( unsigned portBASE_TYPE ) sizeof( unsigned portSHORT ) );
|
|
||||||
/* create 2 LED toggle Tasks */
|
|
||||||
xTaskCreate(vLEDToggleTask1, "LEDTog1", LEDToggleSTACK_SIZE, ( void * ) &(usTask1Check), uxPriority, NULL );
|
|
||||||
xTaskCreate(vLEDToggleTask2, "LEDTog2", LEDToggleSTACK_SIZE, ( void * ) &xLEDQueue, uxPriority, NULL );
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vLEDToggleTask1( void *pvParameters)
|
|
||||||
{
|
|
||||||
static portCHAR pcLED1old;
|
|
||||||
portSHORT sError = pdFALSE;
|
|
||||||
volatile unsigned portSHORT *pusTaskCheckVariable;
|
|
||||||
const portCHAR * const pcTaskFailMsg = "ERROR: LED toggle failed.\r\n";
|
|
||||||
|
|
||||||
pusTaskCheckVariable = ( unsigned portSHORT * ) pvParameters;
|
|
||||||
for(;;)
|
|
||||||
{
|
|
||||||
pcLED1old = LED01;
|
|
||||||
|
|
||||||
vTaskDelay( LED1_Wait_Time );
|
|
||||||
/* toggle the LED01 */
|
|
||||||
LED01 = ~LED01;
|
|
||||||
|
|
||||||
if(pcLED1old == LED01)
|
|
||||||
{
|
|
||||||
/* an error has occured */
|
|
||||||
vPrintDisplayMessage( &pcTaskFailMsg );
|
|
||||||
sError = pdTRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(sError != pdTRUE)
|
|
||||||
{
|
|
||||||
/* If a LED toggle has been made, increment the check
|
|
||||||
variable so we know this task is still running okay. */
|
|
||||||
( *pusTaskCheckVariable )++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void vLEDToggleTask2( void *pvParameters)
|
|
||||||
{
|
|
||||||
unsigned portSHORT usData, usDataOld = 0;
|
|
||||||
xQueueHandle *pxQueue;
|
|
||||||
|
|
||||||
pxQueue = ( xQueueHandle * ) pvParameters;
|
|
||||||
for(;;)
|
|
||||||
{
|
|
||||||
if( xQueueReceive( *pxQueue, &usData, ( portTickType ) 0 ) == pdPASS )
|
|
||||||
{
|
|
||||||
if (usData != usDataOld)
|
|
||||||
{
|
|
||||||
LED02 = ~LED02;
|
|
||||||
}
|
|
||||||
usDataOld = usData;
|
|
||||||
}
|
|
||||||
vTaskDelay( LED2_Wait_Time );
|
|
||||||
/* increment check variable whenever the task gets active */
|
|
||||||
usTask2Check++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
portBASE_TYPE xAreLEDToggleTaskStillRunning( void )
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* Keep a history of the check variables so we know if they have been incremented
|
|
||||||
* since the last call.
|
|
||||||
*/
|
|
||||||
static unsigned portSHORT usLastTask1Check = 0;
|
|
||||||
static unsigned portSHORT usLastTask2Check = 0;
|
|
||||||
portBASE_TYPE xReturn = pdTRUE;
|
|
||||||
|
|
||||||
/* Check the LED toggle tasks are still running by ensuring their check variables
|
|
||||||
* are still incrementing.
|
|
||||||
*/
|
|
||||||
if(( usTask1Check == usLastTask1Check )||(usLastTask2Check == usTask2Check))
|
|
||||||
{
|
|
||||||
/* The check has not incremented so an error exists. */
|
|
||||||
xReturn = pdFALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
usLastTask1Check = usTask1Check;
|
|
||||||
usLastTask2Check = usTask2Check;
|
|
||||||
|
|
||||||
return xReturn;
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
static void prvLEDInit(void)
|
|
||||||
{
|
|
||||||
/* LED Port Initialization */
|
|
||||||
/* set Port Register */
|
|
||||||
P7 = 0x80;
|
|
||||||
/* set Port Mode Register */
|
|
||||||
PM7 = 0x3F;
|
|
||||||
|
|
||||||
/* Switch Pin Initialization */
|
|
||||||
/* enable pull-up resistor */
|
|
||||||
PU12_bit.no0 = 1;
|
|
||||||
/* INTP0 disable */
|
|
||||||
PMK0 = 1;
|
|
||||||
/* INTP0 IF clear */
|
|
||||||
PIF0 = 0;
|
|
||||||
EGN0_bit.no0 = 1;
|
|
||||||
/* INTP0 priority low */
|
|
||||||
PPR10 = 0;
|
|
||||||
PPR00 = 1;
|
|
||||||
/* enable ext. INTP0 interrupt */
|
|
||||||
PMK0 = 0;
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
||||||
|
|
||||||
/* Switch ISR */
|
|
||||||
|
|
||||||
#pragma vector=INTP0_vect
|
|
||||||
__interrupt void P0_isr (void)
|
|
||||||
{
|
|
||||||
/* Increment Switch pressed counter */
|
|
||||||
usClick++;
|
|
||||||
/* Use usClick to signalize a detected Interrupt for the vLEDToggleTask2
|
|
||||||
* to toggle the LED02.
|
|
||||||
*/
|
|
||||||
xQueueSendFromISR( xLEDQueue, &usClick, pdFALSE );
|
|
||||||
}
|
|
||||||
/*-----------------------------------------------------------*/
|
|
|
@ -1,61 +0,0 @@
|
||||||
/*
|
|
||||||
FreeRTOS.org V5.0.2 - Copyright (C) 2003-2008 Richard Barry.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS.org distribution.
|
|
||||||
|
|
||||||
FreeRTOS.org is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
FreeRTOS.org is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with FreeRTOS.org; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
|
|
||||||
A special exception to the GPL can be applied should you wish to distribute
|
|
||||||
a combined work that includes FreeRTOS.org, without being obliged to provide
|
|
||||||
the source code for any proprietary components. See the licensing section
|
|
||||||
of http://www.FreeRTOS.org for full details of how and when the exception
|
|
||||||
can be applied.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* SAVE TIME AND MONEY! We can port FreeRTOS.org to your own hardware, *
|
|
||||||
* and even write all or part of your application on your behalf. *
|
|
||||||
* See http://www.OpenRTOS.com for details of the services we provide to *
|
|
||||||
* expedite your project. *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
Please ensure to read the configuration and relevant port sections of the
|
|
||||||
online documentation.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
|
||||||
contact details.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
|
||||||
licensing and training services.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef LEDTOGGLE_TASKS_H
|
|
||||||
#define LEDTOGGLE_TASKS_H
|
|
||||||
|
|
||||||
void vStartLEDToggleTasks( unsigned portBASE_TYPE uxPriority );
|
|
||||||
portBASE_TYPE xAreLEDToggleTaskStillRunning( void );
|
|
||||||
/* LED Pin Configuration */
|
|
||||||
static void prvLEDinit( void );
|
|
||||||
|
|
||||||
#define LED01 P7_bit.no6
|
|
||||||
#define LED02 P7_bit.no7
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -58,9 +58,10 @@
|
||||||
/* Demo file headers. */
|
/* Demo file headers. */
|
||||||
#include "int78K0R.h"
|
#include "int78K0R.h"
|
||||||
#include "PollQ.h"
|
#include "PollQ.h"
|
||||||
#include "LED.h"
|
|
||||||
#include "print.h"
|
|
||||||
#include "semtest.h"
|
#include "semtest.h"
|
||||||
|
#include "GenQTest.h"
|
||||||
|
#include "dynamic.h"
|
||||||
|
#include "blocktim.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Priority definitions for most of the tasks in the demo application. Some
|
* Priority definitions for most of the tasks in the demo application. Some
|
||||||
|
@ -69,12 +70,16 @@
|
||||||
#define mainCHECK_TASK_PRIORITY ( tskIDLE_PRIORITY + 2 )
|
#define mainCHECK_TASK_PRIORITY ( tskIDLE_PRIORITY + 2 )
|
||||||
#define mainQUEUE_POLL_PRIORITY ( tskIDLE_PRIORITY + 1 )
|
#define mainQUEUE_POLL_PRIORITY ( tskIDLE_PRIORITY + 1 )
|
||||||
#define mainSEMTEST_PRIORITY ( tskIDLE_PRIORITY + 1 )
|
#define mainSEMTEST_PRIORITY ( tskIDLE_PRIORITY + 1 )
|
||||||
#define mainLED_TOGGLE_PRIORITY ( tskIDLE_PRIORITY + 1 )
|
#define mainBUTTON_PRIORITY ( configMAX_PRIORITIES - 1 )
|
||||||
|
#define mainGEN_QUEUE_PRIORITY ( tskIDLE_PRIORITY )
|
||||||
|
|
||||||
/* The period between executions of the check task. */
|
/* The period between executions of the check task. */
|
||||||
#define mainNO_ERROR_TOGGLE_PERIOD ( ( portTickType ) 3000 / portTICK_RATE_MS )
|
#define mainNO_ERROR_TOGGLE_PERIOD ( ( portTickType ) 3000 / portTICK_RATE_MS )
|
||||||
#define mainERROR_TOGGLE_PERIOD ( ( portTickType ) 500 / portTICK_RATE_MS )
|
#define mainERROR_TOGGLE_PERIOD ( ( portTickType ) 500 / portTICK_RATE_MS )
|
||||||
|
|
||||||
|
#define LED00 P7_bit.no6
|
||||||
|
#define LED01 P7_bit.no7
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 78K0R/Kx3 Option Byte Definition
|
* 78K0R/Kx3 Option Byte Definition
|
||||||
* watchdog disabled, LVI enabled, OCD interface enabled
|
* watchdog disabled, LVI enabled, OCD interface enabled
|
||||||
|
@ -99,15 +104,20 @@ int __low_level_init(void);
|
||||||
|
|
||||||
extern void vRegTest1( void *pvParameters );
|
extern void vRegTest1( void *pvParameters );
|
||||||
extern void vRegTest2( void *pvParameters );
|
extern void vRegTest2( void *pvParameters );
|
||||||
|
extern void vButtonTask( void *pvParameters );
|
||||||
|
|
||||||
static short sRegTestStatus = pdPASS;
|
static short sRegTestStatus = pdPASS;
|
||||||
|
|
||||||
portSHORT main( void )
|
portSHORT main( void )
|
||||||
{
|
{
|
||||||
/* Create the standard demo tasks. */
|
/* Create the standard demo tasks. */
|
||||||
vStartIntegerMathTasks( tskIDLE_PRIORITY );
|
|
||||||
vStartPolledQueueTasks( mainQUEUE_POLL_PRIORITY );
|
vStartPolledQueueTasks( mainQUEUE_POLL_PRIORITY );
|
||||||
vStartSemaphoreTasks(mainSEMTEST_PRIORITY);
|
vStartSemaphoreTasks(mainSEMTEST_PRIORITY);
|
||||||
|
vStartGenericQueueTasks( mainGEN_QUEUE_PRIORITY );
|
||||||
|
vStartDynamicPriorityTasks();
|
||||||
|
vCreateBlockTimeTasks();
|
||||||
|
|
||||||
|
xTaskCreate( vButtonTask, "Button", configMINIMAL_STACK_SIZE, NULL, mainBUTTON_PRIORITY, NULL );
|
||||||
|
|
||||||
/* Create the tasks defined within this file. */
|
/* Create the tasks defined within this file. */
|
||||||
xTaskCreate( vErrorChecks, "Check", configMINIMAL_STACK_SIZE, (void*)0x12345678, mainCHECK_TASK_PRIORITY, NULL );
|
xTaskCreate( vErrorChecks, "Check", configMINIMAL_STACK_SIZE, (void*)0x12345678, mainCHECK_TASK_PRIORITY, NULL );
|
||||||
|
@ -115,13 +125,10 @@ portSHORT main( void )
|
||||||
xTaskCreate( vRegTest1, "Reg1", configMINIMAL_STACK_SIZE, NULL, 0, NULL );
|
xTaskCreate( vRegTest1, "Reg1", configMINIMAL_STACK_SIZE, NULL, 0, NULL );
|
||||||
xTaskCreate( vRegTest2, "Reg2", configMINIMAL_STACK_SIZE, NULL, 0, NULL );
|
xTaskCreate( vRegTest2, "Reg2", configMINIMAL_STACK_SIZE, NULL, 0, NULL );
|
||||||
|
|
||||||
/* In this port, to use preemptive scheduler define configUSE_PREEMPTION
|
|
||||||
* as 1 in FreeRTOSconfig.h. To use the cooperative scheduler define
|
|
||||||
* configUSE_PREEMPTION as 0.
|
|
||||||
*/
|
|
||||||
vTaskStartScheduler();
|
vTaskStartScheduler();
|
||||||
|
|
||||||
return 0;
|
for( ;; );
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
@ -144,7 +151,7 @@ portTickType xToggleRate = mainNO_ERROR_TOGGLE_PERIOD, xLastWakeTime;
|
||||||
{
|
{
|
||||||
vTaskDelayUntil( &xLastWakeTime, xToggleRate );
|
vTaskDelayUntil( &xLastWakeTime, xToggleRate );
|
||||||
|
|
||||||
if( xAreIntegerMathsTaskStillRunning() != pdTRUE )
|
if( xAreGenericQueueTasksStillRunning() != pdTRUE )
|
||||||
{
|
{
|
||||||
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
||||||
}
|
}
|
||||||
|
@ -159,13 +166,23 @@ portTickType xToggleRate = mainNO_ERROR_TOGGLE_PERIOD, xLastWakeTime;
|
||||||
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if( xAreDynamicPriorityTasksStillRunning() != pdTRUE )
|
||||||
|
{
|
||||||
|
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( xAreBlockTimeTestTasksStillRunning() != pdTRUE )
|
||||||
|
{
|
||||||
|
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
||||||
|
}
|
||||||
|
|
||||||
if( sRegTestStatus != pdPASS )
|
if( sRegTestStatus != pdPASS )
|
||||||
{
|
{
|
||||||
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
xToggleRate = mainERROR_TOGGLE_PERIOD;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Toggle the LED. */
|
/* Toggle the LED. */
|
||||||
LED01 = !LED01;
|
LED00 = !LED00;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
@ -285,6 +302,30 @@ unsigned portCHAR resetflag = RESF;
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
static void prvLEDInit(void)
|
||||||
|
{
|
||||||
|
/* LED Port Initialization */
|
||||||
|
/* set Port Register */
|
||||||
|
P7 = 0x80;
|
||||||
|
/* set Port Mode Register */
|
||||||
|
PM7 = 0x3F;
|
||||||
|
|
||||||
|
/* Switch Pin Initialization */
|
||||||
|
/* enable pull-up resistor */
|
||||||
|
PU12_bit.no0 = 1;
|
||||||
|
/* INTP0 disable */
|
||||||
|
PMK0 = 1;
|
||||||
|
/* INTP0 IF clear */
|
||||||
|
PIF0 = 0;
|
||||||
|
EGN0_bit.no0 = 1;
|
||||||
|
/* INTP0 priority low */
|
||||||
|
PPR10 = 0;
|
||||||
|
PPR00 = 1;
|
||||||
|
/* enable ext. INTP0 interrupt */
|
||||||
|
PMK0 = 0;
|
||||||
|
}
|
||||||
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
void vRegTestError( void )
|
void vRegTestError( void )
|
||||||
{
|
{
|
||||||
sRegTestStatus = pdFAIL;
|
sRegTestStatus = pdFAIL;
|
||||||
|
|
|
@ -1,719 +0,0 @@
|
||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
|
|
||||||
<project>
|
|
||||||
<fileVersion>2</fileVersion>
|
|
||||||
<fileChecksum>3729116561</fileChecksum>
|
|
||||||
<configuration>
|
|
||||||
<name>Debug</name>
|
|
||||||
<outputs>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\integer.lst</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\intrinsics.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\print.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\list.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\tasks.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Exe\rtosdemo.d26</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\portable.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\PollQ.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\portasm.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\list.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\PollQ.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\semtest.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\port.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\rtosdemo.map</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdarg.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\task.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\StackMacros.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\main.pbi</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stddef.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\queue.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\list.pbi</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\string.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\tasks.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\queue.r26</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\croutine.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\heap_1.lst</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\sysmac.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdio.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\port.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\integer.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\main.lst</file>
|
|
||||||
<file>$TOOLKIT_DIR$\config\lnk78f1166_a0.xcl</file>
|
|
||||||
<file>$PROJ_DIR$\Int78K0R\int78K0R.h</file>
|
|
||||||
<file>$PROJ_DIR$\LEDtoggle\LED.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\projdefs.h</file>
|
|
||||||
<file>$PROJ_DIR$\FreeRTOSConfig.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\heap_1.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\tasks.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\RegTest.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\RegTest.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\queue.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\heap_1.r26</file>
|
|
||||||
<file>$PROJ_DIR$\main.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\semphr.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\PollQ.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\port.lst</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\semtest.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\io78f1166_a0.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\integer.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R\portmacro.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\FreeRTOS.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\list.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdlib.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\rtosdemo.pbd</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\queue.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\io78f1166_a0_ext.h</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\portasm.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\semtest.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\Obj\main.r26</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\integer.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\lib\clib\cl78kff3.r26</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Full\PollQ.c</file>
|
|
||||||
<file>$PROJ_DIR$\RegTest.s26</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\list.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\MemMang\heap_1.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R\port.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R\portasm.s26</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\queue.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\tasks.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Minimal\integer.c</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\PollQ.lst</file>
|
|
||||||
<file>$PROJ_DIR$\Debug\List\semtest.lst</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Minimal\semtest.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Minimal\PollQ.c</file>
|
|
||||||
</outputs>
|
|
||||||
<file>
|
|
||||||
<name>[ROOT_NODE]</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>XLINK</name>
|
|
||||||
<file> 5 13</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\Debug\Exe\rtosdemo.d26</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>XLINK</name>
|
|
||||||
<file> 13</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>XLINK</name>
|
|
||||||
<file> 31 10 38 41 29 9 58 12 8 23 11 37 60</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\main.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 30 58</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 17</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 21 50 18 34 35 47 55 1 6 49 15 51 32 44 33 2 46</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 21 50 18 34 35 47 55 1 6 49 15 51 32 44 33 2 46</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\Debug\Obj\rtosdemo.pbd</name>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>BILINK</name>
|
|
||||||
<file> 7 36 48 20 17 28 19 57 22</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\RegTest.s26</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>A78000</name>
|
|
||||||
<file> 38 39</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\list.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 3 9</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 20</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\MemMang\heap_1.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 25 41</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 36</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R\port.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 45 12</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 28</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R\portasm.s26</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>A78000</name>
|
|
||||||
<file> 8 56</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>A78000</name>
|
|
||||||
<file> 35</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\queue.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 40 23</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 19</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 21 50 18 34 35 47 55 1 6 49 15 51 24</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 21 50 18 34 35 47 55 1 6 49 15 51 24</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\tasks.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 4 37</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 22</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 27 14 26 52 21 50 18 34 35 47 55 1 6 49 15 51 16</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 27 14 26 52 21 50 18 34 35 47 55 1 6 49 15 51 16</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\integer.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 0 29</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 48</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 59</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 59</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\semtest.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 71 11</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 57</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 43 54 46</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 43 54 46</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\PollQ.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 70 10</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 7</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 54 44</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 26 50 18 34 35 47 55 1 6 49 15 51 54 44</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
</configuration>
|
|
||||||
<configuration>
|
|
||||||
<name>Release</name>
|
|
||||||
<outputs>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\intrinsics.h</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\int78K0R.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\tasks.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\portmacro.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\queue.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Exe\rtosdemo.a26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\PollQ.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\LED.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\print.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\portable.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Full\semtest.c</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdarg.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\task.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stddef.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\string.h</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\list.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\print.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\rtosdemo.pbd</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\PollQ.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\croutine.h</file>
|
|
||||||
<file>$PROJ_DIR$\Int78K0R\int78K0R.c</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\sysmac.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdio.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\config\lnk78f1166_a0.xcl</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R_Kx3\portmacro.s26</file>
|
|
||||||
<file>$PROJ_DIR$\Int78K0R\int78K0R.h</file>
|
|
||||||
<file>$PROJ_DIR$\LEDtoggle\LED.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\projdefs.h</file>
|
|
||||||
<file>$PROJ_DIR$\FreeRTOSConfig.h</file>
|
|
||||||
<file>$PROJ_DIR$\main.c</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\port.r26</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R_Kx3\portmacro.h</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\tasks.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\print.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\port.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\heap_1.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\semphr.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\PollQ.h</file>
|
|
||||||
<file>$PROJ_DIR$\LEDtoggle\LED.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\semtest.h</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\LED.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\main.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\semtest.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\list.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\heap_1.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\main.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\semtest.r26</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\int78K0R.pbi</file>
|
|
||||||
<file>$PROJ_DIR$\Release\Obj\queue.r26</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\io78f1166_a0.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\FreeRTOS.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\list.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\clib\stdlib.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R_Kx3\port.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\include\queue.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\inc\io78f1166_a0_ext.h</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\include\integer.h</file>
|
|
||||||
<file>$TOOLKIT_DIR$\lib\clib\cl78kff3.r26</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Full\PollQ.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\Common\Full\print.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\list.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\portable\MemMang\heap_1.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\queue.c</file>
|
|
||||||
<file>$PROJ_DIR$\..\..\Source\tasks.c</file>
|
|
||||||
</outputs>
|
|
||||||
<file>
|
|
||||||
<name>[ROOT_NODE]</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>XLINK</name>
|
|
||||||
<file> 5</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\Release\Exe\rtosdemo.a26</name>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>XLINK</name>
|
|
||||||
<file> 23 40 6 44 1 15 41 30 3 33 48 46 2 57</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Full\semtest.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 46</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 42</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 36 54 39 8</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 36 54 39 8</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\Release\Obj\rtosdemo.pbd</name>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>BILINK</name>
|
|
||||||
<file> 7 18 35 47 43 45 34 16 4 42 32</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\Int78K0R\int78K0R.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 1</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 47</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 8 56</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 8 56</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R_Kx3\portmacro.s26</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>A78000</name>
|
|
||||||
<file> 3</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>A78000</name>
|
|
||||||
<file> 28</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\main.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 41</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 45</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 14 50 13 27 28 49 55 0 9 31 12 51 25 37 26 8 39</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 14 50 13 27 28 49 55 0 9 31 12 51 25 37 26 8 39</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\LEDtoggle\LED.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 40</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 7</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 50 13 21 27 28 49 55 0 9 31 12 51 26 54 8</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 50 13 21 27 28 49 55 0 9 31 12 51 26 54 8</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R_Kx3\port.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 30</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 34</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Full\PollQ.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 6</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 18</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 54 8 37</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51 54 8 37</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Full\print.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 33</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 16</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 54 8</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 54 8</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\list.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 15</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 43</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\portable\MemMang\heap_1.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 44</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 35</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\queue.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 48</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 4</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 52 21 14 50 13 27 28 49 55 0 9 31 12 51 19</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 52 21 14 50 13 27 28 49 55 0 9 31 12 51 19</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\Source\tasks.c</name>
|
|
||||||
<outputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 2</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 32</file>
|
|
||||||
</tool>
|
|
||||||
</outputs>
|
|
||||||
<inputs>
|
|
||||||
<tool>
|
|
||||||
<name>ICC78000</name>
|
|
||||||
<file> 22 11 21 52 14 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
<tool>
|
|
||||||
<name>BICOMP</name>
|
|
||||||
<file> 22 11 21 52 14 50 13 27 28 49 55 0 9 31 12 51</file>
|
|
||||||
</tool>
|
|
||||||
</inputs>
|
|
||||||
</file>
|
|
||||||
<forcedrebuild>
|
|
||||||
<name>[MULTI_TOOL]</name>
|
|
||||||
<tool>XLINK</tool>
|
|
||||||
</forcedrebuild>
|
|
||||||
</configuration>
|
|
||||||
</project>
|
|
||||||
|
|
||||||
|
|
|
@ -314,7 +314,6 @@
|
||||||
<name>CCIncludePath2</name>
|
<name>CCIncludePath2</name>
|
||||||
<state>$PROJ_DIR$\..\..\Source\include</state>
|
<state>$PROJ_DIR$\..\..\Source\include</state>
|
||||||
<state>$PROJ_DIR$\..\Common\include</state>
|
<state>$PROJ_DIR$\..\Common\include</state>
|
||||||
<state>$PROJ_DIR$\LEDtoggle</state>
|
|
||||||
<state>$PROJ_DIR$\Int78K0R</state>
|
<state>$PROJ_DIR$\Int78K0R</state>
|
||||||
<state>$PROJ_DIR$</state>
|
<state>$PROJ_DIR$</state>
|
||||||
</option>
|
</option>
|
||||||
|
@ -527,9 +526,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OAIncludePath2</name>
|
<name>OAIncludePath2</name>
|
||||||
<state>$PROJ_DIR$\..\..\Source\include</state>
|
<state>$PROJ_DIR$\..\..\Source\portable\IAR\78K0R</state>
|
||||||
<state>$PROJ_DIR$\..\Common\include</state>
|
|
||||||
<state>$PROJ_DIR$\LEDtoggle</state>
|
|
||||||
<state>$PROJ_DIR$</state>
|
<state>$PROJ_DIR$</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
|
@ -1806,12 +1803,33 @@
|
||||||
</configuration>
|
</configuration>
|
||||||
<group>
|
<group>
|
||||||
<name>Demo Source</name>
|
<name>Demo Source</name>
|
||||||
|
<group>
|
||||||
|
<name>StandardDemos</name>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\main.c</name>
|
<name>$PROJ_DIR$\..\Common\Minimal\blocktim.c</name>
|
||||||
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\..\Common\Minimal\dynamic.c</name>
|
||||||
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\..\Common\Minimal\GenQTest.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\PollQ.c</name>
|
<name>$PROJ_DIR$\..\Common\Minimal\PollQ.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\..\Common\Minimal\semtest.c</name>
|
||||||
|
</file>
|
||||||
|
</group>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\ButtonISR.s26</name>
|
||||||
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\ButtonTask.c</name>
|
||||||
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\main.c</name>
|
||||||
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\RegTest.s26</name>
|
<name>$PROJ_DIR$\RegTest.s26</name>
|
||||||
</file>
|
</file>
|
||||||
|
@ -1837,12 +1855,6 @@
|
||||||
<name>$PROJ_DIR$\..\..\Source\tasks.c</name>
|
<name>$PROJ_DIR$\..\..\Source\tasks.c</name>
|
||||||
</file>
|
</file>
|
||||||
</group>
|
</group>
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\integer.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\Common\Minimal\semtest.c</name>
|
|
||||||
</file>
|
|
||||||
</project>
|
</project>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,20 +3,20 @@
|
||||||
<Project>
|
<Project>
|
||||||
<Desktop>
|
<Desktop>
|
||||||
<Static>
|
<Static>
|
||||||
<Debug-Log/>
|
<Debug-Log><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Build</Factory></Window><Window><Factory>Breakpoints</Factory></Window><Window><Factory>Watch</Factory></Window></Windows></PreferedWindows></Debug-Log>
|
||||||
<Build>
|
<Build>
|
||||||
<ColumnWidth0>20</ColumnWidth0>
|
<ColumnWidth0>20</ColumnWidth0>
|
||||||
<ColumnWidth1>1216</ColumnWidth1>
|
<ColumnWidth1>1216</ColumnWidth1>
|
||||||
<ColumnWidth2>324</ColumnWidth2>
|
<ColumnWidth2>324</ColumnWidth2>
|
||||||
<ColumnWidth3>81</ColumnWidth3>
|
<ColumnWidth3>81</ColumnWidth3>
|
||||||
</Build>
|
<PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Debug-Log</Factory></Window><Window><Factory>Breakpoints</Factory></Window><Window><Factory>Watch</Factory></Window></Windows></PreferedWindows></Build>
|
||||||
<Workspace>
|
<Workspace>
|
||||||
<ColumnWidths>
|
<ColumnWidths>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Column0>138</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
<Column0>181</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
||||||
</Workspace>
|
</Workspace>
|
||||||
<Disassembly>
|
<Disassembly>
|
||||||
<PreferedWindows>
|
<PreferedWindows>
|
||||||
|
@ -28,27 +28,11 @@
|
||||||
|
|
||||||
|
|
||||||
<MixedMode>1</MixedMode><CodeCovShow>0</CodeCovShow></Disassembly>
|
<MixedMode>1</MixedMode><CodeCovShow>0</CodeCovShow></Disassembly>
|
||||||
<Register/><Watch><Format><struct_types/><watch_formats/></Format><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><Column0>203</Column0><Column1>100</Column1><Column2>100</Column2><Column3>100</Column3></Watch><Memory><FindDirection>1</FindDirection><FindAsHex>0</FindAsHex></Memory></Static>
|
<Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register><Watch><Format><struct_types/><watch_formats/></Format><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Debug-Log</Factory></Window><Window><Factory>Build</Factory></Window><Window><Factory>Breakpoints</Factory></Window></Windows></PreferedWindows><Column0>203</Column0><Column1>100</Column1><Column2>100</Column2><Column3>100</Column3></Watch><Memory><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><FindDirection>1</FindDirection><FindAsHex>0</FindAsHex></Memory><Breakpoints><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Debug-Log</Factory></Window><Window><Factory>Build</Factory></Window><Window><Factory>Watch</Factory></Window></Windows></PreferedWindows></Breakpoints></Static>
|
||||||
<Windows>
|
<Windows>
|
||||||
|
|
||||||
|
|
||||||
<Wnd0>
|
<Wnd1>
|
||||||
<Tabs>
|
|
||||||
<Tab>
|
|
||||||
<Identity>TabID-15892-1978</Identity>
|
|
||||||
<TabName>Debug Log</TabName>
|
|
||||||
<Factory>Debug-Log</Factory>
|
|
||||||
<Session/>
|
|
||||||
</Tab>
|
|
||||||
<Tab>
|
|
||||||
<Identity>TabID-15370-1988</Identity>
|
|
||||||
<TabName>Build</TabName>
|
|
||||||
<Factory>Build</Factory>
|
|
||||||
<Session/>
|
|
||||||
</Tab>
|
|
||||||
<Tab><Identity>TabID-15381-14004</Identity><TabName>Breakpoints</TabName><Factory>Breakpoints</Factory></Tab><Tab><Identity>TabID-30955-22315</Identity><TabName>Watch</TabName><Factory>Watch</Factory><Session><Expressions><Expression><Expression>usCriticalNesting</Expression></Expression><Expression><Expression>pxCurrentTCB</Expression></Expression><Expression><Expression>pxTopOfStack</Expression></Expression></Expressions><TabId>1</TabId><Column0>203</Column0><Column1>100</Column1><Column2>100</Column2><Column3>100</Column3></Session></Tab></Tabs>
|
|
||||||
|
|
||||||
<SelectedTab>0</SelectedTab></Wnd0><Wnd4>
|
|
||||||
<Tabs>
|
<Tabs>
|
||||||
<Tab>
|
<Tab>
|
||||||
<Identity>TabID-26641-1982</Identity>
|
<Identity>TabID-26641-1982</Identity>
|
||||||
|
@ -60,20 +44,20 @@
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
|
|
||||||
<SelectedTab>0</SelectedTab></Wnd4><Wnd5><Tabs><Tab><Identity>TabID-29701-24386</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd5><Wnd6><Tabs><Tab><Identity>TabID-10381-31310</Identity><TabName>Register</TabName><Factory>Register</Factory><Session><REG1>0</REG1><REG2>0</REG2><Group>0</Group><States>1</States><State0>PSW</State0></Session></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd6><Wnd7><Tabs><Tab><Identity>TabID-32148-30071</Identity><TabName>Memory</TabName><Factory>Memory</Factory><Session><ZoneNumber>5</ZoneNumber><SelectionAnchor>103624864d</SelectionAnchor><SelectionEnd>103624864d</SelectionEnd><UnitsPerGroup>1</UnitsPerGroup><EndianMode>0</EndianMode><DataCovEnabled>0</DataCovEnabled><DataCovShown>0</DataCovShown><HScroll>064d</HScroll><VScroll>6475864d</VScroll></Session></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd7></Windows>
|
<SelectedTab>0</SelectedTab></Wnd1><Wnd4><Tabs><Tab><Identity>TabID-7145-8325</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab><Tab><Identity>TabID-6162-8753</Identity><TabName>Watch</TabName><Factory>Watch</Factory><Session><Expressions><Expression><Expression>pvReturn</Expression></Expression><Expression><Expression>xNextFreeByte</Expression></Expression></Expressions><TabId>0</TabId><Column0>203</Column0><Column1>100</Column1><Column2>100</Column2><Column3>100</Column3></Session></Tab><Tab><Identity>TabID-24881-24777</Identity><TabName>Breakpoints</TabName><Factory>Breakpoints</Factory></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd4><Wnd5><Tabs><Tab><Identity>TabID-935-8851</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd5></Windows>
|
||||||
<Editor>
|
<Editor>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\port.c</Filename><XPos>0</XPos><YPos>104</YPos><SelStart>4766</SelStart><SelEnd>4766</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\main.c</Filename><XPos>0</XPos><YPos>115</YPos><SelStart>4695</SelStart><SelEnd>4695</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\RegTest.s26</Filename><XPos>0</XPos><YPos>57</YPos><SelStart>2622</SelStart><SelEnd>2622</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\tasks.c</Filename><XPos>0</XPos><YPos>1207</YPos><SelStart>38811</SelStart><SelEnd>38811</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portasm.s26</Filename><XPos>0</XPos><YPos>153</YPos><SelStart>6500</SelStart><SelEnd>6500</SelEnd></Tab><ActiveTab>4</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\list.c</Filename><XPos>0</XPos><YPos>136</YPos><SelStart>6044</SelStart><SelEnd>6044</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
<Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\main.c</Filename><XPos>0</XPos><YPos>91</YPos><SelStart>4068</SelStart><SelEnd>4068</SelEnd></Tab><ActiveTab>0</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\SwitchISR.s26.c</Filename><XPos>0</XPos><YPos>20</YPos><SelStart>1732</SelStart><SelEnd>1749</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portasm.s26</Filename><XPos>0</XPos><YPos>36</YPos><SelStart>2187</SelStart><SelEnd>2187</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portmacro.h</Filename><XPos>0</XPos><YPos>39</YPos><SelStart>4776</SelStart><SelEnd>4776</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\ISR_Support.h</Filename><XPos>0</XPos><YPos>24</YPos><SelStart>1618</SelStart><SelEnd>1618</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\ButtonTask.c</Filename><XPos>0</XPos><YPos>44</YPos><SelStart>2364</SelStart><SelEnd>2364</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\ButtonISR.s26</Filename><XPos>0</XPos><YPos>23</YPos><SelStart>1785</SelStart><SelEnd>1785</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\blocktim.c</Filename><XPos>0</XPos><YPos>430</YPos><SelStart>15217</SelStart><SelEnd>15251</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
||||||
<Positions>
|
<Positions>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Top><Row0><Sizes><Toolbar-00aa9b40><key>iaridepm.enu1</key></Toolbar-00aa9b40><Toolbar-029980a0><key>debuggergui.enu1</key></Toolbar-029980a0></Sizes></Row0></Top><Left><Row0><Sizes><Wnd4><Rect><Top>-2</Top><Left>-2</Left><Bottom>496</Bottom><Right>212</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>142857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>152857</sizeVertCX><sizeVertCY>507128</sizeVertCY></Rect></Wnd4></Sizes></Row0></Left><Right><Row0><Sizes><Wnd6><Rect><Top>-2</Top><Left>-2</Left><Bottom>496</Bottom><Right>281</Right><x>-2</x><y>-2</y><xscreen>1404</xscreen><yscreen>200</yscreen><sizeHorzCX>1002857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>202143</sizeVertCX><sizeVertCY>507128</sizeVertCY></Rect></Wnd6></Sizes></Row0><Row1><Sizes><Wnd5><Rect><Top>-2</Top><Left>279</Left><Bottom>496</Bottom><Right>738</Right><x>279</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>142857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>327857</sizeVertCX><sizeVertCY>507128</sizeVertCY></Rect></Wnd5></Sizes></Row1></Right><Bottom><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>244</Bottom><Right>1402</Right><x>-2</x><y>-2</y><xscreen>1404</xscreen><yscreen>246</yscreen><sizeHorzCX>1002857</sizeHorzCX><sizeHorzCY>250509</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd0></Sizes></Row0><Row1><Sizes><Wnd7><Rect><Top>242</Top><Left>-2</Left><Bottom>442</Bottom><Right>1402</Right><x>-2</x><y>242</y><xscreen>1404</xscreen><yscreen>200</yscreen><sizeHorzCX>1002857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd7></Sizes></Row1></Bottom><Float><Sizes/></Float></Positions>
|
<Top><Row0><Sizes><Toolbar-00aa9c38><key>iaridepm.enu1</key></Toolbar-00aa9c38><Toolbar-03afbbc8><key>debuggergui.enu1</key></Toolbar-03afbbc8></Sizes></Row0></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>255</Right><x>-2</x><y>-2</y><xscreen>240</xscreen><yscreen>200</yscreen><sizeHorzCX>142857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>152976</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes><Wnd5><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>633</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>377976</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd5></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd4><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>119048</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd4></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
||||||
</Desktop>
|
</Desktop>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Column0>218</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
<Column0>277</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
||||||
</Workspace>
|
</Workspace>
|
||||||
<Build>
|
<Build>
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@
|
||||||
<Factory>Workspace</Factory>
|
<Factory>Workspace</Factory>
|
||||||
<Session>
|
<Session>
|
||||||
|
|
||||||
<NodeDict><ExpandedNode>rtosdemo</ExpandedNode><ExpandedNode>rtosdemo/Demo Source</ExpandedNode><ExpandedNode>rtosdemo/Kernel Source</ExpandedNode></NodeDict></Session>
|
<NodeDict><ExpandedNode>rtosdemo</ExpandedNode><ExpandedNode>rtosdemo/Demo Source</ExpandedNode><ExpandedNode>rtosdemo/Demo Source/StandardDemos</ExpandedNode><ExpandedNode>rtosdemo/Kernel Source</ExpandedNode></NodeDict></Session>
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
|
|
||||||
|
@ -52,14 +52,14 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\port.c</Filename><XPos>0</XPos><YPos>104</YPos><SelStart>4766</SelStart><SelEnd>4766</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\main.c</Filename><XPos>0</XPos><YPos>115</YPos><SelStart>4695</SelStart><SelEnd>4695</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\RegTest.s26</Filename><XPos>0</XPos><YPos>57</YPos><SelStart>2622</SelStart><SelEnd>2622</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\tasks.c</Filename><XPos>0</XPos><YPos>1207</YPos><SelStart>38811</SelStart><SelEnd>38811</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portasm.s26</Filename><XPos>0</XPos><YPos>153</YPos><SelStart>6053</SelStart><SelEnd>6053</SelEnd></Tab><ActiveTab>4</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\list.c</Filename><XPos>0</XPos><YPos>136</YPos><SelStart>6044</SelStart><SelEnd>6044</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
<Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\main.c</Filename><XPos>0</XPos><YPos>91</YPos><SelStart>4068</SelStart><SelEnd>4068</SelEnd></Tab><ActiveTab>0</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\SwitchISR.s26.c</Filename><XPos>0</XPos><YPos>20</YPos><SelStart>1732</SelStart><SelEnd>1749</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portasm.s26</Filename><XPos>0</XPos><YPos>36</YPos><SelStart>2187</SelStart><SelEnd>2187</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\portmacro.h</Filename><XPos>0</XPos><YPos>39</YPos><SelStart>4776</SelStart><SelEnd>4776</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\78K0R\ISR_Support.h</Filename><XPos>0</XPos><YPos>24</YPos><SelStart>1618</SelStart><SelEnd>1618</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\ButtonTask.c</Filename><XPos>0</XPos><YPos>44</YPos><SelStart>2364</SelStart><SelEnd>2364</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_78K0R_IAR\ButtonISR.s26</Filename><XPos>0</XPos><YPos>23</YPos><SelStart>1785</SelStart><SelEnd>1785</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\blocktim.c</Filename><XPos>0</XPos><YPos>430</YPos><SelStart>15217</SelStart><SelEnd>15251</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
||||||
<Positions>
|
<Positions>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Top><Row0><Sizes><Toolbar-00aa9b40><key>iaridepm.enu1</key></Toolbar-00aa9b40></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>735</Bottom><Right>292</Right><x>-2</x><y>-2</y><xscreen>182</xscreen><yscreen>205</yscreen><sizeHorzCX>130000</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>210000</sizeVertCX><sizeVertCY>750509</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>203</Bottom><Right>1402</Right><x>-2</x><y>-2</y><xscreen>1404</xscreen><yscreen>205</yscreen><sizeHorzCX>1002857</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>130000</sizeVertCX><sizeVertCY>208758</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
<Top><Row0><Sizes><Toolbar-00aa9c38><key>iaridepm.enu1</key></Toolbar-00aa9c38></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>735</Bottom><Right>351</Right><x>-2</x><y>-2</y><xscreen>218</xscreen><yscreen>205</yscreen><sizeHorzCX>129762</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>210119</sizeVertCX><sizeVertCY>750509</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>203</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>205</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>129762</sizeVertCX><sizeVertCY>208758</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
||||||
</Desktop>
|
</Desktop>
|
||||||
</Workspace>
|
</Workspace>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue