]> git.sur5r.net Git - freertos/commitdiff
More work in progress on NEC port and demo.
authorRichardBarry <RichardBarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Mon, 26 Jan 2009 17:30:18 +0000 (17:30 +0000)
committerRichardBarry <RichardBarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Mon, 26 Jan 2009 17:30:18 +0000 (17:30 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@626 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

Demo/NEC_V850ES_Fx3_IAR/FreeRTOSConfig.h
Demo/NEC_V850ES_Fx3_IAR/main.c
Demo/NEC_V850ES_Fx3_IAR/rtosdemo.ewp
Demo/NEC_V850ES_Fx3_IAR/serial/serial.c [new file with mode: 0644]
Demo/NEC_V850ES_Fx3_IAR/serial/serialISR.s85 [new file with mode: 0644]
Demo/NEC_V850ES_Fx3_IAR/settings/rtosdemo.dbgdt
Demo/NEC_V850ES_Fx3_IAR/settings/rtosdemo.dni
Demo/NEC_V850ES_Fx3_IAR/settings/rtosdemo.wsdt

index dc833811213bea9dad4ab0e73d4cd0076bd9422c..14bc86b30fe6d7f378624d5bce6b11f6abc5d93f 100644 (file)
@@ -86,8 +86,8 @@
 #define configCPU_CLOCK_HZ                             ( ( unsigned portLONG ) 48000000 )  /* using the external clock source */\r
 #define configTICK_RATE_HZ                             ( ( portTickType ) 1000 )\r
 #define configMAX_PRIORITIES                   ( ( unsigned portBASE_TYPE ) 4 )\r
-#define configMINIMAL_STACK_SIZE               ( ( unsigned portSHORT ) 64 )\r
-#define configTOTAL_HEAP_SIZE                  ( (size_t ) ( 20000 ) )\r
+#define configMINIMAL_STACK_SIZE               ( ( unsigned portSHORT ) 85 )\r
+#define configTOTAL_HEAP_SIZE                  ( (size_t ) ( 60000 ) )\r
 #define configMAX_TASK_NAME_LEN                        ( 10 )\r
 #define configUSE_TRACE_FACILITY               0\r
 #define configUSE_16_BIT_TICKS                 0\r
index c6d5d256827202eb5b6919ee2ea0c20be2ba29b2..38a0864f3f1d6726f79c198ebb8c880436fed75a 100644 (file)
@@ -81,6 +81,8 @@
 #define mainGEN_QUEUE_TASK_PRIORITY                    ( tskIDLE_PRIORITY )\r
 #define mainCOMTEST_PRIORITY                           ( tskIDLE_PRIORITY + 1 )\r
 \r
+#define mainCHECK_PARAMETER                                    ( ( void * ) 0x12345678 )\r
+\r
 /* The period between executions of the check task. */\r
 #define mainNO_ERROR_DELAY             ( ( portTickType ) 3000 / portTICK_RATE_MS  )\r
 #define mainERROR_DELAY                        ( ( portTickType ) 500 / portTICK_RATE_MS )\r
@@ -129,10 +131,10 @@ void main( void )
        vAltStartComTestTasks( mainCOMTEST_PRIORITY, mainBAUD_RATE, mainCOMTEST_LED );\r
 \r
        /* Create the tasks defined within this file. */\r
-       xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
+       xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, mainCHECK_PARAMETER, mainCHECK_TASK_PRIORITY, NULL );\r
 \r
-       xTaskCreate( vRegTest1, "Check", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );\r
-       xTaskCreate( vRegTest2, "Check", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( vRegTest1, "Reg1", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( vRegTest2, "Reg2", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );\r
 \r
        /* The suicide tasks must be created last as they need to know how many\r
        tasks were running prior to their creation in order to ascertain whether\r
@@ -152,8 +154,11 @@ static void prvCheckTask( void *pvParameters )
 {\r
 portTickType xDelayPeriod = mainNO_ERROR_DELAY, xLastWakeTime;\r
 \r
-       /* Just to remove the compiler warning. */\r
-       ( void ) pvParameters;\r
+       /* Ensure parameter is passed in correctly. */\r
+       if( pvParameters != mainCHECK_PARAMETER )\r
+       {\r
+               xDelayPeriod = mainERROR_DELAY;\r
+       }\r
 \r
        xLastWakeTime = xTaskGetTickCount();\r
        \r
@@ -293,5 +298,3 @@ void vApplicationStackOverflowHook( void )
        for( ;; );\r
 }\r
 \r
-\r
-\r
index 42db439828df641915b8d7ed6626d88c616b69c4..4b1c1ff7ea2f9815cfff97a58f1ec45735c779d4 100644 (file)
         <option>\r
           <name>OAIncludePath2</name>\r
           <state>$PROJ_DIR$</state>\r
+          <state>$PROJ_DIR$\..\..\Source\portable\IAR\V850ES_Fx3</state>\r
         </option>\r
         <option>\r
           <name>OAStdIncCheck</name>\r
     <file>\r
       <name>$PROJ_DIR$\serial\serial.c</name>\r
     </file>\r
+    <file>\r
+      <name>$PROJ_DIR$\serial\serialISR.s85</name>\r
+    </file>\r
   </group>\r
   <group>\r
     <name>kernel source</name>\r
diff --git a/Demo/NEC_V850ES_Fx3_IAR/serial/serial.c b/Demo/NEC_V850ES_Fx3_IAR/serial/serial.c
new file mode 100644 (file)
index 0000000..a55708a
--- /dev/null
@@ -0,0 +1,256 @@
+/*\r
+       FreeRTOS.org V5.1.1 - Copyright (C) 2003-2008 Richard Barry.\r
+\r
+       This file is part of the FreeRTOS.org distribution.\r
+\r
+       FreeRTOS.org is free software; you can redistribute it and/or modify\r
+       it under the terms of the GNU General Public License as published by\r
+       the Free Software Foundation; either version 2 of the License, or\r
+       (at your option) any later version.\r
+\r
+       FreeRTOS.org is distributed in the hope that it will be useful,\r
+       but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+       GNU General Public License for more details.\r
+\r
+       You should have received a copy of the GNU General Public License\r
+       along with FreeRTOS.org; if not, write to the Free Software\r
+       Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
+\r
+       A special exception to the GPL can be applied should you wish to distribute\r
+       a combined work that includes FreeRTOS.org, without being obliged to provide\r
+       the source code for any proprietary components.  See the licensing section\r
+       of http://www.FreeRTOS.org for full details of how and when the exception\r
+       can be applied.\r
+\r
+    ***************************************************************************\r
+    ***************************************************************************\r
+    *                                                                         *\r
+    * SAVE TIME AND MONEY!  We can port FreeRTOS.org to your own hardware,    *\r
+    * and even write all or part of your application on your behalf.          *\r
+    * See http://www.OpenRTOS.com for details of the services we provide to   *\r
+    * expedite your project.                                                  *\r
+    *                                                                         *\r
+    ***************************************************************************\r
+    ***************************************************************************\r
+\r
+       Please ensure to read the configuration and relevant port sections of the\r
+       online documentation.\r
+\r
+       http://www.FreeRTOS.org - Documentation, latest information, license and\r
+       contact details.\r
+\r
+       http://www.SafeRTOS.com - A version that is certified for use in safety\r
+       critical systems.\r
+\r
+       http://www.OpenRTOS.com - Commercial support, development, porting,\r
+       licensing and training services.\r
+*/\r
+\r
+/*\r
+       BASIC INTERRUPT DRIVEN SERIAL PORT DRIVER FOR UART0.\r
+*/\r
+\r
+/* Standard includes. */\r
+#include <stdlib.h>\r
+\r
+/* Scheduler includes. */\r
+#include "FreeRTOS.h"\r
+#include "queue.h"\r
+\r
+/* Demo application includes. */\r
+#include "serial.h"\r
+\r
+\r
+\r
+#define serRX_DATA_PIN         ( 0x01 )\r
+#define serTX_DATA_PIN         ( 0x02 )\r
+\r
+#define serCLOCK_Fxx_DIV_8             0x03\r
+#define serUPWR                ( 0x80 )\r
+#define serUTXE                ( 0x40 )\r
+#define serURXE                ( 0x20 )\r
+#define serUCL         ( 0x02 )\r
+#define serLSB         ( 0x10 )\r
+\r
+/* Misc. */\r
+#define serINVALID_QUEUE                               ( ( xQueueHandle ) 0 )\r
+#define serHANDLE                                              ( ( xComPortHandle ) 1 )\r
+#define serNO_BLOCK                                            ( ( portTickType ) 0 )\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
+/* Queues used to hold received characters, and characters waiting to be\r
+transmitted. */\r
+static xQueueHandle xRxedChars;\r
+static xQueueHandle xCharsForTx;\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
+/* Interrupt entry point written in the assembler file serialISR.s79. */\r
+extern void vSerialISREntry( void );\r
+\r
+/* The interrupt service routine - called from the assembly entry point. */\r
+void vSerialISR( void );\r
+\r
+static volatile unsigned long ulTxInProgress = pdFALSE;\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
+/*\r
+ * See the serial2.h header file.\r
+ */\r
+xComPortHandle xSerialPortInitMinimal( unsigned portLONG ulWantedBaud, unsigned portBASE_TYPE uxQueueLength )\r
+{\r
+xComPortHandle xReturn = serHANDLE;\r
+extern void ( vUART_ISR )( void );\r
+const unsigned portLONG ulFuclk = ( configCPU_CLOCK_HZ / 2 ) / 8UL;\r
+\r
+       /* Create the queues used to hold Rx and Tx characters. */\r
+       xRxedChars = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed portCHAR ) );\r
+       xCharsForTx = xQueueCreate( uxQueueLength + 1, ( unsigned portBASE_TYPE ) sizeof( signed portCHAR ) );\r
+\r
+       /* If the queues were created correctly then setup the serial port\r
+       hardware. */\r
+       if( ( xRxedChars != serINVALID_QUEUE ) && ( xCharsForTx != serINVALID_QUEUE ) )\r
+       {\r
+               portENTER_CRITICAL();\r
+               {\r
+                       /* Set the UART0 Rx and Tx pins to their alternative function. */\r
+                       PMC3 |= ( serRX_DATA_PIN | serTX_DATA_PIN );\r
+                       PM3 &= ~( serTX_DATA_PIN );\r
+\r
+                       /* Setup clock for required baud. */                    \r
+                       UD0CTL1 = serCLOCK_Fxx_DIV_8;\r
+                       UD0CTL2 = ulFuclk / ( 2 * ulWantedBaud );\r
+\r
+                       /* Enable, n81. */                      \r
+                       UD0CTL0 = ( serUPWR | serUTXE | serURXE | serUCL | serLSB );\r
+                       \r
+                       UD0TIC  = 0x07;                                                 /* UARTA0 transmit enable interrupt request signal clear, mask release, priority level 7 set */\r
+                       UD0RIC  = 0x07;                                                 /* UARTA0 receive end interrupt request signal clear, mask release, priority level 7 set */                     \r
+                       \r
+                       ulTxInProgress = pdFALSE;\r
+               }\r
+               portEXIT_CRITICAL();\r
+       }\r
+       else\r
+       {\r
+               xReturn = ( xComPortHandle ) 0;\r
+       }\r
+\r
+       /* This demo file only supports a single port but we have to return\r
+       something to comply with the standard demo header file. */\r
+       return xReturn;\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+signed portBASE_TYPE xSerialGetChar( xComPortHandle pxPort, signed portCHAR *pcRxedChar, portTickType xBlockTime )\r
+{\r
+       /* The port handle is not required as this driver only supports one port. */\r
+       ( void ) pxPort;\r
+\r
+       /* Get the next character from the buffer.  Return false if no characters\r
+       are available, or arrive before xBlockTime expires. */\r
+       if( xQueueReceive( xRxedChars, pcRxedChar, xBlockTime ) )\r
+       {\r
+               return pdTRUE;\r
+       }\r
+       else\r
+       {\r
+               return pdFALSE;\r
+       }\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vSerialPutString( xComPortHandle pxPort, const signed portCHAR * const pcString, unsigned portSHORT usStringLength )\r
+{\r
+signed portCHAR *pxNext;\r
+\r
+       /* A couple of parameters that this port does not use. */\r
+       ( void ) usStringLength;\r
+       ( void ) pxPort;\r
+\r
+       /* NOTE: This implementation does not handle the queue being full as no\r
+       block time is used! */\r
+\r
+       /* The port handle is not required as this driver only supports UART0. */\r
+       ( void ) pxPort;\r
+\r
+       /* Send each character in the string, one at a time. */\r
+       pxNext = ( signed portCHAR * ) pcString;\r
+       while( *pxNext )\r
+       {\r
+               xSerialPutChar( pxPort, *pxNext, serNO_BLOCK );\r
+               pxNext++;\r
+       }\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+signed portBASE_TYPE xSerialPutChar( xComPortHandle pxPort, signed portCHAR cOutChar, portTickType xBlockTime )\r
+{\r
+portBASE_TYPE xReturn = pdPASS;\r
+\r
+       portENTER_CRITICAL();\r
+       {\r
+               if( ulTxInProgress == pdFALSE )\r
+               {\r
+                       UD0TX = cOutChar;\r
+                       ulTxInProgress = pdTRUE;\r
+               }\r
+               else\r
+               {\r
+                       if( xQueueSend( xCharsForTx, &cOutChar, xBlockTime ) != pdPASS )\r
+                       {\r
+                               xReturn = pdFAIL;\r
+                       }\r
+               }\r
+       }\r
+       portEXIT_CRITICAL();\r
+       \r
+       return xReturn;\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+void vSerialClose( xComPortHandle xPort )\r
+{\r
+       /* Not supported as not required by the demo application. */\r
+}\r
+/*-----------------------------------------------------------*/\r
+\r
+//#pragma vector=INTUD0T_vector\r
+//extern __interrupt void vUARTTxISRWrapper( void );\r
+//#pragma required=vUARTTxISRWrapper\r
+\r
+void vUARTTxISRHandler( void )\r
+{\r
+char cChar;\r
+portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;\r
+\r
+       if( xQueueReceiveFromISR( xCharsForTx, &cChar, &xHigherPriorityTaskWoken ) == pdTRUE )\r
+       {\r
+               UD0TX = cChar;\r
+       }\r
+       else\r
+       {\r
+               ulTxInProgress = pdFALSE;\r
+       }\r
+}\r
+\r
+//#pragma vector=INTUD0R_vector\r
+//extern __interrupt void vUARTRxISRWrapper( void );\r
+//#pragma required=vUARTRxISRWrapper\r
+\r
+void vUARTRxISRHandler( void )\r
+{\r
+portCHAR cChar;\r
+portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;\r
+\r
+       cChar = UD0RX;\r
+       xQueueSendFromISR( xRxedChars, &cChar, &xHigherPriorityTaskWoken );\r
+}\r
+\r
+\r
+\r
+\r
+       \r
diff --git a/Demo/NEC_V850ES_Fx3_IAR/serial/serialISR.s85 b/Demo/NEC_V850ES_Fx3_IAR/serial/serialISR.s85
new file mode 100644 (file)
index 0000000..01e81ff
--- /dev/null
@@ -0,0 +1,47 @@
+               RSEG ICODE:CODE\r
+\r
+               EXTERN vUARTRxISRHandler\r
+               EXTERN vUARTTxISRHandler                \r
+               \r
+               PUBLIC vUARTRxISRWrapper\r
+               PUBLIC vUARTTxISRWrapper                \r
+\r
+; Wrappers for the serial port interrupt service routines.  These can cause a\r
+; context switch so requires an assembly wrapper.\r
+\r
+; Defines the portSAVE_CONTEXT and portRESTORE_CONTEXT macros.\r
+#include "ISR_Support.h"\r
+\r
+vUARTRxISRWrapper:\r
+\r
+       portSAVE_CONTEXT                                ; Save the context of the current task.\r
+\r
+       jarl    vUARTRxISRHandler, lp   ; Call the ISR routine.\r
+\r
+       portRESTORE_CONTEXT                             ; Restore the context of the current task -\r
+                                                                       ; which may be different to the task that\r
+                                                                       ; was interrupted.\r
+\r
+vUARTTxISRWrapper:\r
+\r
+       portSAVE_CONTEXT                                ; Save the context of the current task.\r
+\r
+       jarl    vUARTTxISRHandler, lp   ; Call the ISR routine.\r
+\r
+       portRESTORE_CONTEXT                             ; Restore the context of the current task -\r
+                                                                       ; which may be different to the task that\r
+                                                                       ; was interrupted.\r
+\r
+\r
+      COMMON INTVEC:CODE:ROOT(2)\r
+      ORG 2c0H\r
+`??vUARTRxISRWrapper??INTVEC 2c0`:\r
+        JR vUARTRxISRWrapper\r
+\r
+      COMMON INTVEC:CODE:ROOT(2)\r
+      ORG 2d0H\r
+`??vUARTTxISRWrapper??INTVEC 2d0`:\r
+        JR vUARTTxISRWrapper\r
+\r
+       END\r
+\r
index a0676158435b71ee893faad004fde49fe39cd58b..f97508dbf0b12ef95a7bf94f9f42ca43df0f3237 100644 (file)
           \r
           \r
           \r
-        <Column0>416</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>\r
+        <Column0>93</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>\r
       </Workspace>\r
       <Disassembly>\r
         \r
         \r
       <PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><MixedMode>1</MixedMode><CodeCovShow>0</CodeCovShow></Disassembly>\r
-    <Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register></Static>\r
+    <Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register><Watch><Format><struct_types/><watch_formats/></Format><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><Column0>156</Column0><Column1>100</Column1><Column2>100</Column2><Column3>100</Column3></Watch><Memory><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><FindDirection>1</FindDirection><FindAsHex>0</FindAsHex></Memory><Find-in-Files><ColumnWidth0>580</ColumnWidth0><ColumnWidth1>82</ColumnWidth1><ColumnWidth2>994</ColumnWidth2></Find-in-Files></Static>\r
     <Windows>\r
       \r
       \r
       \r
-    <Wnd2>\r
+    <Wnd0>\r
         <Tabs>\r
           <Tab>\r
             <Identity>TabID-757-1323</Identity>\r
@@ -41,9 +41,9 @@
             <Factory>Build</Factory>\r
             <Session/>\r
           </Tab>\r
-        </Tabs>\r
+        <Tab><Identity>TabID-20969-27878</Identity><TabName>Find in Files</TabName><Factory>Find-in-Files</Factory><Session/></Tab><Tab><Identity>TabID-27119-4411</Identity><TabName>Breakpoints</TabName><Factory>Breakpoints</Factory></Tab></Tabs>\r
         \r
-      <SelectedTab>0</SelectedTab></Wnd2><Wnd3>\r
+      <SelectedTab>0</SelectedTab></Wnd0><Wnd1>\r
         <Tabs>\r
           <Tab>\r
             <Identity>TabID-11505-1326</Identity>\r
             <Factory>Workspace</Factory>\r
             <Session>\r
               \r
-            <NodeDict><ExpandedNode>rtosdemo</ExpandedNode><ExpandedNode>rtosdemo/demo source</ExpandedNode><ExpandedNode>rtosdemo/kernel source</ExpandedNode></NodeDict></Session>\r
+            <NodeDict><ExpandedNode>rtosdemo</ExpandedNode><ExpandedNode>rtosdemo/demo source</ExpandedNode><ExpandedNode>rtosdemo/demo source/Standard Demo Tasks</ExpandedNode><ExpandedNode>rtosdemo/kernel source</ExpandedNode><ExpandedNode>rtosdemo/kernel source/port.c</ExpandedNode></NodeDict></Session>\r
           </Tab>\r
         </Tabs>\r
         \r
-      <SelectedTab>0</SelectedTab></Wnd3></Windows>\r
+      <SelectedTab>0</SelectedTab></Wnd1><Wnd2><Tabs><Tab><Identity>TabID-27476-15253</Identity><TabName>Register</TabName><Factory>Register</Factory><Session><REG1>0</REG1><REG2>0</REG2><Group>0</Group><States>2</States><State0>EIPSW</State0><State1>PSW</State1></Session></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd2></Windows>\r
     <Editor>\r
       \r
       \r
       \r
       \r
-    <Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\main.c</Filename><XPos>0</XPos><YPos>83</YPos><SelStart>4277</SelStart><SelEnd>4277</SelEnd></Tab><ActiveTab>0</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\RegTest.s85</Filename><XPos>0</XPos><YPos>72</YPos><SelStart>3127</SelStart><SelEnd>3127</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\LEDtoggle\LED.c</Filename><XPos>0</XPos><YPos>95</YPos><SelStart>10104</SelStart><SelEnd>10104</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\Devtools\IAR Systems\Embedded Workbench 5.0\v850\lib\dl85esnn.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\Devtools\IAR Systems\Embedded Workbench 5.0\v850\inc\io70f3385.h</Filename><XPos>0</XPos><YPos>21</YPos><SelStart>34477</SelStart><SelEnd>34480</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\flash.c</Filename><XPos>0</XPos><YPos>72</YPos><SelStart>3471</SelStart><SelEnd>3532</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>81</YPos><SelStart>4259</SelStart><SelEnd>4259</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\PollQ.c</Filename><XPos>0</XPos><YPos>84</YPos><SelStart>4050</SelStart><SelEnd>4050</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serial.c</Filename><XPos>0</XPos><YPos>63</YPos><SelStart>2903</SelStart><SelEnd>2903</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\ParTest\ParTest.c</Filename><XPos>0</XPos><YPos>58</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\port.c</Filename><XPos>0</XPos><YPos>155</YPos><SelStart>7326</SelStart><SelEnd>7339</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\comtest.c</Filename><XPos>0</XPos><YPos>246</YPos><SelStart>10777</SelStart><SelEnd>10805</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>\r
+    <Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serialISR.s85</Filename><XPos>0</XPos><YPos>6</YPos><SelStart>1116</SelStart><SelEnd>1116</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serial.c</Filename><XPos>0</XPos><YPos>108</YPos><SelStart>4801</SelStart><SelEnd>4801</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\comtest.c</Filename><XPos>0</XPos><YPos>165</YPos><SelStart>7455</SelStart><SelEnd>7455</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\RegTest.s85</Filename><XPos>0</XPos><YPos>125</YPos><SelStart>3960</SelStart><SelEnd>3960</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\portmacro.h</Filename><XPos>0</XPos><YPos>116</YPos><SelStart>5010</SelStart><SelEnd>5015</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\port.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\include\queue.h</Filename><XPos>0</XPos><YPos>719</YPos><SelStart>25052</SelStart><SelEnd>25072</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\queue.c</Filename><XPos>1</XPos><YPos>984</YPos><SelStart>33540</SelStart><SelEnd>33540</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\portasm.s85</Filename><XPos>0</XPos><YPos>237</YPos><SelStart>9109</SelStart><SelEnd>9109</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\include\task.h</Filename><XPos>0</XPos><YPos>102</YPos><SelStart>3906</SelStart><SelEnd>3924</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>69</YPos><SelStart>3431</SelStart><SelEnd>3431</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\BlockQ.c</Filename><XPos>0</XPos><YPos>171</YPos><SelStart>9651</SelStart><SelEnd>9651</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\tasks.c</Filename><XPos>0</XPos><YPos>1486</YPos><SelStart>46919</SelStart><SelEnd>46919</SelEnd></Tab><ActiveTab>12</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\main.c</Filename><XPos>0</XPos><YPos>100</YPos><SelStart>4336</SelStart><SelEnd>4336</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>\r
     <Positions>\r
       \r
       \r
       \r
       \r
       \r
-    <Top><Row0><Sizes><Toolbar-00aa9b50><key>iaridepm.enu1</key></Toolbar-00aa9b50><Toolbar-03f11130><key>debuggergui.enu1</key></Toolbar-03f11130></Sizes></Row0></Top><Left><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>490</Right><x>-2</x><y>-2</y><xscreen>240</xscreen><yscreen>200</yscreen><sizeHorzCX>142857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>292857</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd3></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd2></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>\r
+    <Top><Row0><Sizes><Toolbar-00aa9b30><key>iaridepm.enu1</key></Toolbar-00aa9b30><Toolbar-03abbe58><key>debuggergui.enu1</key></Toolbar-03abbe58></Sizes></Row0></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>183</Right><x>-2</x><y>-2</y><xscreen>240</xscreen><yscreen>200</yscreen><sizeHorzCX>142857</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>110119</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>525</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>119048</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>313690</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd2></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd0></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>\r
   </Desktop>\r
 </Project>\r
 \r
index 3ac16814fe58a5cad5bea3c843fb4cb387cbb6d5..385b3b7b700980167c50bc66179331219adf78f8 100644 (file)
@@ -236,7 +236,8 @@ Category=_ 0
 LoggingEnabled=_ 0\r
 LogFile=_ ""\r
 [Breakpoints]\r
-Count=0\r
+Bp0=_ "STD_CODE" "{C:\E\Dev\FreeRTOS\WorkingCopy3\Source\queue.c}.998.8@1" 1 0 0 0 "" 0 ""\r
+Count=1\r
 [TraceHelper]\r
 Enabled=1\r
 ShowSource=1\r
index e88bb238b9f8e0466d10ec6d035b131a83ada502..496deec93e0aedc0fa5f9650b37a0ec4f698869e 100644 (file)
       \r
       \r
       \r
-    <Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\main.c</Filename><XPos>0</XPos><YPos>83</YPos><SelStart>4277</SelStart><SelEnd>4277</SelEnd></Tab><ActiveTab>0</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\RegTest.s85</Filename><XPos>0</XPos><YPos>72</YPos><SelStart>3127</SelStart><SelEnd>3127</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\LEDtoggle\LED.c</Filename><XPos>0</XPos><YPos>95</YPos><SelStart>10104</SelStart><SelEnd>10104</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\Devtools\IAR Systems\Embedded Workbench 5.0\v850\lib\dl85esnn.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\Devtools\IAR Systems\Embedded Workbench 5.0\v850\inc\io70f3385.h</Filename><XPos>0</XPos><YPos>21</YPos><SelStart>34477</SelStart><SelEnd>34480</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\flash.c</Filename><XPos>0</XPos><YPos>72</YPos><SelStart>3471</SelStart><SelEnd>3532</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>81</YPos><SelStart>4259</SelStart><SelEnd>4259</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\PollQ.c</Filename><XPos>0</XPos><YPos>84</YPos><SelStart>4050</SelStart><SelEnd>4050</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serial.c</Filename><XPos>0</XPos><YPos>63</YPos><SelStart>2903</SelStart><SelEnd>2903</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\ParTest\ParTest.c</Filename><XPos>0</XPos><YPos>58</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\port.c</Filename><XPos>0</XPos><YPos>155</YPos><SelStart>7326</SelStart><SelEnd>7339</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\comtest.c</Filename><XPos>0</XPos><YPos>246</YPos><SelStart>10777</SelStart><SelEnd>10805</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>\r
+    <Pane><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serialISR.s85</Filename><XPos>0</XPos><YPos>6</YPos><SelStart>1116</SelStart><SelEnd>1116</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\serial\serial.c</Filename><XPos>0</XPos><YPos>108</YPos><SelStart>4801</SelStart><SelEnd>4801</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\comtest.c</Filename><XPos>0</XPos><YPos>165</YPos><SelStart>7455</SelStart><SelEnd>7455</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\RegTest.s85</Filename><XPos>0</XPos><YPos>125</YPos><SelStart>3960</SelStart><SelEnd>3960</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\portmacro.h</Filename><XPos>0</XPos><YPos>116</YPos><SelStart>5010</SelStart><SelEnd>5015</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\port.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\include\queue.h</Filename><XPos>0</XPos><YPos>719</YPos><SelStart>25052</SelStart><SelEnd>25072</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\queue.c</Filename><XPos>1</XPos><YPos>984</YPos><SelStart>33540</SelStart><SelEnd>33540</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\portable\IAR\V850ES_Fx3\portasm.s85</Filename><XPos>0</XPos><YPos>237</YPos><SelStart>9109</SelStart><SelEnd>9109</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\include\task.h</Filename><XPos>0</XPos><YPos>102</YPos><SelStart>3906</SelStart><SelEnd>3924</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\FreeRTOSConfig.h</Filename><XPos>0</XPos><YPos>69</YPos><SelStart>3431</SelStart><SelEnd>3431</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\Common\Minimal\BlockQ.c</Filename><XPos>0</XPos><YPos>171</YPos><SelStart>9651</SelStart><SelEnd>9651</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Source\tasks.c</Filename><XPos>0</XPos><YPos>1486</YPos><SelStart>46919</SelStart><SelEnd>46919</SelEnd></Tab><ActiveTab>12</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>C:\E\Dev\FreeRTOS\WorkingCopy3\Demo\NEC_V850ES_Fx3_IAR\main.c</Filename><XPos>0</XPos><YPos>100</YPos><SelStart>4336</SelStart><SelEnd>4336</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>\r
     <Positions>\r
       \r
       \r
       \r
       \r
       \r
-    <Top><Row0><Sizes><Toolbar-00aa9b50><key>iaridepm.enu1</key></Toolbar-00aa9b50></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>314</Right><x>-2</x><y>-2</y><xscreen>316</xscreen><yscreen>205</yscreen><sizeHorzCX>188095</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>188095</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd0></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>\r
+    <Top><Row0><Sizes><Toolbar-00aa9b30><key>iaridepm.enu1</key></Toolbar-00aa9b30></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>740</Bottom><Right>314</Right><x>-2</x><y>-2</y><xscreen>316</xscreen><yscreen>205</yscreen><sizeHorzCX>188095</sizeHorzCX><sizeHorzCY>208758</sizeHorzCY><sizeVertCX>188095</sizeVertCX><sizeVertCY>755601</sizeVertCY></Rect></Wnd0></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1682</Right><x>-2</x><y>-2</y><xscreen>1684</xscreen><yscreen>200</yscreen><sizeHorzCX>1002381</sizeHorzCX><sizeHorzCY>203666</sizeHorzCY><sizeVertCX>142857</sizeVertCX><sizeVertCY>203666</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>\r
   </Desktop>\r
 </Workspace>\r
 \r