root/branches/release-2.0beta/doc/functions/CommandLayers.html @ 157

Revision 144, 5.2 KB (checked in by behrens, 5 years ago)

add function header template, modified CommandLayers.html

Line 
1<html>
2<head>
3<title>Command Layer Structure</title>
4<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5<link type="text/css" rel="stylesheet" href="../style.css">
6</head>
7
8<body bgcolor="#FFFFFF" text="#000001">
9<p class="header">RWTH - Mindstorms NXT Toolbox</p>
10<p align="center">
11<h1>Command Layer Structure</h1>
12</p>
13<hr>
14<p>
15The functions of the RWTH - Mindstorms NXT Toolbox can be categorized into a multiple layer structure. On the lowest layer <b>Low Level and Helper Functions</b> are available,
16which mostly convert parameter modes to bytes words, determined by the LEGO direct commands documentation. The second layer includes <b>Direct NXT Commands</b> which are mapped
17from the LEGO direct command documentation without any limitations and can be identified by the <tt>NXT_*</tt> prefix. Also Bluetooth packet related functions can be found
18in this layer. Layer 3 provides <b>High Level Functions</b> for controlling the NXT motors, sensors and the Bluetooth connection. These functions are basically using the
19Direct NXT Commands of layer 2 to make the motor and sensor controlling more convenient and easily readable for the user. The top layer provides <b>High Level Regulation</b>
20functions for precise motor regulation.
21</p>
22
23<br><br>
24<table  border="2" cellpadding="10" align="center">
25
26  <tr bgcolor="#80FFFF">
27    <td align="center"><b>Layer</b></td>
28    <td><b>Description</b></td>
29    <td valign="top"><b>Output/Motors</b></td>
30    <td valign="top"><b>Input/Sensors</b></td>
31    <td valign="top"><b>General</b></td>
32    <td valign="top"><b>Bluetooth</b></td>
33  </tr>
34
35  <tr bgcolor="#B5F1B4">
36    <td align="center" width="40"><b>4</b></td>
37    <td><b>High Level Regulation</b></td>
38    <td valign="top"><b>MotorRotateAbs</b><br><br><b>WaitForMotor</b></td>
39    <td valign="top">&nbsp;</td>
40    <td valign="top">&nbsp;</td>
41    <td valign="top"><b>COM_MakeBTConfigFile</b></td>
42  </tr>
43
44  <tr bgcolor="#FFFF80">
45    <td align="center"><b>3</b></td>
46    <td><b>High Level Functions</b></td>
47    <td valign="top"><b>SendMotorSettings</b><br>SetMotor<br>SetPower<br>SetAngleLimit<br>SetRampMode<br>SpeedRegulation<br>SyncToMotor<br><br><b>StopMotor</b><br><br><b>GetMotorSettings</b><br>GetMotor<br><br><b>ResetMotorAngle</b><br><br>SetMemoryCount<br>GetMemoryCount</td>
48    <td valign="top"><b>OpenLight<br>OpenSound<br>OpenSwitch<br>OpenUltrasonic<br><br>GetLight<br>GetSound<br>GetSwitch<br>GetUltrasonic<br><br>CloseSensor</b></td>
49    <td valign="top">readFromIniFile<br><br>MAP_GetCommModule<br>MAP_GetInputModule<br>MAP_GetOutputModule<br>MAP_GetSoundModule<br>MAP_GetUIModule<br><br>MAP_SetOutputModule</td>
50    <td valign="top"><b>COM_OpenNXT</b><br>COM_OpenNXTEx<br><br><b>COM_CloseNXT</b><br></td>
51  </tr>
52
53  <tr bgcolor="#F5BB80">
54    <td align="center"><b>2</b></td>
55    <td><b>Direct NXT Commands</b></td>
56    <td valign="top"><b>NXT_SetOutputState<br><br>NXT_GetOutputState<br><br>NXT_ResetMotorPosition</b></td>
57    <td valign="top"><b>NXT_SetInputMode<br><br>NXT_GetInputValues</b><br><br>NXT_ResetInputScaledValue<br><br>NXT_LSRead<br>NXT_LSWrite<br>NXT_LSGetStatus</td>
58    <td valign="top"><b>NXT_PlayTone</b><br>NXT_PlaySoundFile<br>NXT_StopSoundPlayback<br><br>NXT_StartProgram<br>NXT_StopProgram<br><br>NXT_SendKeepAlive<br>NXT_GetBatteryLevel<br>NXT_GetFirmwareVersion<br>NXT_SetBrickName<br><br>NXT_ReadIOMap<br>NXT_WriteIOMap<br></td>
59    <td valign="top">COM_CreatePacket<br>COM_SendPacket<br>COM_CollectPacket<br><br>COM_SetDefaultNXT<br>COM_GetDefaultNXT<br></td>
60  </tr>
61
62  <tr bgcolor="#FF80FF">
63    <td align="center"><b>1</b></td>
64    <td><b>Low Level Functions:<br>Helper, Conversion and<br> Lookup Functions</b></td>
65    <td valign="top">MOTOR_A<br>MOTOR_B<br>MOTOR_C<br><br><i>byte2outputmode<br>byte2regmode<br>byte2runstate<br>outputmode2byte<br>regmode2byte<br>runstate2byte</i><br><br><i>initializeGlobalMotorStateVar<br>resetMotorRegulation</i></td>
66    <td valign="top">SENSOR_1<br>SENSOR_2<br>SENSOR_3<br>SENSOR_4<br><br><i>byte2sensortype<br>byte2sensormode<br>sensortype2byte<br>sensormode2byte</i></td>
67    <td valign="top">DebugMode<br><i>isdebug</i><br><br>textOut<br><br>tictic (o)<br>toctoc (o)<br><br><i>dec2wordbytes<br>name2commandbytes<br>commandbyte2name<br>wordbytes2dec</i></td>
68    <td valign="top">checkStatusByte<br><br><i>createHandleStruct</i><br><i>checkHandleStruct</i><br><br><i>getLibusbErrorString</i><br><i>getVISAErrorString</i><br><i>getReplyLengthFromCmdByte</i></td>
69  </tr>
70
71  <tr>
72    <td colspan="6" >legend: NXT_* = NXT Direct commands without any limitations (mapped to the LEGO direct command documentation)<br>
73&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
74COM_* = Functions related to the NXT communication<br>
75&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
76MAP_* = Functions related to the NXT module maps<br>
77&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
78<b>bold</b> = Main funcions or main group functions<br>
79&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
80<i>italic</i> = private functions<br>
81&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
82(o) = obsolete functions (will be removed in a future release)
83    </td>
84  </tr>
85</table>
86<br><br>
87
88<!-- </font> -->
89
90
91</body>
92</html>
Note: See TracBrowser for help on using the browser.