411 lines
17 KiB
HTML
411 lines
17 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"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.3.1"/>
|
|
<title>SOEM: ethercatfoe.c File Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</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: 56px;">
|
|
<td style="padding-left: 0.5em;">
|
|
<div id="projectname">SOEM
|
|
 <span id="projectnumber">v1.3.0</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.3.1 -->
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="annotated.html"><span>Data 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 List</span></a></li>
|
|
<li><a href="globals.html"><span>Globals</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_3012a2599d87e3128fe81d8c5dd7e75c.html">soem</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#nested-classes">Data Structures</a> |
|
|
<a href="#define-members">Macros</a> |
|
|
<a href="#func-members">Functions</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">ethercatfoe.c File Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>File over EtherCAT (FoE) module.
|
|
<a href="#details">More...</a></p>
|
|
<div class="textblock"><code>#include <stdio.h></code><br/>
|
|
<code>#include <string.h></code><br/>
|
|
<code>#include "osal.h"</code><br/>
|
|
<code>#include "oshw.h"</code><br/>
|
|
<code>#include "<a class="el" href="ethercattype_8h.html">ethercattype.h</a>"</code><br/>
|
|
<code>#include "<a class="el" href="ethercatbase_8h.html">ethercatbase.h</a>"</code><br/>
|
|
<code>#include "<a class="el" href="ethercatmain_8h.html">ethercatmain.h</a>"</code><br/>
|
|
<code>#include "<a class="el" href="ethercatfoe_8h.html">ethercatfoe.h</a>"</code><br/>
|
|
</div><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
|
|
Data Structures</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structec__FOEt.html">ec_FOEt</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
|
|
Macros</h2></td></tr>
|
|
<tr class="memitem:a793ff89db774aeb0df2b91a8e1a540d0"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#a793ff89db774aeb0df2b91a8e1a540d0">EC_MAXFOEDATA</a>   512</td></tr>
|
|
<tr class="separator:a793ff89db774aeb0df2b91a8e1a540d0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:a1536d973f942803ff6f8402bda2bb58d"><td class="memItemLeft" align="right" valign="top">PACKED_END int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#a1536d973f942803ff6f8402bda2bb58d">ecx_FOEdefinehook</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, void *hook)</td></tr>
|
|
<tr class="separator:a1536d973f942803ff6f8402bda2bb58d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af35e58fe5ad113236426d97caf1f119f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#af35e58fe5ad113236426d97caf1f119f">ecx_FOEread</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, char *filename, uint32 password, int *psize, void *p, int timeout)</td></tr>
|
|
<tr class="separator:af35e58fe5ad113236426d97caf1f119f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab3aacd710c4ae3f92a9da2b29199c345"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#ab3aacd710c4ae3f92a9da2b29199c345">ecx_FOEwrite</a> (<a class="el" href="structecx__contextt.html">ecx_contextt</a> *context, uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, char *filename, uint32 password, int psize, void *p, int timeout)</td></tr>
|
|
<tr class="separator:ab3aacd710c4ae3f92a9da2b29199c345"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6e12a3b98cadb84a64380366e2c239f8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#a6e12a3b98cadb84a64380366e2c239f8">ec_FOEdefinehook</a> (void *hook)</td></tr>
|
|
<tr class="separator:a6e12a3b98cadb84a64380366e2c239f8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a99191c2fcaa3e50999a80b831d1f08ed"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#a99191c2fcaa3e50999a80b831d1f08ed">ec_FOEread</a> (uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, char *filename, uint32 password, int *psize, void *p, int timeout)</td></tr>
|
|
<tr class="separator:a99191c2fcaa3e50999a80b831d1f08ed"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a212557ed69e601f59421bd32c463b0d5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="ethercatfoe_8c.html#a212557ed69e601f59421bd32c463b0d5">ec_FOEwrite</a> (uint16 <a class="el" href="eepromtool_8c.html#a7f46665d1fe6d01a75a90942bb34cfaf">slave</a>, char *filename, uint32 password, int psize, void *p, int timeout)</td></tr>
|
|
<tr class="separator:a212557ed69e601f59421bd32c463b0d5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>File over EtherCAT (FoE) module. </p>
|
|
<p>SDO read / write and SDO service functions </p>
|
|
</div><h2 class="groupheader">Macro Definition Documentation</h2>
|
|
<a class="anchor" id="a793ff89db774aeb0df2b91a8e1a540d0"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">#define EC_MAXFOEDATA   512</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Function Documentation</h2>
|
|
<a class="anchor" id="a6e12a3b98cadb84a64380366e2c239f8"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int ec_FOEdefinehook </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>hook</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a99191c2fcaa3e50999a80b831d1f08ed"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int ec_FOEread </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint16 </td>
|
|
<td class="paramname"><em>slave</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"><em>filename</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint32 </td>
|
|
<td class="paramname"><em>password</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int * </td>
|
|
<td class="paramname"><em>psize</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>timeout</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a212557ed69e601f59421bd32c463b0d5"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int ec_FOEwrite </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint16 </td>
|
|
<td class="paramname"><em>slave</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"><em>filename</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint32 </td>
|
|
<td class="paramname"><em>password</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>psize</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>timeout</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="a1536d973f942803ff6f8402bda2bb58d"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">PACKED_END int ecx_FOEdefinehook </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> * </td>
|
|
<td class="paramname"><em>context</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>hook</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>FoE progress hook.</p>
|
|
<dl class="params"><dt>Parameters</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">hook</td><td>= Pointer to hook function. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>1 </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="af35e58fe5ad113236426d97caf1f119f"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int ecx_FOEread </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> * </td>
|
|
<td class="paramname"><em>context</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint16 </td>
|
|
<td class="paramname"><em>slave</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"><em>filename</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint32 </td>
|
|
<td class="paramname"><em>password</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int * </td>
|
|
<td class="paramname"><em>psize</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>timeout</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>FoE read, blocking.</p>
|
|
<dl class="params"><dt>Parameters</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">filename</td><td>= Filename of file to read. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">password</td><td>= password. </td></tr>
|
|
<tr><td class="paramdir">[in,out]</td><td class="paramname">psize</td><td>= Size in bytes of file buffer, returns bytes read from file. </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">p</td><td>= Pointer to file buffer </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>= Timeout per mailbox cycle in us, standard is EC_TIMEOUTRXM </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Workcounter from last slave response </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a class="anchor" id="ab3aacd710c4ae3f92a9da2b29199c345"></a>
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int ecx_FOEwrite </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structecx__contextt.html">ecx_contextt</a> * </td>
|
|
<td class="paramname"><em>context</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint16 </td>
|
|
<td class="paramname"><em>slave</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">char * </td>
|
|
<td class="paramname"><em>filename</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint32 </td>
|
|
<td class="paramname"><em>password</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>psize</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">void * </td>
|
|
<td class="paramname"><em>p</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>timeout</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>FoE write, blocking.</p>
|
|
<dl class="params"><dt>Parameters</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">filename</td><td>= Filename of file to write. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">password</td><td>= password. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">psize</td><td>= Size in bytes of file buffer. </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">p</td><td>= Pointer to file buffer </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>= Timeout per mailbox cycle in us, standard is EC_TIMEOUTRXM </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Workcounter from last slave response </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated on Tue Feb 26 2013 13:57:51 for SOEM by  <a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
</a> 1.8.3.1
|
|
</small></address>
|
|
</body>
|
|
</html>
|