diff options
author | Ali Labbene <ali.labbene@st.com> | 2019-12-11 08:59:21 +0100 |
---|---|---|
committer | Ali Labbene <ali.labbene@st.com> | 2019-12-16 16:35:24 +0100 |
commit | 9f95ff5b6ba01db09552b84a0ab79607060a2666 (patch) | |
tree | 8a6e0dda832555c692307869aed49d07ee7facfe /docs/Pack/html/configWizard.html | |
parent | 76177aa280494bb36d7a0bcbda1078d4db717020 (diff) | |
download | st-cmsis-core-lowfat-9f95ff5b6ba01db09552b84a0ab79607060a2666.tar.gz st-cmsis-core-lowfat-9f95ff5b6ba01db09552b84a0ab79607060a2666.tar.bz2 st-cmsis-core-lowfat-9f95ff5b6ba01db09552b84a0ab79607060a2666.zip |
Official ARM version: v5.4.0
Add CMSIS V5.4.0, please refer to index.html available under \docs folder.
Note: content of \CMSIS\Core\Include has been copied under \Include to keep the same structure
used in existing projects, and thus avoid projects mass update
Note: the following components have been removed from ARM original delivery (as not used in ST packages)
- CMSIS_EW2018.pdf
- .gitattributes
- .gitignore
- \Device
- \CMSIS
- \CoreValidation
- \DAP
- \Documentation
- \DoxyGen
- \Driver
- \Pack
- \RTOS\CMSIS_RTOS_Tutorial.pdf
- \RTOS\RTX
- \RTOS\Template
- \RTOS2\RTX
- \Utilities
- All ARM/GCC projects files are deleted from \DSP, \RTOS and \RTOS2
Change-Id: Ia026c3f0f0d016627a4fb5a9032852c33d24b4d3
Diffstat (limited to 'docs/Pack/html/configWizard.html')
-rw-r--r-- | docs/Pack/html/configWizard.html | 471 |
1 files changed, 471 insertions, 0 deletions
diff --git a/docs/Pack/html/configWizard.html b/docs/Pack/html/configWizard.html new file mode 100644 index 0000000..7352e6c --- /dev/null +++ b/docs/Pack/html/configWizard.html @@ -0,0 +1,471 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<title>Configuration Wizard Annotations</title> +<title>CMSIS-Pack: Configuration Wizard Annotations</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<link href="cmsis.css" rel="stylesheet" type="text/css" /> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<script type="text/javascript" src="printComponentTabs.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<script type="text/javascript"> + $(document).ready(initResizable); + $(window).load(resizeHeight); +</script> +<link href="search/search.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="search/search.js"></script> +<script type="text/javascript"> + $(document).ready(function() { searchBox.OnSelectItem(0); }); +</script> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 46px;"> + <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td> + <td style="padding-left: 0.5em;"> + <div id="projectname">CMSIS-Pack +  <span id="projectnumber">Version 1.5.0</span> + </div> + <div id="projectbrief">Delivery Mechanism for Software Packs</div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<div id="CMSISnav" class="tabs1"> + <ul class="tablist"> + <script type="text/javascript"> + <!-- + writeComponentTabs.call(this); + //--> + </script> + </ul> +</div> +<!-- Generated by Doxygen 1.8.6 --> +<script type="text/javascript"> +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +</script> + <div id="navrow1" class="tabs"> + <ul class="tablist"> + <li><a href="index.html"><span>Main Page</span></a></li> + <li class="current"><a href="pages.html"><span>Usage and Description</span></a></li> + <li> + <div id="MSearchBox" class="MSearchBoxInactive"> + <span class="left"> + <img id="MSearchSelect" src="search/mag_sel.png" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + alt=""/> + <input type="text" id="MSearchField" value="Search" accesskey="S" + onfocus="searchBox.OnSearchFieldFocus(true)" + onblur="searchBox.OnSearchFieldFocus(false)" + onkeyup="searchBox.OnSearchFieldChange(event)"/> + </span><span class="right"> + <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> + </span> + </div> + </li> + </ul> + </div> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +$(document).ready(function(){initNavTree('configWizard.html','');}); +</script> +<div id="doc-content"> +<!-- window showing the filter options --> +<div id="MSearchSelectWindow" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + onkeydown="return searchBox.OnSearchSelectKey(event)"> +<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Pages</a></div> + +<!-- iframe showing the search results (closed by default) --> +<div id="MSearchResultsWindow"> +<iframe src="javascript:void(0)" frameborder="0" + name="MSearchResults" id="MSearchResults"> +</iframe> +</div> + +<div class="header"> + <div class="headertitle"> +<div class="title">Configuration Wizard Annotations </div> </div> +</div><!--header--> +<div class="contents"> +<div class="textblock"><h1><a class="anchor" id="configWizard_annotations"></a> +Annotation Rules</h1> +<p><b>Configuration Wizard Annotations</b> consist of annotation items and annotation modifiers. They create GUI-like elements in IDEs for configuration files (see <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>). Using a GUI-like approach makes it easier for the user to check and adapt configuration files to the application needs. The following rules apply:</p> +<ul> +<li>The Configuration Wizard section must begin within the first 100 lines of code and must start with the following comment line: <div class="fragment"><div class="line"><span class="comment">// <<< Use Configuration Wizard in Context Menu >>></span></div> +</div><!-- fragment --></li> +<li>The Configuration Wizard section can end with the following optional comment: <div class="fragment"><div class="line"><span class="comment">// <<< end of configuration section >>></span></div> +</div><!-- fragment --></li> +<li>Annotations are written as comments in the code. Each annotation line must start with a double forward slash (//).</li> +<li>By default, the next code symbol that follows the annotation is modified.</li> +<li>Items marked with * in the table below can be followed by a skip-value. A skip-value omits a number of code symbols (see <em>skip example</em> in table). This overwrites the previous rule.</li> +<li>A descriptive text can be added to items. This text is displayed on screen (see table).</li> +<li>Whitespace characters are ignored in annotation items or annotation modifiers (text excluded).</li> +<li>You must not use < or > within configuration wizard lines other than for enclosing annotation items.</li> +</ul> +<p>The following table lists the Configuration Wizard Annotations:</p> +<table class="cmtable" summary="Annotations Tab"> +<tr> +<th>Item </th><th>Text </th><th>Description </th></tr> +<tr> +<td><h> </td><td>yes </td><td>Heading. Creates a header section. All items and options enclosed by <h> and </h> belong to one group and can be expanded. This entry makes no changes to code symbols. It is just used to group other items and modifiers. <br/> + Excerpt from the <a class="el" href="configWizard.html#configWizard_codeExample">Code Example</a> <div class="fragment"><div class="line"><span class="comment">// <h>Thread Configuration -- header without checkbox to group other items</span></div> +<div class="line"><span class="comment">// ...</span></div> +<div class="line"><span class="comment">// </h></span></div> +</div><!-- fragment --> Is the header entry as shown in <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>. </td></tr> +<tr> +<td><e><sup>*</sup> </td><td>yes </td><td>Heading with enable. Creates a header section with a checkbox to enabled or disabled all items and options enclosed by <e> and </e>. Excerpt from the <a class="el" href="configWizard.html#configWizard_codeExample">Code Example</a>. <div class="fragment"><div class="line"><span class="comment">// <e>Round-Robin Thread switching -- header with checkbox</span></div> +<div class="line"><span class="comment">// ===============================</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">// <i> Enables Round-Robin Thread switching. -- tooltip information for the header</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_ROBIN</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define OS_ROBIN 1 -- this value is set through the checkbox</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span><span class="comment">// <o>Round-Robin Timeout [ticks] <1-1000></span></div> +<div class="line"><span class="comment">// <i> Defines how long a thread will execute before a thread switch.</span></div> +<div class="line"><span class="comment">// <i> Default: 5</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_ROBINTOUT</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define OS_ROBINTOUT 5</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor">// </e></span></div> +</div><!-- fragment --> The entry <code><e>Round-Robin Thread switching ... </e></code> sets OS_ROBIN to <span class="XML-Token">1</span> (checkbox enabled) or <span class="XML-Token">0</span> (checkbox disabled) and encloses the <em>OS_ROBINTOUT</em> (Round-Robin Timeout) setting. See screen outcome in <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>. </td></tr> +<tr> +<td><e.<em>i</em>><sup>*</sup> </td><td>yes </td><td>Heading with Enable: modifies a specific bit (<em>i</em>) (example: <e.4> - changes bit 4 of a value). <div class="fragment"><div class="line"><span class="comment">// <e.4>Serial Number</span></div> +<div class="line"><span class="comment">// <i>Enable Serial Number String.</span></div> +<div class="line"><span class="comment">// <i>If disabled, Serial Number String will not be assigned to USB Device.</span></div> +<div class="line"><span class="preprocessor">#define USBD0_STR_DESC_SER_EN 1</span></div> +</div><!-- fragment --> The example creates the heading <span class="XML-Token">Serial Number</span> and a checkbox to set the value. If enabled, then bit 4 of <span class="XML-Token">USBD0_STR_DESC_SER_EN</span> is set. </td></tr> +<tr> +<td></h>, </e>, or </c> </td><td>yes </td><td>Heading, Enable, or Comment end. </td></tr> +<tr> +<td><n> </td><td>yes </td><td>Notification text displayed <div class="fragment"><div class="line"><span class="comment">// <n> This is shown as plain text</span></div> +</div><!-- fragment --> </td></tr> +<tr> +<td><i> </td><td>yes </td><td>Tooltip help for previous item. <div class="fragment"><div class="line"><span class="comment">// <i>This is shown as a tooltip when hovering over a text.</span></div> +</div><!-- fragment --> Many examples in this table have tooltip examples. </td></tr> +<tr> +<td><c><sup>*</sup> </td><td>yes </td><td>Code enable: creates a checkbox to uncomment or comment code. All lines, including those with white spaces, get commented with double slashes (//) at the first found character when you disable the checkbox. <div class="fragment"><div class="line"><span class="comment">// <c1> Comment sequence block until block end when disabled</span></div> +<div class="line"><span class="comment">//<i> This may carry the block's description</span></div> +<div class="line"></div> +<div class="line">foo</div> +<div class="line"></div> +<div class="line">+bar</div> +<div class="line"></div> +<div class="line">-xFoo</div> +<div class="line"><span class="comment">// </c></span></div> +</div><!-- fragment --> In this example, the item is enabled, so that the sequence block is not commented. </td></tr> +<tr> +<td><!c><sup>*</sup> </td><td>yes </td><td>Code disable: creates a checkbox to comment or uncomment code. All lines, including those with white spaces, get commented with double slashes (//) at the first found character when you enable the checkbox. <div class="fragment"><div class="line"><span class="comment">// <!c1> Comment sequence block until block end when enabled</span></div> +<div class="line"><span class="comment">//<i> This may carry the block's description</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">//foo</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">//+bar</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">//-xFoo</span></div> +<div class="line"><span class="comment">// </c></span></div> +</div><!-- fragment --> In this example, the item is enabled, so that the sequence block is commented. </td></tr> +<tr> +<td><q><sup>*</sup> </td><td>yes </td><td>Option for bit values which can be set via a checkbox. <div class="fragment"><div class="line"><span class="comment">// <h> Chip-select control</span></div> +<div class="line"><span class="comment">// <q> ASYNCWAIT: Wait signal during asynchronous transfer</span></div> +<div class="line"><span class="comment">// <i> Enables the FSMC to use the wait signal even during an asynchronous protocol.</span></div> +<div class="line"><span class="comment">// </h></span></div> +<div class="line"><span class="preprocessor">#define RTE_FSMC_BCR1_ASYNCWAIT 0 -- this is changed via a checkbox</span></div> +</div><!-- fragment --> </td></tr> +<tr> +<td><o><sup>*</sup> </td><td>yes </td><td>Option with selection or number entry. <div class="fragment"><div class="line"><span class="comment">// <o>Round-Robin Timeout [ticks] <1-1000> -- text displayed on screen. Range of [ticks] is [1..1000] </span></div> +<div class="line"><span class="comment">// <i> Defines how long a thread will execute before a thread switch. -- tooltip info</span></div> +<div class="line"><span class="comment">// <i> Default: 5 -- tooltip info. Both displayed in one tooltip.</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_ROBINTOUT</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define OS_ROBINTOUT 5</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor">// </e></span></div> +</div><!-- fragment --> The example creates an option with the text <span class="XML-Token">Round-Robin Timeout [ticks]</span> and a field to enter values that can range between {1..1000]. </td></tr> +<tr> +<td><o <em>key-identifier</em>><sup>* (new!)</sup> </td><td>yes </td><td><p class="starttd">Option with identifier selection replacing the identifier after the specified key-identifier: </p> +<div class="fragment"><div class="line"><span class="comment">// <o TIMESTAMP_SRC>Time Stamp Source</span></div> +<div class="line"><span class="comment">// <dwt=> DWT Cycle Counter</span></div> +<div class="line"><span class="comment">// <systick=> SysTick</span></div> +<div class="line"><span class="comment">// <user=> User Timer </span></div> +<div class="line"><span class="comment">// <i>Selects source for 32-bit time stamp</span></div> +<div class="line"><span class="preprocessor">#define TIMESTAMP_SRC dwt</span></div> +</div><!-- fragment --><p> The example creates an option with the text <span class="XML-Token">Time Stamp Source</span> and a drop down-list showing the text items <span class="XML-Token">DWT Cycle Counter</span>, <span class="XML-Token">SysTick</span> and <span class="XML-Token">User Timer</span>. The corresponding identifier within the tag <...=> will be used for replacement.</p> +<p class="endtd">Use case for an assignment of an enumeration to a variable: </p> +<div class="fragment"><div class="line"><span class="comment">// <o redPortMode> Red port mode </span></div> +<div class="line"><span class="comment">// <OutPushPull_GPIO=> PushPull</span></div> +<div class="line"><span class="comment">// <OutOpenDrain_GPIO=> OpenDrain</span></div> +<div class="line"><span class="comment">// <i>Selects GPIO output</span></div> +<div class="line">ledConf.redPortMode = OutOpenDrain_GPIO;</div> +</div><!-- fragment --><p> The example creates an option with the text <span class="XML-Token">Red port mode</span> and a drop down-list showing the text items <span class="XML-Token">PushPull</span> and <span class="XML-Token">OpenDrain</span>. The corresponding identifier <span class="XML-Token">OutPushPull_GPIO</span> or <span class="XML-Token">OutOpenDrain_GPIO</span> will be used to replace the identifier after the key-identifier <span class="XML-Token">redPortMode</span>. </p> +</td></tr> +<tr> +<td><o.<em>i</em>><sup>*</sup> </td><td>yes </td><td>Modify a single bit (example: <e.4> - modifies bit 4). <div class="fragment"><div class="line"><span class="comment">// <o.4> <o.0>High-speed</span></div> +<div class="line"><span class="comment">// <i>Enable High-speed functionality (if device supports it).</span></div> +<div class="line"><span class="preprocessor">#define USBD0_HS 0</span></div> +</div><!-- fragment --> The example creates a heading with the text <span class="XML-Token">High-speed</span> and a checkbox. If enabled, then bit 4 of <span class="XML-Token">USBD0_HS</span> is set. </td></tr> +<tr> +<td><o.<em>x</em>..<em>y</em>><sup>*</sup> </td><td>yes </td><td>Modify a range of bits. (example: <o.4..5> - bit 4 to 5). <div class="fragment"><div class="line"><span class="comment">// <h>String Settings</span></div> +<div class="line"><span class="comment">// <i>These settings are used to create the String Descriptor.</span></div> +<div class="line"><span class="comment">// <o.0..15>Language ID <0x0000-0xFCFF></span></div> +<div class="line"><span class="comment">// <i>English (United States) = 0x0409.</span></div> +<div class="line"><span class="comment">// </h></span></div> +<div class="line"><span class="preprocessor">#define USBD0_STR_DESC_LANGID 0x0409</span></div> +</div><!-- fragment --> This example creates an expandable header with the text <span class="XML-Token">String Settings</span> and an option <span class="XML-Token">Language ID</span>. The range of values is set to <span class="XML-Token"><0x0000-0xFCFF></span>. Users can enter a value from within that range. The option changes the bits <span class="XML-Token">0..15</span>. </td></tr> +<tr> +<td><s><sup>*</sup> </td><td>yes </td><td>Option with ASCII string entry. <div class="fragment"><div class="line"><span class="comment">// <s>Manufacturer String</span></div> +<div class="line"><span class="comment">// <i>String Descriptor describing Manufacturer.</span></div> +<div class="line"><span class="preprocessor">#define USBD0_STR_DESC_MAN L"Keil Software"</span></div> +</div><!-- fragment --> Displays an option with the text <span class="XML-Token">Manufacturer String</span> and creates a field in which the user can enter a text. The size of the string is not limited. </td></tr> +<tr> +<td><s.<em>i</em>><sup>*</sup> </td><td>yes </td><td>Option with ASCII string entry and a size limit of <em>i</em> characters. <div class="fragment"><div class="line"><span class="comment">// <s.126>Manufacturer String</span></div> +<div class="line"><span class="comment">// <i>String Descriptor describing Manufacturer.</span></div> +<div class="line"><span class="preprocessor">#define USBD0_STR_DESC_MAN L"Keil Software"</span></div> +</div><!-- fragment --> The example sets a size limit of 126 character. Default string is "Keil Software". </td></tr> +<tr> +<td><em>skip example</em> <br/> + <q<em>i></em>; <br/> + <o<em>i></em>; <o<em>i</em>.<em>x></em>; <br/> + <s<em>i></em>; <s<em>i</em>.<em>x></em> </td><td>yes </td><td>Skip <em>i</em> items. Can be applied to all annotation items marked with a * in this table. <div class="fragment"><div class="line"><span class="comment">// <o2>Skip 2 and modify the third item after this entry <1-9></span></div> +<div class="line"><span class="preprocessor">#define VALUE1 1000</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define VALUE2 2000</span></div> +<div class="line"><span class="preprocessor">#define MODIFY_THIS 3000</span></div> +</div><!-- fragment --> The example skips 2 items and modifies the third. </td></tr> +<tr> +<th>Modifier </th><th>  </th><th>Description </th></tr> +<tr> +<td><0-31> </td><td>no </td><td>Value range for option fields. </td></tr> +<tr> +<td><0-100:10> </td><td>no </td><td>Value range for option fields with step 10. </td></tr> +<tr> +<td><0x40-0x1000:0x10> </td><td>no </td><td>Value range in hex format and step 10. </td></tr> +<tr> +<td><<em>value</em>=> </td><td>yes </td><td>Creates a drop down-list and displays the <em><b>text</b></em>. <em><b>value</b></em> is written to the next item. Excerpt from the <a class="el" href="configWizard.html#configWizard_codeExample">Code Example</a>. <div class="fragment"><div class="line"><span class="comment">// <o>Timer Thread Priority -- creates a drop-down with the list below.</span></div> +<div class="line"><span class="comment">// <1=> Low</span></div> +<div class="line"><span class="comment">// <2=> Below Normal <3=> Normal <4=> Above Normal</span></div> +<div class="line"><span class="comment">// <5=> High</span></div> +<div class="line"><span class="comment">// <6=> Realtime (highest)</span></div> +<div class="line"><span class="comment">// <i> Defines priority for Timer Thread -- tooltip info</span></div> +<div class="line"><span class="comment">// <i> Default: High -- tooltip info</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TIMERPRIO</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define OS_TIMERPRIO 5</span></div> +<div class="line"><span class="preprocessor">#endif</span></div> +</div><!-- fragment --> In this example, the screen would show the option <span class="XML-Token">Timer Thread Priority</span>. The field Value would display the text <span class="XML-Token">High</span>. OS_TIMERPRIO is set to <span class="XML-Token">5</span>. When clicking on the field, a drop-down would show all options. See <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>. </td></tr> +<tr> +<td><<em>identifier</em>=> </td><td>yes </td><td>Creates a drop down-list and displays the <em><b>text</b></em> following the definition of the identifiers <span class="XML-Token">dwt</span>, <span class="XML-Token">systick</span> and <span class="XML-Token">user</span>. Note that this must only be used in the context of <o key-identifier>! The <em><b>identifier</b></em> corresponding to the selected text replaces the identifier following the key-identifier specified by the <o ...> tag. <div class="fragment"><div class="line"><span class="comment">// <o TIMESTAMP_SRC>Time Stamp Source</span></div> +<div class="line"><span class="comment">// <dwt=> DWT Cycle Counter</span></div> +<div class="line"><span class="comment">// <systick=> SysTick</span></div> +<div class="line"><span class="comment">// <user=> User Timer </span></div> +<div class="line"><span class="comment">// <i>Selects source for 32-bit time stamp</span></div> +<div class="line"><span class="preprocessor">#define TIMESTAMP_SRC dwt</span></div> +</div><!-- fragment --> In this example, the screen would show the option <span class="XML-Token">Time Stamp Source</span>. The field value would display the text <span class="XML-Token">DWT Cycle Counter</span>. TIMESTAMP_SRC is set to <span class="XML-Token">dwt</span>. When clicking on the field, a drop-down would show all options. See <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>. </td></tr> +<tr> +<td><#+1>   <#-1><br/> + <#*8>   <#/3> </td><td>no </td><td>Modifies the entered or displayed value according to the operator (add, sub, mul, div). The changed value is set for the code symbol. <br/> + Excerpt from <a class="el" href="configWizard.html#configWizard_codeExample">Code Example</a>. <div class="fragment"><div class="line"><span class="comment">// <o>Default Thread stack size [bytes] <64-4096:8><#/4></span></div> +<div class="line"><span class="comment">// <i> Defines default stack size for threads with osThreadDef stacksz = 0</span></div> +<div class="line"><span class="comment">// <i> Default: 200</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_STKSIZE</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define OS_STKSIZE 50</span></div> +<div class="line"><span class="preprocessor">#endif</span></div> +</div><!-- fragment --> The option <em>Default Thread stack size [bytes]</em> accepts values in the range <span class="XML-Token">[64..4096]</span>. The value (here <span class="XML-Token">200</span>) set in the field is divided by <span class="XML-Token">4</span> (<#/4>) . The result of the division (200/4) is put into the code symbol <em>OS_STKSIZE</em>, which was set to <span class="XML-Token">50</span>. The screen will display the number <span class="XML-Token">200</span>. See <a class="el" href="configWizard.html#configWizard_display">Tool-specific display</a>. </td></tr> +</table> +<h1><a class="anchor" id="configWizard_codeExample"></a> +Code Example</h1> +<p>You can copy the code into a C-file and check the outcome in the uVision Editor.</p> +<div class="fragment"><div class="line"><span class="comment">//-------- <<< Use Configuration Wizard in Context Menu >>> -----------------</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">// <h>Thread Configuration</span></div> +<div class="line"><span class="comment">// =======================</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">// <o>Number of concurrent running threads <0-250></span></div> +<div class="line"><span class="comment">// <i> Defines max. number of threads that will run at the same time.</span></div> +<div class="line"><span class="comment">// <i> Default: 6</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TASKCNT</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TASKCNT 6</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Default Thread stack size [bytes] <64-4096:8><#/4></span></div> +<div class="line"><span class="comment">// <i> Defines default stack size for threads with osThreadDef stacksz = 0</span></div> +<div class="line"><span class="comment">// <i> Default: 200</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_STKSIZE</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_STKSIZE 50</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Main Thread stack size [bytes] <64-32768:8><#/4></span></div> +<div class="line"><span class="comment">// <i> Defines stack size for main thread.</span></div> +<div class="line"><span class="comment">// <i> Default: 200</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_MAINSTKSIZE</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_MAINSTKSIZE 50</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Number of threads with user-provided stack size <0-250></span></div> +<div class="line"><span class="comment">// <i> Defines the number of threads with user-provided stack size.</span></div> +<div class="line"><span class="comment">// <i> Default: 0</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_PRIVCNT</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_PRIVCNT 0</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Total stack size [bytes] for threads with user-provided stack size <0-1048576:8><#/4></span></div> +<div class="line"><span class="comment">// <i> Defines the combined stack size for threads with user-provided stack size.</span></div> +<div class="line"><span class="comment">// <i> Default: 0</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_PRIVSTKSIZE</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_PRIVSTKSIZE 0</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <q>Check for stack overflow</span></div> +<div class="line"><span class="comment">// <i> Includes the stack checking code for stack overflow.</span></div> +<div class="line"><span class="comment">// <i> Note that additional code reduces the Kernel performance.</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_STKCHECK</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_STKCHECK 1</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Processor mode for thread execution </span></div> +<div class="line"><span class="comment">// <0=> Unprivileged mode </span></div> +<div class="line"><span class="comment">// <1=> Privileged mode</span></div> +<div class="line"><span class="comment">// <i> Default: Privileged mode</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_RUNPRIV</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_RUNPRIV 1</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// </h></span></div> +<div class="line"></div> +<div class="line"><span class="comment">// <h>RTX Kernel Timer Tick Configuration</span></div> +<div class="line"><span class="comment">// ======================================</span></div> +<div class="line"><span class="comment">// <q> Use Cortex-M SysTick timer as RTX Kernel Timer</span></div> +<div class="line"><span class="comment">// <i> Use the Cortex-M SysTick timer as a time-base for RTX.</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_SYSTICK</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_SYSTICK 1</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span><span class="comment">//</span></div> +<div class="line"><span class="comment">// <o>Timer clock value [Hz] <1-1000000000></span></div> +<div class="line"><span class="comment">// <i> Defines the timer clock value.</span></div> +<div class="line"><span class="comment">// <i> Default: 12000000 (12MHz)</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_CLOCK</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_CLOCK 12000000</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Timer tick value [us] <1-1000000></span></div> +<div class="line"><span class="comment">// <i> Defines the timer tick value.</span></div> +<div class="line"><span class="comment">// <i> Default: 1000 (1ms)</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TICK</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TICK 1000</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// </h></span></div> +<div class="line"></div> +<div class="line"><span class="comment">// <h>System Configuration</span></div> +<div class="line"><span class="comment">// =======================</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">// <e>Round-Robin Thread switching</span></div> +<div class="line"><span class="comment">// ===============================</span></div> +<div class="line"><span class="comment">//</span></div> +<div class="line"><span class="comment">// <i> Enables Round-Robin Thread switching.</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_ROBIN</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_ROBIN 1</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Round-Robin Timeout [ticks] <1-1000></span></div> +<div class="line"><span class="comment">// <i> Defines how long a thread will execute before a thread switch.</span></div> +<div class="line"><span class="comment">// <i> Default: 5</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_ROBINTOUT</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_ROBINTOUT 5</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// </e></span></div> +<div class="line"></div> +<div class="line"><span class="comment">// <e>User Timers</span></div> +<div class="line"><span class="comment">// ==============</span></div> +<div class="line"><span class="comment">// <i> Enables user Timers</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TIMERS</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TIMERS 1</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Timer Thread Priority</span></div> +<div class="line"><span class="comment">// <1=> Low</span></div> +<div class="line"><span class="comment">// <2=> Below Normal <3=> Normal <4=> Above Normal</span></div> +<div class="line"><span class="comment">// <5=> High</span></div> +<div class="line"><span class="comment">// <6=> Realtime (highest)</span></div> +<div class="line"><span class="comment">// <i> Defines priority for Timer Thread</span></div> +<div class="line"><span class="comment">// <i> Default: High</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TIMERPRIO</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TIMERPRIO 5</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Timer Thread stack size [bytes] <64-4096:8><#/4></span></div> +<div class="line"><span class="comment">// <i> Defines stack size for Timer thread.</span></div> +<div class="line"><span class="comment">// <i> Default: 200</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TIMERSTKSZ</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TIMERSTKSZ 50</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// <o>Timer Callback Queue size <1-32></span></div> +<div class="line"><span class="comment">// <i> Number of concurrent active timer callback functions.</span></div> +<div class="line"><span class="comment">// <i> Default: 4</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_TIMERCBQS</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_TIMERCBQS 4</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// </e></span></div> +<div class="line"></div> +<div class="line"><span class="comment">// <o>ISR FIFO Queue size<4=> 4 entries <8=> 8 entries</span></div> +<div class="line"><span class="comment">// <12=> 12 entries <16=> 16 entries</span></div> +<div class="line"><span class="comment">// <24=> 24 entries <32=> 32 entries</span></div> +<div class="line"><span class="comment">// <48=> 48 entries <64=> 64 entries</span></div> +<div class="line"><span class="comment">// <96=> 96 entries</span></div> +<div class="line"><span class="comment">// <i> ISR functions store requests to this buffer,</span></div> +<div class="line"><span class="comment">// <i> when they are called from the interrupt handler.</span></div> +<div class="line"><span class="comment">// <i> Default: 16 entries</span></div> +<div class="line"><span class="preprocessor">#ifndef OS_FIFOSZ</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor"> #define OS_FIFOSZ 16</span></div> +<div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> +<div class="line"><span class="preprocessor"></span></div> +<div class="line"><span class="comment">// </h></span></div> +<div class="line"></div> +<div class="line"><span class="comment">//------------- <<< end of configuration section >>> -----------------------</span></div> +</div><!-- fragment --><h1><a class="anchor" id="configWizard_display"></a> +Tool-specific display</h1> +<p>It is left to the development tool to interpret and display Configuration Wizard Annotations. The uVision IDE displays the code above in the following way:</p> +<div class="image"> +<img src="RTX_Conf_CM_Wizard_View.png" alt="RTX_Conf_CM_Wizard_View.png"/> +<div class="caption"> +Configuration Wizard Display</div></div> +<p> <b>Where</b></p> +<p><em>Option</em> are device properties, which can be represented in a tree structure. Each item can have an explanatory tooltip.</p> +<p><em>Value</em> sets the option value. Can contain controls to encapsulate data in predefined drop-down lists. </p> +</div></div><!-- contents --> +</div><!-- doc-content --> +<!-- start footer part --> +<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> + <ul> + <li class="footer">Generated on Wed Aug 1 2018 17:12:42 for CMSIS-Pack by Arm Ltd. All rights reserved. + <!-- + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 + --> + </li> + </ul> +</div> +</body> +</html> |