Reinhard Keil 7 лет назад
Родитель
Сommit
3362e5e5ec
2 измененных файлов с 44 добавлено и 25 удалено
  1. 35 18
      CMSIS/DoxyGen/RTOS2/src/cmsis_os2.txt
  2. 9 7
      CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Event.txt

+ 35 - 18
CMSIS/DoxyGen/RTOS2/src/cmsis_os2.txt

@@ -125,6 +125,12 @@ The following sections provide further details:
 /**
 /**
 \page cre_rtx_proj Create an RTX5 Project
 \page cre_rtx_proj Create an RTX5 Project
 
 
+\if FuSaRTS
+FuSa RTX5 installation and project setup are explained in \ref fusa_rtx_installation.
+
+\endif
+
+\ifnot FuSaRTS
 The steps to create a microcontroller application using RTX5 are:
 The steps to create a microcontroller application using RTX5 are:
 - Create a new project and select a microcontroller device.
 - Create a new project and select a microcontroller device.
 - In the Manage Run-Time Environment window, select <b>CMSIS\::CORE</b> and <b>CMSIS\::RTOS2 (API)\::Keil RTX5</b>. You can
 - In the Manage Run-Time Environment window, select <b>CMSIS\::CORE</b> and <b>CMSIS\::RTOS2 (API)\::Keil RTX5</b>. You can
@@ -148,6 +154,8 @@ The steps to create a microcontroller application using RTX5 are:
 
 
 - \ref config_rtx5 "Configure" RTX5 to the application's needs using the \b %RTX_Config.h file.
 - \ref config_rtx5 "Configure" RTX5 to the application's needs using the \b %RTX_Config.h file.
 
 
+\endif
+
 \if ARMCA \section cre_rtx_cortexa Additional requirements for RTX on Cortex-A
 \if ARMCA \section cre_rtx_cortexa Additional requirements for RTX on Cortex-A
 
 
 Cortex-A based microcontrollers are less unified with respect to the interrupt and timer implementations used compared to 
 Cortex-A based microcontrollers are less unified with respect to the interrupt and timer implementations used compared to 
@@ -164,7 +172,8 @@ The default implementations provided along with CMSIS are
 
 
 For devices not implementing GIC, PTIM nor GTIM please refer to the according device family pack and select the
 For devices not implementing GIC, PTIM nor GTIM please refer to the according device family pack and select the
 proper implementations.
 proper implementations.
-\endif 
+
+\endif
 
 
 \section cre_UsingIRQs Using Interrupts on Cortex-M
 \section cre_UsingIRQs Using Interrupts on Cortex-M
 
 
@@ -175,9 +184,9 @@ Handler | Priority | Interrupt/Exception
 :-------|:---------|:----------------------------
 :-------|:---------|:----------------------------
 SysTick | lowest   | Kernel system timer interrupt to generate periodic timer ticks
 SysTick | lowest   | Kernel system timer interrupt to generate periodic timer ticks
 PendSV  | lowest   | PendSV (request for system-level service) when calling certain RTX functions from \b Handler mode
 PendSV  | lowest   | PendSV (request for system-level service) when calling certain RTX functions from \b Handler mode
-SCV     | lowest+1 | Supervisor Call used to enter the RTOS kernel from \b Thread mode
+SVC     | lowest+1 | Supervisor Call used to enter the RTOS kernel from \b Thread mode
 
 
-Other device interrupts can be used without limitation. For Arm Cortex-M3/M4/M7\if ARMv8M /M23/M33/M35P \endif  processors, interrupts are never disabled by RTX Kernel.
+Other device interrupts can be used without limitation. For Arm Cortex-M3/M4/M7 \if ARMv8M /M23/M33/M35P \endif  processors, interrupts are never disabled by RTX Kernel.
 
 
 <b>Usage of interrupt priority grouping</b>
 <b>Usage of interrupt priority grouping</b>
 - The interrupt priority grouping should be configured using the CMSIS-Core function NVIC_SetPriorityGrouping before calling the function 
 - The interrupt priority grouping should be configured using the CMSIS-Core function NVIC_SetPriorityGrouping before calling the function 
@@ -211,8 +220,7 @@ to provide event information which helps you to understand and analyze the opera
 - Enable the related settings under \ref evtrecConfig.
 - Enable the related settings under \ref evtrecConfig.
 - Build the application code and download it to the debug hardware.
 - Build the application code and download it to the debug hardware.
   
   
-Once the target application generates event information, it can be viewed in the µVision debugger using the \b Event
- \b Recorder.
+Once the target application generates event information, it can be viewed in the µVision debugger using the \b Event \b Recorder.
 */
 */
 
 
 
 
@@ -1137,7 +1145,7 @@ Core Registers             | The processor status is read using the following co
 System Control Block (SBC) | To control and setup the processor exceptions including PendSV and SVC
 System Control Block (SBC) | To control and setup the processor exceptions including PendSV and SVC
 Interrupt Control          | The CMSIS-Core functions __disable_irq and __enable_irq to control the interrupt system via the CPSR core register.
 Interrupt Control          | The CMSIS-Core functions __disable_irq and __enable_irq to control the interrupt system via the CPSR core register.
 
 
-The interface files to the processor hardware are: 
+The RTX implements interfaces to the processor hardware in following files: 
  - <b>%irq_cm0.s</b> defines exception handlers for Cortex-M0/M0+
  - <b>%irq_cm0.s</b> defines exception handlers for Cortex-M0/M0+
 \if ARMv8M
 \if ARMv8M
  - <b>%irq_armv8mbl_common.s</b> defines exception handlers for Cortex-M23
  - <b>%irq_armv8mbl_common.s</b> defines exception handlers for Cortex-M23
@@ -1154,28 +1162,29 @@ The interface files to the processor hardware are:
 \ifnot ARMv8M \subsection tpCortexM3_M4_M7_M33_M35P Cortex-M3/M4/M7 target processor
 \ifnot ARMv8M \subsection tpCortexM3_M4_M7_M33_M35P Cortex-M3/M4/M7 target processor
 \endif 
 \endif 
 
 
-Hardware Requirement       | Description
+RTX assumes a fully function-able processor and uses the following hardware features:
+
+Hardware Item       | Requirement Description
 :--------------------------|:------------------------------------------------------
 :--------------------------|:------------------------------------------------------
-SysTick timer              | The SysTick timer generates the kernel tick interrupts and the interface is implemented in %os_systick.c using the \ref CMSIS_RTOS_TickAPI
-Exception Handler          | RTX implements exception handlers for SVC, PendSV, and SysTick interrupt
-Core Registers             | The processor status is read using the following core registers: CONTROL, IPSR, PRIMASK, BASEPRI
-System Control Block (SBC) | To control and setup the processor exceptions including PendSV and SVC
-NVIC Interface             | The CMSIS-Core function NVIC_GetPriorityGrouping to setup interrupt priorities.
-LDREX, STREX instruction   | Atomic execution avoids the requirement to disable interrupts and is implemented via exclusive access instructions.
+SysTick timer              | The \b SysTick timer shall be available in the processor. 
+System Exceptions          | The RTX requires \b SVC, \b PendSV, and \b SysTick exceptions and implements corresponding exception handlers.
+Core Registers             | The RTX uses \b CONTROL, \b IPSR , \b PRIMASK and \b BASEPRI core registers for reading processor status. 
+System Control Block (SCB) | The RTX uses \b SCB registers to control and setup the processor system exceptions including PendSV and SVC.
+NVIC Interface             | CMSIS-Core function \b NVIC_GetPriorityGrouping is used by the RTX to setup interrupt priorities.
+LDREX, STREX instructions  | Exclusive access instructions \b LDREX and \b STREX are used to implement atomic execution without disabling interrupts.
 
 
 The interface files to the processor hardware are: 
 The interface files to the processor hardware are: 
  - <b>%irq_cm3.s</b> defines exception handlers for Cortex-M3 and Cortex-M4/M7 without floating point unit.
  - <b>%irq_cm3.s</b> defines exception handlers for Cortex-M3 and Cortex-M4/M7 without floating point unit.
  - <b>%irq_cm4f.s</b> defines exception handlers for Cortex-M4/M7 with floating point unit.
  - <b>%irq_cm4f.s</b> defines exception handlers for Cortex-M4/M7 with floating point unit.
 \if ARMv8M 
 \if ARMv8M 
  - <b>%irq_armv8mml_common.s</b> defines exception handlers for Cortex-M33/M35P
  - <b>%irq_armv8mml_common.s</b> defines exception handlers for Cortex-M33/M35P
-\endif 
+\endif
  - <b>%rtx_core_cm.h</b> defines processor specific helper functions and the interfaces to Core Registers and Core Peripherals.
  - <b>%rtx_core_cm.h</b> defines processor specific helper functions and the interfaces to Core Registers and Core Peripherals.
  - <b>%os_tick.h</b> is the \ref CMSIS_RTOS_TickAPI that defines the interface functions to the SysTick timer.
  - <b>%os_tick.h</b> is the \ref CMSIS_RTOS_TickAPI that defines the interface functions to the SysTick timer.
 
 
 \note
 \note
  - The CMSIS-Core variable \c SystemCoreClock is used by RTX to configure the SysTick timer.
  - The CMSIS-Core variable \c SystemCoreClock is used by RTX to configure the SysTick timer.
 
 
-
 \if ARMCA \subsection tpCortexA5_A7_A9 Cortex-A5/A7/A9 target processor
 \if ARMCA \subsection tpCortexA5_A7_A9 Cortex-A5/A7/A9 target processor
 
 
 
 
@@ -1367,6 +1376,7 @@ processor variants in every configuration  \if ARMv8M , including Arm Cortex-M23
       <td>CMSIS-RTOS RTX Library for ARMCC Compiler, Armv8-M Mainline, non-secure.</td>
       <td>CMSIS-RTOS RTX Library for ARMCC Compiler, Armv8-M Mainline, non-secure.</td>
     </tr>
     </tr>
 \endif	
 \endif	
+\ifnot FuSaRTS
     <tr>
     <tr>
       <td>Library/GCC/libRTX_CM0.a</td>
       <td>Library/GCC/libRTX_CM0.a</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Cortex-M0 and M1, little-endian.</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Cortex-M0 and M1, little-endian.</td>
@@ -1379,6 +1389,7 @@ processor variants in every configuration  \if ARMv8M , including Arm Cortex-M23
       <td>Library/GCC/libRTX_CM4F.a</td>
       <td>Library/GCC/libRTX_CM4F.a</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Cortex-M4 and M7 with FPU, little-endian.</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Cortex-M4 and M7 with FPU, little-endian.</td>
     </tr>
     </tr>
+\endif	
 \if ARMv8M	
 \if ARMv8M	
     <tr>
     <tr>
       <td>Library/GCC/libRTX_V8MB.a</td>
       <td>Library/GCC/libRTX_V8MB.a</td>
@@ -1404,11 +1415,14 @@ processor variants in every configuration  \if ARMv8M , including Arm Cortex-M23
       <td>Library/GCC/libRTX_V8MMN.a</td>
       <td>Library/GCC/libRTX_V8MMN.a</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Armv8-M Mainline, non-secure.</td>
       <td>CMSIS-RTOS libRTX Library for GCC Compiler, Armv8-M Mainline, non-secure.</td>
     </tr>
     </tr>
-\endif	
+\endif
 </table>
 </table>
+*/
 
 
- 
-\page pToolchains Supported Toolchains
+
+
+/**
+\ifnot FuSaRTS \page pToolchains Supported Toolchains
 
 
 Keil RTX5 is developed and tested using the common toolchains and development environments.
 Keil RTX5 is developed and tested using the common toolchains and development environments.
 
 
@@ -1423,6 +1437,7 @@ The current release is tested with the following versions:
  <li>RTOS-aware debugging with uVision 5.24</li>
  <li>RTOS-aware debugging with uVision 5.24</li>
 </ul>
 </ul>
 
 
+
 \section technicalData_Toolchain_IAR IAR Embedded Workbench
 \section technicalData_Toolchain_IAR IAR Embedded Workbench
 
 
 RTX5 has been ported to the IAR Embedded Workbench. The following releases are known to work:
 RTX5 has been ported to the IAR Embedded Workbench. The following releases are known to work:
@@ -1440,8 +1455,10 @@ Active development is currently tested with:
  <li>GNU Tools for Arm Embedded 6.3.1 20170620</li>
  <li>GNU Tools for Arm Embedded 6.3.1 20170620</li>
 </ul>
 </ul>
 
 
+\endif
 */
 */
 
 
+
 /* ========================================================================================================================== */
 /* ========================================================================================================================== */
 /** 
 /** 
 \page CodingRules Coding Rules
 \page CodingRules Coding Rules

+ 9 - 7
CMSIS/DoxyGen/RTOS2/src/cmsis_os2_Event.txt

@@ -325,21 +325,23 @@ void EvtFlagsGetName_example (void)  {
 /**
 /**
 \var osEventFlagsAttr_t::attr_bits
 \var osEventFlagsAttr_t::attr_bits
 \details
 \details
-Reserved for future use (set to '0').\n
-Default: \token{0}.
+Reserved for future use (must be set to '0' for future compatibility).
 
 
 \var osEventFlagsAttr_t::cb_mem
 \var osEventFlagsAttr_t::cb_mem
 \details
 \details
-Pointer to a memory location for the event control block object. This can optionally be used for custom memory management systems.\n
-Default: \token{NULL} (uses kernel memory management).
+Pointer to a memory for the event flag control block object. Refer to \ref StaticObjectMemory for more information.
 
 
+Default: \token{NULL} to use \ref CMSIS_RTOS_MemoryMgmt_Automatic for the event flag control block.
 
 
 \var osEventFlagsAttr_t::cb_size
 \var osEventFlagsAttr_t::cb_size
 \details
 \details
-The size of the memory block passed with \ref cb_mem. Must be the size of an event control block object or larger.
+The size (in bytes) of memory block passed with \ref cb_mem. For RTX, the minimum value is defined with \ref osRtxEventFlagsCbSize (higher values are permitted).
+
+Default: \token{0} as the default is no memory provided with \ref cb_mem.
 
 
 \var osEventFlagsAttr_t::name
 \var osEventFlagsAttr_t::name
 \details
 \details
-Pointer to a string with a human readable name of the event object.\n
-Default: \token{NULL}.
+Pointer to a constant string with a human readable name (displayed during debugging) of the event flag object.
+
+Default: \token{NULL} no name specified.
 */
 */