mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-19 21:11:57 -04:00
Minor mods common files to fix warnings generated by Renesas compiler.
Correct the header comments in het.c and het.h (RM48/TMS570 demo) which were corrupt. Correct version numbers in RX63N Renesas compiler demo. Ensure stacks set up for tasks in the RX200 port layer end on 8 byte boundaries (was 4, which didn't matter but didn't match the definition). Replaced unqualified (unsigned) in calls to standard functions with (size_t).
This commit is contained in:
parent
236683d74d
commit
a9b8f0ca69
|
@ -1,29 +1,3 @@
|
||||||
/*
|
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
|
||||||
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS tutorial books are available in pdf and paperback. *
|
|
||||||
* Complete, revised, and edited pdf reference manuals are also *
|
|
||||||
* available. *
|
|
||||||
* *
|
|
||||||
* Purchasing FreeRTOS documentation will not only help you, by *
|
|
||||||
* ensuring you get running as quickly as possible and with an *
|
|
||||||
* in-depth knowledge of how to use FreeRTOS, it will also help *
|
|
||||||
* the FreeRTOS project to continue with its mission of providing *
|
|
||||||
* professional grade, cross platform, de facto standard solutions *
|
|
||||||
* for microcontrollers - completely free of charge! *
|
|
||||||
* *
|
|
||||||
* >>> See http://www.FreeRTOS.org/Documentation for details. <<< *
|
|
||||||
* *
|
|
||||||
* Thank you for using FreeRTOS, and thank you for your support! *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
@ -82,34 +56,22 @@
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
license and Real Time Engineers Ltd. contact details.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
fully thread aware and reentrant UDP/IP stack.
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
Integrity Systems, who sell the code with commercial support,
|
Integrity Systems, who sell the code with commercial support,
|
||||||
indemnification and middleware, under the OpenRTOS brand.
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
|
|
||||||
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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "FreeRTOS.h"
|
#include "FreeRTOS.h"
|
||||||
#include "Task.h"
|
#include "Task.h"
|
||||||
#include "gio.h"
|
#include "gio.h"
|
||||||
|
|
|
@ -1,29 +1,3 @@
|
||||||
/*
|
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
|
||||||
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS tutorial books are available in pdf and paperback. *
|
|
||||||
* Complete, revised, and edited pdf reference manuals are also *
|
|
||||||
* available. *
|
|
||||||
* *
|
|
||||||
* Purchasing FreeRTOS documentation will not only help you, by *
|
|
||||||
* ensuring you get running as quickly as possible and with an *
|
|
||||||
* in-depth knowledge of how to use FreeRTOS, it will also help *
|
|
||||||
* the FreeRTOS project to continue with its mission of providing *
|
|
||||||
* professional grade, cross platform, de facto standard solutions *
|
|
||||||
* for microcontrollers - completely free of charge! *
|
|
||||||
* *
|
|
||||||
* >>> See http://www.FreeRTOS.org/Documentation for details. <<< *
|
|
||||||
* *
|
|
||||||
* Thank you for using FreeRTOS, and thank you for your support! *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
@ -82,35 +56,22 @@
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
license and Real Time Engineers Ltd. contact details.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
fully thread aware and reentrant UDP/IP stack.
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
Integrity Systems, who sell the code with commercial support,
|
Integrity Systems, who sell the code with commercial support,
|
||||||
indemnification and middleware, under the OpenRTOS brand.
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
|
|
||||||
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 __HET_H__
|
#ifndef __HET_H__
|
||||||
#define __HET_H__
|
#define __HET_H__
|
||||||
|
|
||||||
|
|
|
@ -587,7 +587,7 @@ static unsigned portLONG ulLastLoopCounter = 0, ulLastLoopCounter2 = 0;
|
||||||
/* Errors detected in the task itself will have latched xErrorDetected
|
/* Errors detected in the task itself will have latched xErrorDetected
|
||||||
to true. */
|
to true. */
|
||||||
|
|
||||||
return !xErrorDetected;
|
return ( portBASE_TYPE ) !xErrorDetected;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -162,7 +162,7 @@ portTickType xTimeToBlock, xBlockedTime;
|
||||||
{
|
{
|
||||||
/* The queue is empty. Attempt to read from the queue using a block
|
/* The queue is empty. Attempt to read from the queue using a block
|
||||||
time. When we wake, ensure the delta in time is as expected. */
|
time. When we wake, ensure the delta in time is as expected. */
|
||||||
xTimeToBlock = bktPRIMARY_BLOCK_TIME << xItem;
|
xTimeToBlock = ( portTickType ) ( bktPRIMARY_BLOCK_TIME << xItem );
|
||||||
|
|
||||||
xTimeWhenBlocking = xTaskGetTickCount();
|
xTimeWhenBlocking = xTaskGetTickCount();
|
||||||
|
|
||||||
|
@ -213,7 +213,7 @@ portTickType xTimeToBlock, xBlockedTime;
|
||||||
{
|
{
|
||||||
/* The queue is full. Attempt to write to the queue using a block
|
/* The queue is full. Attempt to write to the queue using a block
|
||||||
time. When we wake, ensure the delta in time is as expected. */
|
time. When we wake, ensure the delta in time is as expected. */
|
||||||
xTimeToBlock = bktPRIMARY_BLOCK_TIME << xItem;
|
xTimeToBlock = ( portTickType ) bktPRIMARY_BLOCK_TIME << xItem;
|
||||||
|
|
||||||
xTimeWhenBlocking = xTaskGetTickCount();
|
xTimeWhenBlocking = xTaskGetTickCount();
|
||||||
|
|
||||||
|
|
|
@ -72,9 +72,6 @@
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* INCLUDED_FROM_FREERTOS_ASM_FILE is defined before FreeRTOSConfig.h so non
|
|
||||||
assembly compatible definitions within the header file can be omitted. */
|
|
||||||
#define INCLUDED_FROM_FREERTOS_ASM_FILE
|
|
||||||
#include "FreeRTOSConfig.h"
|
#include "FreeRTOSConfig.h"
|
||||||
#include "ISR_Support.h"
|
#include "ISR_Support.h"
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ included. Alternatively, just manually include the correct files here. */
|
||||||
|
|
||||||
/* Prevent the files being included from the FreeRTOS port layer assembly
|
/* Prevent the files being included from the FreeRTOS port layer assembly
|
||||||
source files. */
|
source files. */
|
||||||
#ifndef INCLUDED_FROM_FREERTOS_ASM_FILE
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
#ifdef YRDKRL78G14
|
#ifdef YRDKRL78G14
|
||||||
#include "iodefine_RL78G14.h"
|
#include "iodefine_RL78G14.h"
|
||||||
|
|
|
@ -113,7 +113,7 @@ multiple evaluation boards. */
|
||||||
#define configUSE_MUTEXES 1
|
#define configUSE_MUTEXES 1
|
||||||
|
|
||||||
/* Hook function definitions. */
|
/* Hook function definitions. */
|
||||||
#define configUSE_IDLE_HOOK 1
|
#define configUSE_IDLE_HOOK 0
|
||||||
#define configUSE_TICK_HOOK 0
|
#define configUSE_TICK_HOOK 0
|
||||||
#define configUSE_MALLOC_FAILED_HOOK 1
|
#define configUSE_MALLOC_FAILED_HOOK 1
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,6 @@
|
||||||
@REM
|
@REM
|
||||||
|
|
||||||
|
|
||||||
"C:\devtools\IAR Systems\Embedded Workbench 6.5\common\bin\cspybat" "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\bin\rl78proc.dll" "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\bin\rl78ocd.dll" %1 --plugin "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\bin\rl78bat.dll" --backend -B "--core" "rl78_1" "--near_const_location" "rom0" "--near_const_start" "0xf2000" "--near_const_size" "24.00" "-p" "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\config\debugger\ior5f10jgc.ddf" "-d" "e1"
|
"C:\devtools\IAR Systems\Embedded Workbench 6.5\common\bin\cspybat" "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\bin\rl78proc.dll" "C:\devtools\IAR Systems\Embedded Workbench 6.5\rl78\bin\rl78ocd.dll" %1 --plugin "C:\devtools\IAR Systems\Embedded Workbench 6.5\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.5\rl78\config\debugger\ior5f10ele.ddf" "-d" "e1"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<Workspace>
|
<Workspace>
|
||||||
<ConfigDictionary>
|
<ConfigDictionary>
|
||||||
|
|
||||||
<CurrentConfigs><Project>RTOSDemo/RSKRL78G1C</Project></CurrentConfigs></ConfigDictionary>
|
<CurrentConfigs><Project>RTOSDemo/RL78_G1A_TB</Project></CurrentConfigs></ConfigDictionary>
|
||||||
<Desktop>
|
<Desktop>
|
||||||
<Static>
|
<Static>
|
||||||
<Workspace>
|
<Workspace>
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
<Column0>263</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
<Column0>263</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
|
||||||
</Workspace>
|
</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>
|
<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><Select-Ambiguous-Definitions><ColumnWidth0>580</ColumnWidth0><ColumnWidth1>82</ColumnWidth1><ColumnWidth2>994</ColumnWidth2></Select-Ambiguous-Definitions></Static>
|
||||||
<Windows>
|
<Windows>
|
||||||
|
|
||||||
<Wnd2>
|
<Wnd2>
|
||||||
|
@ -25,24 +25,24 @@
|
||||||
<Factory>Workspace</Factory>
|
<Factory>Workspace</Factory>
|
||||||
<Session>
|
<Session>
|
||||||
|
|
||||||
<NodeDict><ExpandedNode>RTOSDemo</ExpandedNode><ExpandedNode>RTOSDemo/Demo Source</ExpandedNode><ExpandedNode>RTOSDemo/Output</ExpandedNode></NodeDict></Session>
|
<NodeDict><ExpandedNode>RTOSDemo</ExpandedNode></NodeDict></Session>
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tabs>
|
</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-32199-1847</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3></Windows>
|
<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-32199-1847</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab><Tab><Identity>TabID-16124-30648</Identity><TabName>Ambiguous Definitions</TabName><Factory>Select-Ambiguous-Definitions</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3></Windows>
|
||||||
<Editor>
|
<Editor>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>147</YPos2><SelStart2>7550</SelStart2><SelEnd2>7550</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\demo_specific_io.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>64</YPos2><SelStart2>4262</SelStart2><SelEnd2>4262</SelEnd2></Tab><ActiveTab>1</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$\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>147</YPos2><SelStart2>7550</SelStart2><SelEnd2>7550</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\demo_specific_io.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>64</YPos2><SelStart2>4262</SelStart2><SelEnd2>4262</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\Source\portable\IAR\RL78\portmacro.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>143</YPos2><SelStart2>7699</SelStart2><SelEnd2>7699</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>107</YPos2><SelStart2>0</SelStart2><SelEnd2>0</SelEnd2></Tab><ActiveTab>3</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
||||||
<Positions>
|
<Positions>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Top><Row0><Sizes><Toolbar-01349048><key>iaridepm.enu1</key></Toolbar-01349048></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><Row10><Sizes/></Row10><Row11><Sizes/></Row11><Row12><Sizes/></Row12><Row13><Sizes/></Row13><Row14><Sizes/></Row14><Row15><Sizes/></Row15><Row16><Sizes/></Row16><Row17><Sizes/></Row17><Row18><Sizes/></Row18><Row19><Sizes/></Row19><Row20><Sizes/></Row20><Row21><Sizes/></Row21><Row22><Sizes/></Row22><Row23><Sizes/></Row23><Row24><Sizes/></Row24><Row25><Sizes/></Row25><Row26><Sizes/></Row26><Row27><Sizes/></Row27><Row28><Sizes/></Row28><Row29><Sizes/></Row29><Row30><Sizes/></Row30><Row31><Sizes/></Row31><Row32><Sizes/></Row32><Row33><Sizes/></Row33><Row34><Sizes/></Row34><Row35><Sizes/></Row35><Row36><Sizes/></Row36><Row37><Sizes/></Row37><Row38><Sizes/></Row38><Row39><Sizes/></Row39><Row40><Sizes/></Row40><Row41><Sizes/></Row41><Row42><Sizes/></Row42><Row43><Sizes/></Row43><Row44><Sizes/></Row44><Row45><Sizes/></Row45><Row46><Sizes/></Row46><Row47><Sizes/></Row47><Row48><Sizes/></Row48><Row49><Sizes/></Row49><Row50><Sizes/></Row50><Row51><Sizes/></Row51><Row52><Sizes/></Row52><Row53><Sizes/></Row53><Row54><Sizes/></Row54><Row55><Sizes/></Row55><Row56><Sizes/></Row56><Row57><Sizes/></Row57><Row58><Sizes/></Row58><Row59><Sizes/></Row59><Row60><Sizes/></Row60><Row61><Sizes/></Row61><Row62><Sizes/></Row62><Row63><Sizes/></Row63><Row64><Sizes/></Row64><Row65><Sizes/></Row65><Row66><Sizes/></Row66><Row67><Sizes/></Row67><Row68><Sizes/></Row68><Row69><Sizes/></Row69><Row70><Sizes/></Row70></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>749</Bottom><Right>337</Right><x>-2</x><y>-2</y><xscreen>9625</xscreen><yscreen>6151</yscreen><sizeHorzCX>5729167</sizeHorzCX><sizeHorzCY>6263747</sizeHorzCY><sizeVertCX>201786</sizeVertCX><sizeVertCY>764766</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>189</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>191</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>194501</sizeHorzCY><sizeVertCX>7519643</sizeVertCX><sizeVertCY>7952138</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
<Top><Row0><Sizes><Toolbar-01349048><key>iaridepm.enu1</key></Toolbar-01349048></Sizes></Row0></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>749</Bottom><Right>337</Right><x>-2</x><y>-2</y><xscreen>9625</xscreen><yscreen>6151</yscreen><sizeHorzCX>5729167</sizeHorzCX><sizeHorzCY>6263747</sizeHorzCY><sizeVertCX>201786</sizeVertCX><sizeVertCY>764766</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>189</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>191</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>194501</sizeHorzCY><sizeVertCX>7519643</sizeVertCX><sizeVertCY>7952138</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
||||||
</Desktop>
|
</Desktop>
|
||||||
</Workspace>
|
</Workspace>
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FREERTOS_CONFIG_H
|
#ifndef FREERTOS_CONFIG_H
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef INT_QUEUE_TIMER_H
|
#ifndef INT_QUEUE_TIMER_H
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*-----------------------------------------------------------
|
/*-----------------------------------------------------------
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* ****************************************************************************
|
/* ****************************************************************************
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Standard includes. */
|
/* Standard includes. */
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.1.0 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Hardware specific includes. */
|
/* Hardware specific includes. */
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Standard includes. */
|
/* Standard includes. */
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "FreeRTOS.h"
|
#include "FreeRTOS.h"
|
||||||
|
@ -65,8 +86,8 @@
|
||||||
/* include the port-dependent configuration */
|
/* include the port-dependent configuration */
|
||||||
#include "lwipcfg_msvc.h"
|
#include "lwipcfg_msvc.h"
|
||||||
|
|
||||||
/* Dimensions the cTxBuffer array - which is itself used to hold replies from
|
/* Dimensions the cTxBuffer array - which is itself used to hold replies from
|
||||||
command line commands. cTxBuffer is a shared buffer, so protected by the
|
command line commands. cTxBuffer is a shared buffer, so protected by the
|
||||||
xTxBufferMutex mutex. */
|
xTxBufferMutex mutex. */
|
||||||
#define lwipappsTX_BUFFER_SIZE 1024
|
#define lwipappsTX_BUFFER_SIZE 1024
|
||||||
|
|
||||||
|
@ -74,7 +95,7 @@ xTxBufferMutex mutex. */
|
||||||
available. */
|
available. */
|
||||||
#define lwipappsMAX_TIME_TO_WAIT_FOR_TX_BUFFER_MS ( 100 / portTICK_RATE_MS )
|
#define lwipappsMAX_TIME_TO_WAIT_FOR_TX_BUFFER_MS ( 100 / portTICK_RATE_MS )
|
||||||
|
|
||||||
/* Definitions of the various SSI callback functions within the pccSSITags
|
/* Definitions of the various SSI callback functions within the pccSSITags
|
||||||
array. If pccSSITags is updated, then these definitions must also be updated. */
|
array. If pccSSITags is updated, then these definitions must also be updated. */
|
||||||
#define ssiTASK_STATS_INDEX 0
|
#define ssiTASK_STATS_INDEX 0
|
||||||
#define ssiRUN_TIME_STATS_INDEX 1
|
#define ssiRUN_TIME_STATS_INDEX 1
|
||||||
|
@ -95,9 +116,9 @@ static unsigned short uslwIPAppsSSIHandler( int iIndex, char *pcBuffer, int iBuf
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/* The SSI strings that are embedded in the served html files. If this array
|
/* The SSI strings that are embedded in the served html files. If this array
|
||||||
is changed, then the index position defined by the #defines such as
|
is changed, then the index position defined by the #defines such as
|
||||||
ssiTASK_STATS_INDEX above must also be updated. */
|
ssiTASK_STATS_INDEX above must also be updated. */
|
||||||
static const char *pccSSITags[] =
|
static const char *pccSSITags[] =
|
||||||
{
|
{
|
||||||
"rtos_stats",
|
"rtos_stats",
|
||||||
"run_stats"
|
"run_stats"
|
||||||
|
@ -106,11 +127,11 @@ static const char *pccSSITags[] =
|
||||||
/* Semaphore used to guard the Tx buffer. */
|
/* Semaphore used to guard the Tx buffer. */
|
||||||
static xSemaphoreHandle xTxBufferMutex = NULL;
|
static xSemaphoreHandle xTxBufferMutex = NULL;
|
||||||
|
|
||||||
/* The Tx buffer itself. This is used to hold the text generated by the
|
/* The Tx buffer itself. This is used to hold the text generated by the
|
||||||
execution of command line commands, and (hopefully) the execution of
|
execution of command line commands, and (hopefully) the execution of
|
||||||
server side include callbacks. It is a shared buffer so protected by the
|
server side include callbacks. It is a shared buffer so protected by the
|
||||||
xTxBufferMutex mutex. pcLwipAppsBlockingGetTxBuffer() and
|
xTxBufferMutex mutex. pcLwipAppsBlockingGetTxBuffer() and
|
||||||
vLwipAppsReleaseTxBuffer() are provided to obtain and release the
|
vLwipAppsReleaseTxBuffer() are provided to obtain and release the
|
||||||
xTxBufferMutex respectively. pcLwipAppsBlockingGetTxBuffer() must be used with
|
xTxBufferMutex respectively. pcLwipAppsBlockingGetTxBuffer() must be used with
|
||||||
caution as it has the potential to block. */
|
caution as it has the potential to block. */
|
||||||
static signed char cTxBuffer[ lwipappsTX_BUFFER_SIZE ];
|
static signed char cTxBuffer[ lwipappsTX_BUFFER_SIZE ];
|
||||||
|
@ -143,7 +164,7 @@ static struct netif xNetIf;
|
||||||
/* Install the server side include handler. */
|
/* Install the server side include handler. */
|
||||||
http_set_ssi_handler( uslwIPAppsSSIHandler, pccSSITags, sizeof( pccSSITags ) / sizeof( char * ) );
|
http_set_ssi_handler( uslwIPAppsSSIHandler, pccSSITags, sizeof( pccSSITags ) / sizeof( char * ) );
|
||||||
|
|
||||||
/* Create the mutex used to ensure mutual exclusive access to the Tx
|
/* Create the mutex used to ensure mutual exclusive access to the Tx
|
||||||
buffer. */
|
buffer. */
|
||||||
xTxBufferMutex = xSemaphoreCreateMutex();
|
xTxBufferMutex = xSemaphoreCreateMutex();
|
||||||
configASSERT( xTxBufferMutex );
|
configASSERT( xTxBufferMutex );
|
||||||
|
@ -169,7 +190,7 @@ extern char *pcMainGetTaskStatusMessage( void );
|
||||||
|
|
||||||
/* The SSI handler function that generates text depending on the index of
|
/* The SSI handler function that generates text depending on the index of
|
||||||
the SSI tag encountered. */
|
the SSI tag encountered. */
|
||||||
|
|
||||||
switch( iIndex )
|
switch( iIndex )
|
||||||
{
|
{
|
||||||
case ssiTASK_STATS_INDEX :
|
case ssiTASK_STATS_INDEX :
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,29 +29,49 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
*/
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef LWIP_APPS_H
|
#ifndef LWIP_APPS_H
|
||||||
#define LWIP_APPS_H
|
#define LWIP_APPS_H
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
/*
|
/*
|
||||||
FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
|
FreeRTOS V7.4.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||||
|
|
||||||
|
FEATURES AND PORTS ARE ADDED TO FREERTOS ALL THE TIME. PLEASE VISIT
|
||||||
|
http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
* *
|
* *
|
||||||
|
@ -27,28 +29,47 @@
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
FreeRTOS is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
the terms of the GNU General Public License (version 2) as published by the
|
||||||
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
|
||||||
>>>NOTE<<< The modification to the GPL is included to allow you to
|
|
||||||
|
>>>>>>NOTE<<<<<< The modification to the GPL is included to allow you to
|
||||||
distribute a combined work that includes FreeRTOS without being obliged to
|
distribute a combined work that includes FreeRTOS without being obliged to
|
||||||
provide the source code for proprietary components outside of the FreeRTOS
|
provide the source code for proprietary components outside of the FreeRTOS
|
||||||
kernel. FreeRTOS is distributed in the hope that it will be useful, but
|
kernel.
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
more details. You should have received a copy of the GNU General Public
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
License and the FreeRTOS license exception along with FreeRTOS; if not it
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
can be viewed here: http://www.freertos.org/a00114.html and also obtained
|
details. You should have received a copy of the GNU General Public License
|
||||||
by writing to Richard Barry, contact details for whom are available on the
|
and the FreeRTOS license exception along with FreeRTOS; if not itcan be
|
||||||
FreeRTOS WEB site.
|
viewed here: http://www.freertos.org/a00114.html and also obtained by
|
||||||
|
writing to Real Time Engineers Ltd., contact details for whom are available
|
||||||
|
on the FreeRTOS WEB site.
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
1 tab == 4 spaces!
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, latest information, license and
|
***************************************************************************
|
||||||
contact details.
|
* *
|
||||||
|
* Having a problem? Start by reading the FAQ "My application does *
|
||||||
|
* not run, what could be wrong?" *
|
||||||
|
* *
|
||||||
|
* http://www.FreeRTOS.org/FAQHelp.html *
|
||||||
|
* *
|
||||||
|
***************************************************************************
|
||||||
|
|
||||||
http://www.SafeRTOS.com - A version that is certified for use in safety
|
|
||||||
critical systems.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Commercial support, development, porting,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
licensing and training services.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
|
Integrity Systems, who sell the code with commercial support,
|
||||||
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -64,8 +85,8 @@
|
||||||
* - is not the correct page to view for information on using this lwIP demo.
|
* - is not the correct page to view for information on using this lwIP demo.
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
*
|
*
|
||||||
* This project demonstrates use of the lwIP stack. The lwIP raw API is
|
* This project demonstrates use of the lwIP stack. The lwIP raw API is
|
||||||
* demonstrated by a simple http server that comes as part of the lwIP
|
* demonstrated by a simple http server that comes as part of the lwIP
|
||||||
* distribution - and executes in the tcpip task. The lwIP sockets API
|
* distribution - and executes in the tcpip task. The lwIP sockets API
|
||||||
* is demonstrated by a simple command line interpreter interface, which
|
* is demonstrated by a simple command line interpreter interface, which
|
||||||
* executes in its own task.
|
* executes in its own task.
|
||||||
|
@ -81,9 +102,9 @@
|
||||||
* executing as expected. It maintains a status string that can be viewed on
|
* executing as expected. It maintains a status string that can be viewed on
|
||||||
* the "task stats" page served by the web server.
|
* the "task stats" page served by the web server.
|
||||||
*
|
*
|
||||||
* More information about this demo, including details of how to set up the
|
* More information about this demo, including details of how to set up the
|
||||||
* network interface, and the command line commands that are available, is
|
* network interface, and the command line commands that are available, is
|
||||||
* available on the documentation page for this demo on the
|
* available on the documentation page for this demo on the
|
||||||
* http://www.FreeRTOS.org web site.
|
* http://www.FreeRTOS.org web site.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -122,8 +143,8 @@ static void prvCheckTimerCallback( xTimerHandle xTimer );
|
||||||
extern void lwIPAppsInit( void *pvArguments );
|
extern void lwIPAppsInit( void *pvArguments );
|
||||||
|
|
||||||
/* Callbacks to handle the command line commands defined by the xTaskStats and
|
/* Callbacks to handle the command line commands defined by the xTaskStats and
|
||||||
xRunTimeStats command definitions respectively. These functions are not
|
xRunTimeStats command definitions respectively. These functions are not
|
||||||
necessarily reentrant! They must be used from one task only - or at least by
|
necessarily reentrant! They must be used from one task only - or at least by
|
||||||
only one task at a time. */
|
only one task at a time. */
|
||||||
static portBASE_TYPE prvTaskStatsCommand( signed char *pcWriteBuffer, size_t xWriteBufferLen, const signed char * pcCommandString );
|
static portBASE_TYPE prvTaskStatsCommand( signed char *pcWriteBuffer, size_t xWriteBufferLen, const signed char * pcCommandString );
|
||||||
static portBASE_TYPE prvRunTimeStatsCommand( signed char *pcWriteBuffer, size_t xWriteBufferLen, const signed char * pcCommandString );
|
static portBASE_TYPE prvRunTimeStatsCommand( signed char *pcWriteBuffer, size_t xWriteBufferLen, const signed char * pcCommandString );
|
||||||
|
@ -131,7 +152,7 @@ static portBASE_TYPE prvRunTimeStatsCommand( signed char *pcWriteBuffer, size_t
|
||||||
/* The string that latches the current demo status. */
|
/* The string that latches the current demo status. */
|
||||||
static char *pcStatusMessage = "All tasks running without error";
|
static char *pcStatusMessage = "All tasks running without error";
|
||||||
|
|
||||||
/* Variables used in the creation of the run time stats time base. Run time
|
/* Variables used in the creation of the run time stats time base. Run time
|
||||||
stats record how much time each task spends in the Running state. */
|
stats record how much time each task spends in the Running state. */
|
||||||
long long llInitialRunTimeCounterValue = 0LL, llRunTimeStatsDivisor = 0LL;
|
long long llInitialRunTimeCounterValue = 0LL, llRunTimeStatsDivisor = 0LL;
|
||||||
|
|
||||||
|
@ -234,7 +255,7 @@ void vApplicationMallocFailedHook( void )
|
||||||
{
|
{
|
||||||
const unsigned long ulLongSleep = 1000UL;
|
const unsigned long ulLongSleep = 1000UL;
|
||||||
|
|
||||||
/* Can be implemented if required, but probably not required in this
|
/* Can be implemented if required, but probably not required in this
|
||||||
environment and running this demo. */
|
environment and running this demo. */
|
||||||
taskDISABLE_INTERRUPTS();
|
taskDISABLE_INTERRUPTS();
|
||||||
for( ;; )
|
for( ;; )
|
||||||
|
@ -248,7 +269,7 @@ void vApplicationStackOverflowHook( void )
|
||||||
{
|
{
|
||||||
const unsigned long ulLongSleep = 1000UL;
|
const unsigned long ulLongSleep = 1000UL;
|
||||||
|
|
||||||
/* Can be implemented if required, but probably not required in this
|
/* Can be implemented if required, but probably not required in this
|
||||||
environment and running this demo. */
|
environment and running this demo. */
|
||||||
taskDISABLE_INTERRUPTS();
|
taskDISABLE_INTERRUPTS();
|
||||||
for( ;; )
|
for( ;; )
|
||||||
|
@ -281,7 +302,7 @@ void vMainConfigureTimerForRunTimeStats( void )
|
||||||
LARGE_INTEGER liPerformanceCounterFrequency, liInitialRunTimeValue;
|
LARGE_INTEGER liPerformanceCounterFrequency, liInitialRunTimeValue;
|
||||||
|
|
||||||
/* Initialise the variables used to create the run time stats time base.
|
/* Initialise the variables used to create the run time stats time base.
|
||||||
Run time stats record how much time each task spends in the Running
|
Run time stats record how much time each task spends in the Running
|
||||||
state. */
|
state. */
|
||||||
|
|
||||||
if( QueryPerformanceFrequency( &liPerformanceCounterFrequency ) == 0 )
|
if( QueryPerformanceFrequency( &liPerformanceCounterFrequency ) == 0 )
|
||||||
|
@ -309,7 +330,7 @@ unsigned long ulReturn;
|
||||||
/* What is the performance counter value now? */
|
/* What is the performance counter value now? */
|
||||||
QueryPerformanceCounter( &liCurrentCount );
|
QueryPerformanceCounter( &liCurrentCount );
|
||||||
|
|
||||||
/* Subtract the performance counter value reading taken when the
|
/* Subtract the performance counter value reading taken when the
|
||||||
application started to get a count from that reference point, then
|
application started to get a count from that reference point, then
|
||||||
scale to a 32 bit number. */
|
scale to a 32 bit number. */
|
||||||
ulReturn = ( unsigned long ) ( ( liCurrentCount.QuadPart - llInitialRunTimeCounterValue ) / llRunTimeStatsDivisor );
|
ulReturn = ( unsigned long ) ( ( liCurrentCount.QuadPart - llInitialRunTimeCounterValue ) / llRunTimeStatsDivisor );
|
||||||
|
@ -333,7 +354,7 @@ const char *const pcHeader = "Task State Priority Stack #\r\n********
|
||||||
strcpy( pcWriteBuffer, pcHeader );
|
strcpy( pcWriteBuffer, pcHeader );
|
||||||
vTaskList( pcWriteBuffer + strlen( pcHeader ) );
|
vTaskList( pcWriteBuffer + strlen( pcHeader ) );
|
||||||
|
|
||||||
/* There is no more data to return after this single string, so return
|
/* There is no more data to return after this single string, so return
|
||||||
pdFALSE. */
|
pdFALSE. */
|
||||||
return pdFALSE;
|
return pdFALSE;
|
||||||
}
|
}
|
||||||
|
@ -354,7 +375,7 @@ const char * const pcHeader = "Task Abs Time % Time\r\n*********
|
||||||
strcpy( pcWriteBuffer, pcHeader );
|
strcpy( pcWriteBuffer, pcHeader );
|
||||||
vTaskGetRunTimeStats( pcWriteBuffer + strlen( pcHeader ) );
|
vTaskGetRunTimeStats( pcWriteBuffer + strlen( pcHeader ) );
|
||||||
|
|
||||||
/* There is no more data to return after this single string, so return
|
/* There is no more data to return after this single string, so return
|
||||||
pdFALSE. */
|
pdFALSE. */
|
||||||
return pdFALSE;
|
return pdFALSE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -134,8 +134,8 @@ vector 27. */
|
||||||
/* The critical nesting functions defined within tasks.c. */
|
/* The critical nesting functions defined within tasks.c. */
|
||||||
extern void vTaskEnterCritical( void );
|
extern void vTaskEnterCritical( void );
|
||||||
extern void vTaskExitCritical( void );
|
extern void vTaskExitCritical( void );
|
||||||
#define portENTER_CRITICAL() vTaskEnterCritical();
|
#define portENTER_CRITICAL() vTaskEnterCritical()
|
||||||
#define portEXIT_CRITICAL() vTaskExitCritical();
|
#define portEXIT_CRITICAL() vTaskExitCritical()
|
||||||
|
|
||||||
/* As this port allows interrupt nesting... */
|
/* As this port allows interrupt nesting... */
|
||||||
unsigned long ulPortGetIPL( void ) __attribute__((naked));
|
unsigned long ulPortGetIPL( void ) __attribute__((naked));
|
||||||
|
|
|
@ -73,7 +73,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*-----------------------------------------------------------
|
/*-----------------------------------------------------------
|
||||||
* Implementation of functions defined in portable.h for the SH2A port.
|
* Implementation of functions defined in portable.h for the RX200 port.
|
||||||
*----------------------------------------------------------*/
|
*----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Scheduler includes. */
|
/* Scheduler includes. */
|
||||||
|
@ -137,8 +137,10 @@ extern void vTaskSwitchContext( void );
|
||||||
*/
|
*/
|
||||||
portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
||||||
{
|
{
|
||||||
|
/* Offset to end up on 8 byte boundary. */
|
||||||
|
pxTopOfStack--;
|
||||||
|
|
||||||
/* R0 is not included as it is the stack pointer. */
|
/* R0 is not included as it is the stack pointer. */
|
||||||
|
|
||||||
*pxTopOfStack = 0x00;
|
*pxTopOfStack = 0x00;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = 0x00;
|
*pxTopOfStack = 0x00;
|
||||||
|
@ -146,16 +148,16 @@ portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE
|
||||||
*pxTopOfStack = portINITIAL_PSW;
|
*pxTopOfStack = portINITIAL_PSW;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) pxCode;
|
*pxTopOfStack = ( portSTACK_TYPE ) pxCode;
|
||||||
|
|
||||||
/* When debugging it can be useful if every register is set to a known
|
/* When debugging it can be useful if every register is set to a known
|
||||||
value. Otherwise code space can be saved by just setting the registers
|
value. Otherwise code space can be saved by just setting the registers
|
||||||
that need to be set. */
|
that need to be set. */
|
||||||
#ifdef USE_FULL_REGISTER_INITIALISATION
|
#ifdef USE_FULL_REGISTER_INITIALISATION
|
||||||
{
|
{
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = 0xffffffff; /* r15. */
|
*pxTopOfStack = 0x12345678; /* r15. */
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = 0xeeeeeeee;
|
*pxTopOfStack = 0xaaaabbbb;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = 0xdddddddd;
|
*pxTopOfStack = 0xdddddddd;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
|
@ -271,7 +273,9 @@ void vTickISR( void )
|
||||||
|
|
||||||
/* Only select a new task if the preemptive scheduler is being used. */
|
/* Only select a new task if the preemptive scheduler is being used. */
|
||||||
#if( configUSE_PREEMPTION == 1 )
|
#if( configUSE_PREEMPTION == 1 )
|
||||||
|
{
|
||||||
taskYIELD();
|
taskYIELD();
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
|
@ -56,24 +56,24 @@
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
license and Real Time Engineers Ltd. contact details.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
fully thread aware and reentrant UDP/IP stack.
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
Integrity Systems, who sell the code with commercial support,
|
Integrity Systems, who sell the code with commercial support,
|
||||||
indemnification and middleware, under the OpenRTOS brand.
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*-----------------------------------------------------------
|
/*-----------------------------------------------------------
|
||||||
* Implementation of functions defined in portable.h for the SH2A port.
|
* Implementation of functions defined in portable.h for the RX600 port.
|
||||||
*----------------------------------------------------------*/
|
*----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Scheduler includes. */
|
/* Scheduler includes. */
|
||||||
|
@ -88,7 +88,7 @@
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Tasks should start with interrupts enabled and in Supervisor mode, therefore
|
/* Tasks should start with interrupts enabled and in Supervisor mode, therefore
|
||||||
PSW is set with U and I set, and PM and IPL clear. */
|
PSW is set with U and I set, and PM and IPL clear. */
|
||||||
#define portINITIAL_PSW ( ( portSTACK_TYPE ) 0x00030000 )
|
#define portINITIAL_PSW ( ( portSTACK_TYPE ) 0x00030000 )
|
||||||
#define portINITIAL_FPSW ( ( portSTACK_TYPE ) 0x00000100 )
|
#define portINITIAL_FPSW ( ( portSTACK_TYPE ) 0x00000100 )
|
||||||
|
@ -105,7 +105,7 @@ const portBASE_TYPE * p_vSoftwareInterruptEntry = &vSoftwareInterruptEntry;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Function to start the first task executing - written in asm code as direct
|
* Function to start the first task executing - written in asm code as direct
|
||||||
* access to registers is required.
|
* access to registers is required.
|
||||||
*/
|
*/
|
||||||
static void prvStartFirstTask( void );
|
static void prvStartFirstTask( void );
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ static void prvYieldHandler( void );
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The entry point for the software interrupt handler. This is the function
|
* The entry point for the software interrupt handler. This is the function
|
||||||
* that calls the inline asm function prvYieldHandler(). It is installed in
|
* that calls the inline asm function prvYieldHandler(). It is installed in
|
||||||
* the vector table, but the code that installs it is in prvYieldHandler rather
|
* the vector table, but the code that installs it is in prvYieldHandler rather
|
||||||
* than using a #pragma.
|
* than using a #pragma.
|
||||||
*/
|
*/
|
||||||
|
@ -133,19 +133,19 @@ extern void vTaskSwitchContext( void );
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* See header file for description.
|
* See header file for description.
|
||||||
*/
|
*/
|
||||||
portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
||||||
{
|
{
|
||||||
/* R0 is not included as it is the stack pointer. */
|
/* R0 is not included as it is the stack pointer. */
|
||||||
|
|
||||||
*pxTopOfStack = 0x00;
|
*pxTopOfStack = 0x00;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = portINITIAL_PSW;
|
*pxTopOfStack = portINITIAL_PSW;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) pxCode;
|
*pxTopOfStack = ( portSTACK_TYPE ) pxCode;
|
||||||
|
|
||||||
/* When debugging it can be useful if every register is set to a known
|
/* When debugging it can be useful if every register is set to a known
|
||||||
value. Otherwise code space can be saved by just setting the registers
|
value. Otherwise code space can be saved by just setting the registers
|
||||||
that need to be set. */
|
that need to be set. */
|
||||||
|
@ -186,9 +186,9 @@ portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE
|
||||||
pxTopOfStack -= 15;
|
pxTopOfStack -= 15;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
*pxTopOfStack = ( portSTACK_TYPE ) pvParameters; /* R1 */
|
*pxTopOfStack = ( portSTACK_TYPE ) pvParameters; /* R1 */
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = portINITIAL_FPSW;
|
*pxTopOfStack = portINITIAL_FPSW;
|
||||||
pxTopOfStack--;
|
pxTopOfStack--;
|
||||||
*pxTopOfStack = 0x12345678; /* Accumulator. */
|
*pxTopOfStack = 0x12345678; /* Accumulator. */
|
||||||
|
@ -207,19 +207,19 @@ extern void vApplicationSetupTimerInterrupt( void );
|
||||||
if( pxCurrentTCB != NULL )
|
if( pxCurrentTCB != NULL )
|
||||||
{
|
{
|
||||||
/* Call an application function to set up the timer that will generate the
|
/* Call an application function to set up the timer that will generate the
|
||||||
tick interrupt. This way the application can decide which peripheral to
|
tick interrupt. This way the application can decide which peripheral to
|
||||||
use. A demo application is provided to show a suitable example. */
|
use. A demo application is provided to show a suitable example. */
|
||||||
vApplicationSetupTimerInterrupt();
|
vApplicationSetupTimerInterrupt();
|
||||||
|
|
||||||
/* Enable the software interrupt. */
|
/* Enable the software interrupt. */
|
||||||
_IEN( _ICU_SWINT ) = 1;
|
_IEN( _ICU_SWINT ) = 1;
|
||||||
|
|
||||||
/* Ensure the software interrupt is clear. */
|
/* Ensure the software interrupt is clear. */
|
||||||
_IR( _ICU_SWINT ) = 0;
|
_IR( _ICU_SWINT ) = 0;
|
||||||
|
|
||||||
/* Ensure the software interrupt is set to the kernel priority. */
|
/* Ensure the software interrupt is set to the kernel priority. */
|
||||||
_IPR( _ICU_SWINT ) = configKERNEL_INTERRUPT_PRIORITY;
|
_IPR( _ICU_SWINT ) = configKERNEL_INTERRUPT_PRIORITY;
|
||||||
|
|
||||||
/* Start the first task. */
|
/* Start the first task. */
|
||||||
prvStartFirstTask();
|
prvStartFirstTask();
|
||||||
}
|
}
|
||||||
|
@ -240,13 +240,13 @@ static void prvStartFirstTask( void )
|
||||||
Just ensure the current stack is the user stack. */
|
Just ensure the current stack is the user stack. */
|
||||||
SETPSW U
|
SETPSW U
|
||||||
|
|
||||||
/* Obtain the location of the stack associated with which ever task
|
/* Obtain the location of the stack associated with which ever task
|
||||||
pxCurrentTCB is currently pointing to. */
|
pxCurrentTCB is currently pointing to. */
|
||||||
MOV.L #_pxCurrentTCB, R15
|
MOV.L #_pxCurrentTCB, R15
|
||||||
MOV.L [R15], R15
|
MOV.L [R15], R15
|
||||||
MOV.L [R15], R0
|
MOV.L [R15], R0
|
||||||
|
|
||||||
/* Restore the registers from the stack of the task pointed to by
|
/* Restore the registers from the stack of the task pointed to by
|
||||||
pxCurrentTCB. */
|
pxCurrentTCB. */
|
||||||
POP R15
|
POP R15
|
||||||
MVTACLO R15 /* Accumulator low 32 bits. */
|
MVTACLO R15 /* Accumulator low 32 bits. */
|
||||||
|
@ -271,7 +271,7 @@ void vTickISR( void )
|
||||||
vTaskIncrementTick();
|
vTaskIncrementTick();
|
||||||
}
|
}
|
||||||
set_ipl( configKERNEL_INTERRUPT_PRIORITY );
|
set_ipl( configKERNEL_INTERRUPT_PRIORITY );
|
||||||
|
|
||||||
/* Only select a new task if the preemptive scheduler is being used. */
|
/* Only select a new task if the preemptive scheduler is being used. */
|
||||||
#if( configUSE_PREEMPTION == 1 )
|
#if( configUSE_PREEMPTION == 1 )
|
||||||
taskYIELD();
|
taskYIELD();
|
||||||
|
@ -292,18 +292,18 @@ static void prvYieldHandler( void )
|
||||||
SETPSW I
|
SETPSW I
|
||||||
|
|
||||||
/* Move the data that was automatically pushed onto the interrupt stack when
|
/* Move the data that was automatically pushed onto the interrupt stack when
|
||||||
the interrupt occurred from the interrupt stack to the user stack.
|
the interrupt occurred from the interrupt stack to the user stack.
|
||||||
|
|
||||||
R15 is saved before it is clobbered. */
|
R15 is saved before it is clobbered. */
|
||||||
PUSH.L R15
|
PUSH.L R15
|
||||||
|
|
||||||
/* Read the user stack pointer. */
|
/* Read the user stack pointer. */
|
||||||
MVFC USP, R15
|
MVFC USP, R15
|
||||||
|
|
||||||
/* Move the address down to the data being moved. */
|
/* Move the address down to the data being moved. */
|
||||||
SUB #12, R15
|
SUB #12, R15
|
||||||
MVTC R15, USP
|
MVTC R15, USP
|
||||||
|
|
||||||
/* Copy the data across. */
|
/* Copy the data across. */
|
||||||
MOV.L [ R0 ], [ R15 ] ; R15
|
MOV.L [ R0 ], [ R15 ] ; R15
|
||||||
MOV.L 4[ R0 ], 4[ R15 ] ; PC
|
MOV.L 4[ R0 ], 4[ R15 ] ; PC
|
||||||
|
@ -311,13 +311,13 @@ static void prvYieldHandler( void )
|
||||||
|
|
||||||
/* Move the interrupt stack pointer to its new correct position. */
|
/* Move the interrupt stack pointer to its new correct position. */
|
||||||
ADD #12, R0
|
ADD #12, R0
|
||||||
|
|
||||||
/* All the rest of the registers are saved directly to the user stack. */
|
/* All the rest of the registers are saved directly to the user stack. */
|
||||||
SETPSW U
|
SETPSW U
|
||||||
|
|
||||||
/* Save the rest of the general registers (R15 has been saved already). */
|
/* Save the rest of the general registers (R15 has been saved already). */
|
||||||
PUSHM R1-R14
|
PUSHM R1-R14
|
||||||
|
|
||||||
/* Save the FPSW and accumulator. */
|
/* Save the FPSW and accumulator. */
|
||||||
MVFC FPSW, R15
|
MVFC FPSW, R15
|
||||||
PUSH.L R15
|
PUSH.L R15
|
||||||
|
@ -331,7 +331,7 @@ static void prvYieldHandler( void )
|
||||||
MOV.L #_pxCurrentTCB, R15
|
MOV.L #_pxCurrentTCB, R15
|
||||||
MOV.L [ R15 ], R15
|
MOV.L [ R15 ], R15
|
||||||
MOV.L R0, [ R15 ]
|
MOV.L R0, [ R15 ]
|
||||||
|
|
||||||
/* Ensure the interrupt mask is set to the syscall priority while the kernel
|
/* Ensure the interrupt mask is set to the syscall priority while the kernel
|
||||||
structures are being accessed. */
|
structures are being accessed. */
|
||||||
MVTIPL #configMAX_SYSCALL_INTERRUPT_PRIORITY
|
MVTIPL #configMAX_SYSCALL_INTERRUPT_PRIORITY
|
||||||
|
@ -366,7 +366,7 @@ static void prvYieldHandler( void )
|
||||||
void vPortEndScheduler( void )
|
void vPortEndScheduler( void )
|
||||||
{
|
{
|
||||||
/* Not implemented as there is nothing to return to. */
|
/* Not implemented as there is nothing to return to. */
|
||||||
|
|
||||||
/* The following line is just to prevent the symbol getting optimised away. */
|
/* The following line is just to prevent the symbol getting optimised away. */
|
||||||
( void ) vTaskSwitchContext();
|
( void ) vTaskSwitchContext();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1314,7 +1314,7 @@ static void prvCopyDataToQueue( xQUEUE *pxQueue, const void *pvItemToQueue, port
|
||||||
}
|
}
|
||||||
else if( xPosition == queueSEND_TO_BACK )
|
else if( xPosition == queueSEND_TO_BACK )
|
||||||
{
|
{
|
||||||
memcpy( ( void * ) pxQueue->pcWriteTo, pvItemToQueue, ( unsigned ) pxQueue->uxItemSize );
|
memcpy( ( void * ) pxQueue->pcWriteTo, pvItemToQueue, ( size_t ) pxQueue->uxItemSize );
|
||||||
pxQueue->pcWriteTo += pxQueue->uxItemSize;
|
pxQueue->pcWriteTo += pxQueue->uxItemSize;
|
||||||
if( pxQueue->pcWriteTo >= pxQueue->pcTail )
|
if( pxQueue->pcWriteTo >= pxQueue->pcTail )
|
||||||
{
|
{
|
||||||
|
@ -1323,7 +1323,7 @@ static void prvCopyDataToQueue( xQUEUE *pxQueue, const void *pvItemToQueue, port
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
memcpy( ( void * ) pxQueue->pcReadFrom, pvItemToQueue, ( unsigned ) pxQueue->uxItemSize );
|
memcpy( ( void * ) pxQueue->pcReadFrom, pvItemToQueue, ( size_t ) pxQueue->uxItemSize );
|
||||||
pxQueue->pcReadFrom -= pxQueue->uxItemSize;
|
pxQueue->pcReadFrom -= pxQueue->uxItemSize;
|
||||||
if( pxQueue->pcReadFrom < pxQueue->pcHead )
|
if( pxQueue->pcReadFrom < pxQueue->pcHead )
|
||||||
{
|
{
|
||||||
|
@ -1344,7 +1344,7 @@ static void prvCopyDataFromQueue( xQUEUE * const pxQueue, const void *pvBuffer )
|
||||||
{
|
{
|
||||||
pxQueue->pcReadFrom = pxQueue->pcHead;
|
pxQueue->pcReadFrom = pxQueue->pcHead;
|
||||||
}
|
}
|
||||||
memcpy( ( void * ) pvBuffer, ( void * ) pxQueue->pcReadFrom, ( unsigned ) pxQueue->uxItemSize );
|
memcpy( ( void * ) pvBuffer, ( void * ) pxQueue->pcReadFrom, ( size_t ) pxQueue->uxItemSize );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
|
@ -56,19 +56,19 @@
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
http://www.FreeRTOS.org - Documentation, books, training, latest versions,
|
||||||
license and Real Time Engineers Ltd. contact details.
|
license and Real Time Engineers Ltd. contact details.
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
including FreeRTOS+Trace - an indispensable productivity tool, and our new
|
||||||
fully thread aware and reentrant UDP/IP stack.
|
fully thread aware and reentrant UDP/IP stack.
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High
|
||||||
Integrity Systems, who sell the code with commercial support,
|
Integrity Systems, who sell the code with commercial support,
|
||||||
indemnification and middleware, under the OpenRTOS brand.
|
indemnification and middleware, under the OpenRTOS brand.
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
engineered and independently SIL3 certified version for use in safety and
|
||||||
mission critical applications that require provable dependability.
|
mission critical applications that require provable dependability.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -204,7 +204,7 @@ PRIVILEGED_DATA static volatile portTickType xNextTaskUnblockTime = ( portTic
|
||||||
|
|
||||||
PRIVILEGED_DATA static char pcStatsString[ 50 ] ;
|
PRIVILEGED_DATA static char pcStatsString[ 50 ] ;
|
||||||
PRIVILEGED_DATA static unsigned long ulTaskSwitchedInTime = 0UL; /*< Holds the value of a timer/counter the last time a task was switched in. */
|
PRIVILEGED_DATA static unsigned long ulTaskSwitchedInTime = 0UL; /*< Holds the value of a timer/counter the last time a task was switched in. */
|
||||||
PRIVILEGED_DATA static unsigned long ulTotalRunTime; /*< Holds the total amount of execution time as defined by the run time counter clock. */
|
PRIVILEGED_DATA static unsigned long ulTotalRunTime = 0UL; /*< Holds the total amount of execution time as defined by the run time counter clock. */
|
||||||
static void prvGenerateRunTimeStatsForTasksInList( const signed char *pcWriteBuffer, xList *pxList, unsigned long ulTotalRunTimeDiv100 ) PRIVILEGED_FUNCTION;
|
static void prvGenerateRunTimeStatsForTasksInList( const signed char *pcWriteBuffer, xList *pxList, unsigned long ulTotalRunTimeDiv100 ) PRIVILEGED_FUNCTION;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -709,6 +709,14 @@ tskTCB * pxNewTCB;
|
||||||
if( ( void * ) xTaskToDelete == NULL )
|
if( ( void * ) xTaskToDelete == NULL )
|
||||||
{
|
{
|
||||||
portYIELD_WITHIN_API();
|
portYIELD_WITHIN_API();
|
||||||
|
|
||||||
|
/* Ensure the task goes no further if it takes a few
|
||||||
|
instructions for the yield to occur. */
|
||||||
|
for( ;; )
|
||||||
|
{
|
||||||
|
/* Nothing to do here, just ensuring the task does not
|
||||||
|
execute further before the yield has taken effect. */
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1030,13 +1038,13 @@ tskTCB * pxNewTCB;
|
||||||
{
|
{
|
||||||
portYIELD_WITHIN_API();
|
portYIELD_WITHIN_API();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Remove compiler warning about unused variables when the port
|
||||||
|
optimised task selection is not being used. */
|
||||||
|
( void ) uxPriorityUsedOnEntry;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
taskEXIT_CRITICAL();
|
taskEXIT_CRITICAL();
|
||||||
|
|
||||||
/* Remove compiler warning about unused parameter when the port
|
|
||||||
optimised task selection is not being used. */
|
|
||||||
( void ) uxPriorityUsedOnEntry;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* INCLUDE_vTaskPrioritySet */
|
#endif /* INCLUDE_vTaskPrioritySet */
|
||||||
|
@ -2151,6 +2159,7 @@ static portTASK_FUNCTION( prvIdleTask, pvParameters )
|
||||||
#if ( configUSE_TICKLESS_IDLE != 0 )
|
#if ( configUSE_TICKLESS_IDLE != 0 )
|
||||||
{
|
{
|
||||||
portTickType xExpectedIdleTime;
|
portTickType xExpectedIdleTime;
|
||||||
|
|
||||||
/* It is not desirable to suspend then resume the scheduler on
|
/* It is not desirable to suspend then resume the scheduler on
|
||||||
each iteration of the idle task. Therefore, a preliminary
|
each iteration of the idle task. Therefore, a preliminary
|
||||||
test of the expected idle time is performed without the
|
test of the expected idle time is performed without the
|
||||||
|
|
Loading…
Reference in a new issue