]> git.sur5r.net Git - freertos/commitdiff
Continue development of STM32 Rowley demo.
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 7 Jul 2010 11:48:04 +0000 (11:48 +0000)
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 7 Jul 2010 11:48:04 +0000 (11:48 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1036 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

Demo/CORTEX_STM32F103_GCC_Rowley/Drivers/STM32_USART.h
Demo/CORTEX_STM32F103_GCC_Rowley/RTOSDemo.hzs
Demo/CORTEX_STM32F103_GCC_Rowley/main.c

index 898835b3c2852559fb3720e04c0085b98c34d20f..d9eed30493707055a722011d53999190373cc714 100644 (file)
 #ifndef STM_32_SERIAL_COMMS_H\r
 #define STM_32_SERIAL_COMMS_H\r
 \r
+/*\r
+ * Initialise a COM port.  As supplied 2 COM ports are supported, so ulPort can\r
+ * be either 0 or 1.  Note that COM 0 is in effect USART1 in ST library \r
+ * terminology.  The baud rate can be any standard baud rate and has been tested\r
+ * up to 115200 baud.\r
+ */\r
 long lCOMPortInit( unsigned long ulPort, unsigned long ulWantedBaud );\r
+\r
+/*\r
+ * Output a single char to a COM port.  As supplied 2 COM ports are supported,\r
+ * so ulPort can be 0 or 1.  Note that COM 0 is in effect USART1 in ST library\r
+ * terminology.  cOutChar is the character to be transmit, and xBlockTime is\r
+ * the time the task should be held in the Blocked state (in ticks) for space \r
+ * to become available in the queue of characters waiting transmission.  pdPASS \r
+ * will be returned if the character is successfully queued (possible after \r
+ * waiting in the Blocked state for up to xBlockTime ticks), otherwise pdFAIL \r
+ * will be returned.\r
+ */\r
 signed long xSerialPutChar( long lPort, signed char cOutChar, portTickType xBlockTime );\r
+\r
+/*\r
+ * Retrieve a character from the queue of received characters.  As supplied 2 \r
+ * COM ports are supported, so ulPort can be 0 or 1.  Note that COM 0 is in \r
+ * effect USART1 in ST library terminology.  pcRxedChar is the address into\r
+ * which the received character will be copied, and xBlockTime is the time the \r
+ * task should be held in the Blocked state (in ticks) for a character to be\r
+ * available if one is not available immediately.  pdPASS will be returned if a\r
+ * character is successfully returned (possible after waiting in the Blocked \r
+ * state for up to xBlockTime ticks), otherwise pdFAIL will be returned.\r
+ */\r
 signed long xSerialGetChar( long lPort, signed char *pcRxedChar, portTickType xBlockTime );\r
+\r
+/*\r
+ * Send a string of characters to a COM port.  As supplied 2 COM ports are \r
+ * supported, so ulPort can be 0 or 1.  Note that COM 0 is in effect USART1 in \r
+ * ST library terminology.  pcString contains the address of the first \r
+ * character to be transmit, and ulStringLength the total number of characters\r
+ * from and including *pcString.  pdPASS will be returned if the entire string\r
+ * is queued for transmission successfully, otherwise pdFAIL will be returned.\r
+ * Note that serPUT_STRING_CHAR_DELAY within STM32_USART.c can be adjusted in\r
+ * accordance with the applications requirements.  Comments are included where\r
+ * serPUT_STRING_CHAR_DELAY is defined.\r
+ */\r
 long lSerialPutString( long lPort, const char * const pcString, unsigned long ulStringLength );\r
 \r
 #endif\r
 \r
+\r
index 60c0db1fb3c2a2fe0e44f5968147af546ba8ab15..a2b938608207a128229ea704e6fc85901c0b26d8 100644 (file)
@@ -18,7 +18,6 @@
  <Project>
   <ProjectSessionItem path="RTOSDemo" name="unnamed" />
   <ProjectSessionItem path="RTOSDemo;RTOSDemo" name="unnamed" />
-  <ProjectSessionItem path="RTOSDemo;RTOSDemo;System Files" name="unnamed" />
  </Project>
  <Register1>
   <RegisterWindow openNodes="" binaryNodes="" unsignedNodes="" visibleGroups="" decimalNodes="" octalNodes="" asciiNodes="" />
   <Watches active="0" update="Never" />
  </Watch4>
  <Files>
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="56" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\Drivers\STM32_USART.c" y="93" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\Drivers\STM32_USART.c" left="0" selected="0" name="unnamed" top="74" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="5" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\ST Library\src\stm32f10x_usart.c" y="353" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\ST Library\src\stm32f10x_usart.c" left="0" selected="0" name="unnamed" top="336" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="33" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\ST Library\inc\stm32f10x_usart.h" y="238" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\ST Library\inc\stm32f10x_usart.h" left="0" selected="0" name="unnamed" top="218" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\main.c" y="138" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\main.c" left="0" selected="0" name="unnamed" top="119" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="41" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\Drivers\STM32_USART.h" y="59" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\Drivers\STM32_USART.h" left="0" selected="0" name="unnamed" top="36" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\STM32F10x_Startup.s" y="110" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\STM32F10x_Startup.s" left="0" selected="0" name="unnamed" top="91" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" y="221" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" left="0" selected="0" name="unnamed" top="205" />
-  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" y="820" path="C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" left="0" selected="1" name="unnamed" top="801" />
+  <SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="48" debugPath="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\main.c" y="84" path="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley\main.c" left="0" selected="1" name="unnamed" top="54" />
  </Files>
  <ARMCrossStudioWindow activeProject="RTOSDemo" autoConnectTarget="USB CrossConnect for ARM" debugSearchFileMap="" fileDialogInitialDirectory="C:\E\Dev\FreeRTOS\WorkingCopy\Demo\CORTEX_STM32F103_GCC_Rowley" fileDialogDefaultFilter="*.c" autoConnectCapabilities="388991" debugSearchPath="" buildConfiguration="THUMB Flash Debug" />
 </session>
index fda7808112887bb07f001b2b9ce9b0ae6ba82fca..33c89349742dc493026348a2c1b4f677d1190c37 100644 (file)
  *\r
  * "Echo" task - This is a very basic task that simply echoes any characters \r
  * received on COM0 (USART1).  This can be tested by transmitting a text file\r
- * from a dumb terminal to the STM32 USART.\r
+ * from a dumb terminal to the STM32 USART then observing or capturing the text\r
+ * that is echoed back.  Missing characters will be all the more obvious if the \r
+ * file contains a simple repeating string of fixed width.\r
+ *\r
+ * Currently this demo does not include interrupt nesting examples.  High \r
+ * frequency timer and simpler nesting examples can be found in most Cortex M3\r
+ * demo applications.\r
+ *\r
+ * The functions used to initialise, set and clear LED outputs are normally \r
+ * defined in partest.c.  This demo includes two partest files, one that is \r
+ * configured for use with the Keil MCBSTM32 evaluation board (called \r
+ * ParTest_MCBSTM32.c) and one that is configured for use with the official\r
+ * ST Eval board (called ParTest_ST_Eval.c).  One one of these files should be\r
+ * included in the build at any one time, as appropriate for the hardware \r
+ * actually being used.\r
  */\r
 \r
 /* Standard includes. */\r