SOEM/doc/html/ethercatsoe_8h.html

619 lines
28 KiB
HTML

<!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"/>
<title>SOEM: ethercatsoe.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">SOEM&#160;<span id="projectnumber">v1.3.1</span></div>
</td>
</tr>
</tbody>
</table>
</div>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Defines</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">ethercatsoe.h File Reference</div> </div>
</div>
<div class="contents">
<p>Headerfile for <a class="el" href="ethercatsoe_8c.html" title="Servo over EtherCAT (SoE) Module.">ethercatsoe.c</a>.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__SoEnamet.html">ec_SoEnamet</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__SoElistt.html">ec_SoElistt</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__SoEmappingt.html">ec_SoEmappingt</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__SoEattributet.html">ec_SoEattributet</a></td></tr>
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a5e09daf5b983bfe50999bc4fbc054fb5">EC_SOE_DATASTATE_B</a>&#160;&#160;&#160;0x01</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a8542c4b1d4e81510e637d7a99b2a0a05">EC_SOE_NAME_B</a>&#160;&#160;&#160;0x02</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a7eff57e16ef6b493739ca6e409631193">EC_SOE_ATTRIBUTE_B</a>&#160;&#160;&#160;0x04</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#af646d71fa85b1b67c34275446bc0db0e">EC_SOE_UNIT_B</a>&#160;&#160;&#160;0x08</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ae96972a1d1bb82ecd4c3ebf4ba1904a7">EC_SOE_MIN_B</a>&#160;&#160;&#160;0x10</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ab7bc6e8e0e7baf851c932cd9f90a4a52">EC_SOE_MAX_B</a>&#160;&#160;&#160;0x20</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ac95ae404477e650aa2dd4f0246f67fc9">EC_SOE_VALUE_B</a>&#160;&#160;&#160;0x40</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a9c02b5fb810d3c3368fddf489592e990">EC_SOE_DEFAULT_B</a>&#160;&#160;&#160;0x80</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a7f884d5454664715820a4e3c998261ad">EC_SOE_MAXNAME</a>&#160;&#160;&#160;60</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#aa5e07d92e9d5c3fa4a1a870b4dcf02e6">EC_SOE_MAXMAPPING</a>&#160;&#160;&#160;64</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#afeff0754b35ddece7b115edbf7ca4040">EC_IDN_MDTCONFIG</a>&#160;&#160;&#160;24</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a5e8434d404a4aba72836133e077103d1">EC_IDN_ATCONFIG</a>&#160;&#160;&#160;16</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a5bfd8cfc4069792fcfa12dfde2c18bae">EC_SOE_LENGTH_1</a>&#160;&#160;&#160;0x00</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a09fdab14c973b70898dc76bcb0996224">EC_SOE_LENGTH_2</a>&#160;&#160;&#160;0x01</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ada4b2c8eda18a940cb323eb5c68af23d">EC_SOE_LENGTH_4</a>&#160;&#160;&#160;0x02</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#adc7f5e03d5c40d639b4067ccc228d758">EC_SOE_LENGTH_8</a>&#160;&#160;&#160;0x03</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a42e7e471928ee4bb6d94ebda4eaef5b9">EC_SOE_TYPE_BINARY</a>&#160;&#160;&#160;0x00</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a6850bf82f5c8fe86aa92e673ccf6c2fa">EC_SOE_TYPE_UINT</a>&#160;&#160;&#160;0x01</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ab7720225079ce4f5ee107373e1a6be0c">EC_SOE_TYPE_INT</a>&#160;&#160;&#160;0x02</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a40cdd6b0d718f3753870555682581ef5">EC_SOE_TYPE_HEX</a>&#160;&#160;&#160;0x03</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ab76625bb52ed44b844bb0b00a1f13935">EC_SOE_TYPE_STRING</a>&#160;&#160;&#160;0x04</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#aa1ac70ea4e2f12dd9da6aad6ce616f6e">EC_SOE_TYPE_IDN</a>&#160;&#160;&#160;0x05</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a0377e5f79ae07325d1c1c14db74af2b2">EC_SOE_TYPE_FLOAT</a>&#160;&#160;&#160;0x06</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a53ed9daf61a901651f00f9076147df0a">EC_SOE_TYPE_PARAMETER</a>&#160;&#160;&#160;0x07</td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">PACKED_END int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#ab6a03acd200db6ca8b02fb54b7b4296c">ecx_SoEread</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, uint8 driveNo, uint8 elementflags, uint16 idn, int *psize, void *p, int timeout)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a4d2d52ed026adbfc0896953edb59ac70">ecx_SoEwrite</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, uint8 driveNo, uint8 elementflags, uint16 idn, int psize, void *p, int timeout)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatsoe_8h.html#a99875a86cc956e9de8a5753a3107be5b">ecx_readIDNmap</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, int *Osize, int *Isize)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Headerfile for <a class="el" href="ethercatsoe_8c.html" title="Servo over EtherCAT (SoE) Module.">ethercatsoe.c</a>. </p>
</div><hr/><h2>Define Documentation</h2>
<a class="anchor" id="a5e8434d404a4aba72836133e077103d1"></a><!-- doxytag: member="ethercatsoe.h::EC_IDN_ATCONFIG" ref="a5e8434d404a4aba72836133e077103d1" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_IDN_ATCONFIG&#160;&#160;&#160;16</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="afeff0754b35ddece7b115edbf7ca4040"></a><!-- doxytag: member="ethercatsoe.h::EC_IDN_MDTCONFIG" ref="afeff0754b35ddece7b115edbf7ca4040" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_IDN_MDTCONFIG&#160;&#160;&#160;24</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a7eff57e16ef6b493739ca6e409631193"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_ATTRIBUTE_B" ref="a7eff57e16ef6b493739ca6e409631193" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_ATTRIBUTE_B&#160;&#160;&#160;0x04</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a5e09daf5b983bfe50999bc4fbc054fb5"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_DATASTATE_B" ref="a5e09daf5b983bfe50999bc4fbc054fb5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_DATASTATE_B&#160;&#160;&#160;0x01</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a9c02b5fb810d3c3368fddf489592e990"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_DEFAULT_B" ref="a9c02b5fb810d3c3368fddf489592e990" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_DEFAULT_B&#160;&#160;&#160;0x80</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a5bfd8cfc4069792fcfa12dfde2c18bae"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_LENGTH_1" ref="a5bfd8cfc4069792fcfa12dfde2c18bae" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_LENGTH_1&#160;&#160;&#160;0x00</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a09fdab14c973b70898dc76bcb0996224"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_LENGTH_2" ref="a09fdab14c973b70898dc76bcb0996224" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_LENGTH_2&#160;&#160;&#160;0x01</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ada4b2c8eda18a940cb323eb5c68af23d"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_LENGTH_4" ref="ada4b2c8eda18a940cb323eb5c68af23d" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_LENGTH_4&#160;&#160;&#160;0x02</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="adc7f5e03d5c40d639b4067ccc228d758"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_LENGTH_8" ref="adc7f5e03d5c40d639b4067ccc228d758" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_LENGTH_8&#160;&#160;&#160;0x03</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ab7bc6e8e0e7baf851c932cd9f90a4a52"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_MAX_B" ref="ab7bc6e8e0e7baf851c932cd9f90a4a52" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_MAX_B&#160;&#160;&#160;0x20</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="aa5e07d92e9d5c3fa4a1a870b4dcf02e6"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_MAXMAPPING" ref="aa5e07d92e9d5c3fa4a1a870b4dcf02e6" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_MAXMAPPING&#160;&#160;&#160;64</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a7f884d5454664715820a4e3c998261ad"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_MAXNAME" ref="a7f884d5454664715820a4e3c998261ad" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_MAXNAME&#160;&#160;&#160;60</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ae96972a1d1bb82ecd4c3ebf4ba1904a7"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_MIN_B" ref="ae96972a1d1bb82ecd4c3ebf4ba1904a7" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_MIN_B&#160;&#160;&#160;0x10</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a8542c4b1d4e81510e637d7a99b2a0a05"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_NAME_B" ref="a8542c4b1d4e81510e637d7a99b2a0a05" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_NAME_B&#160;&#160;&#160;0x02</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a42e7e471928ee4bb6d94ebda4eaef5b9"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_BINARY" ref="a42e7e471928ee4bb6d94ebda4eaef5b9" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_BINARY&#160;&#160;&#160;0x00</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a0377e5f79ae07325d1c1c14db74af2b2"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_FLOAT" ref="a0377e5f79ae07325d1c1c14db74af2b2" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_FLOAT&#160;&#160;&#160;0x06</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a40cdd6b0d718f3753870555682581ef5"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_HEX" ref="a40cdd6b0d718f3753870555682581ef5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_HEX&#160;&#160;&#160;0x03</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="aa1ac70ea4e2f12dd9da6aad6ce616f6e"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_IDN" ref="aa1ac70ea4e2f12dd9da6aad6ce616f6e" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_IDN&#160;&#160;&#160;0x05</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ab7720225079ce4f5ee107373e1a6be0c"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_INT" ref="ab7720225079ce4f5ee107373e1a6be0c" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_INT&#160;&#160;&#160;0x02</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a53ed9daf61a901651f00f9076147df0a"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_PARAMETER" ref="a53ed9daf61a901651f00f9076147df0a" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_PARAMETER&#160;&#160;&#160;0x07</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ab76625bb52ed44b844bb0b00a1f13935"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_STRING" ref="ab76625bb52ed44b844bb0b00a1f13935" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_STRING&#160;&#160;&#160;0x04</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="a6850bf82f5c8fe86aa92e673ccf6c2fa"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_TYPE_UINT" ref="a6850bf82f5c8fe86aa92e673ccf6c2fa" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_TYPE_UINT&#160;&#160;&#160;0x01</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="af646d71fa85b1b67c34275446bc0db0e"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_UNIT_B" ref="af646d71fa85b1b67c34275446bc0db0e" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_UNIT_B&#160;&#160;&#160;0x08</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="ac95ae404477e650aa2dd4f0246f67fc9"></a><!-- doxytag: member="ethercatsoe.h::EC_SOE_VALUE_B" ref="ac95ae404477e650aa2dd4f0246f67fc9" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define EC_SOE_VALUE_B&#160;&#160;&#160;0x40</td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a99875a86cc956e9de8a5753a3107be5b"></a><!-- doxytag: member="ethercatsoe.h::ecx_readIDNmap" ref="a99875a86cc956e9de8a5753a3107be5b" args="(ecx_contextt *context, uint16 slave, int *Osize, int *Isize)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ecx_readIDNmap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>Osize</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>Isize</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>SoE read AT and MTD mapping.</p>
<p>SoE has standard indexes defined for mapping. This function tries to read them and collect a full input and output mapping size of designated slave.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">slave</td><td>= Slave number </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">Osize</td><td>= Size in bits of output mapping (MTD) found </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">Isize</td><td>= Size in bits of input mapping (AT) found </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>&gt;0 if mapping succesful. </dd></dl>
</div>
</div>
<a class="anchor" id="ab6a03acd200db6ca8b02fb54b7b4296c"></a><!-- doxytag: member="ethercatsoe.h::ecx_SoEread" ref="ab6a03acd200db6ca8b02fb54b7b4296c" args="(ecx_contextt *context, uint16 slave, uint8 driveNo, uint8 elementflags, uint16 idn, int *psize, void *p, int timeout)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">PACKED_END int ecx_SoEread </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>driveNo</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>elementflags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>idn</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>psize</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>timeout</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>SoE read, blocking.</p>
<p>The IDN object of the selected slave and DriveNo is read. If a response is larger than the mailbox size then the response is segmented. The function will combine all segments and copy them to the parameter buffer.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">slave</td><td>= Slave number </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">driveNo</td><td>= Drive number in slave </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">elementflags</td><td>= Flags to select what properties of IDN are to be transfered. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">idn</td><td>= IDN. </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">psize</td><td>= Size in bytes of parameter buffer, returns bytes read from SoE. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">p</td><td>= Pointer to parameter buffer </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>= Timeout in us, standard is EC_TIMEOUTRXM </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Workcounter from last slave response </dd></dl>
</div>
</div>
<a class="anchor" id="a4d2d52ed026adbfc0896953edb59ac70"></a><!-- doxytag: member="ethercatsoe.h::ecx_SoEwrite" ref="a4d2d52ed026adbfc0896953edb59ac70" args="(ecx_contextt *context, uint16 slave, uint8 driveNo, uint8 elementflags, uint16 idn, int psize, void *p, int timeout)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ecx_SoEwrite </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>slave</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>driveNo</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8&#160;</td>
<td class="paramname"><em>elementflags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16&#160;</td>
<td class="paramname"><em>idn</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>psize</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>timeout</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>SoE write, blocking.</p>
<p>The IDN object of the selected slave and DriveNo is written. If a response is larger than the mailbox size then the response is segmented.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>= context struct </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">slave</td><td>= Slave number </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">driveNo</td><td>= Drive number in slave </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">elementflags</td><td>= Flags to select what properties of IDN are to be transfered. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">idn</td><td>= IDN. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">psize</td><td>= Size in bytes of parameter buffer. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">p</td><td>= Pointer to parameter buffer </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>= Timeout in us, standard is EC_TIMEOUTRXM </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Workcounter from last slave response </dd></dl>
</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Mar 11 2015 20:44:23 for SOEM by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>