<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="../Fmethod_xsl/fmethod_he_c.xsl"?>
<root>
  <func>


    <!-- 関数名 -->
    <title>pmc_prfrdbusprm</title>



    <!-- 関数宣言 -->
    <declare>
      <!-- Visual C++の宣言 -->
      <vc>
        <include>#include "fwlib32.h"</include>
        <prottype>FWLIBAPI short WINAPI pmc_prfrdbusprm(unsigned short FlibHndl, IODBBUSPRM *odb) ; </prottype>
      </vc>
    </declare>



    <!-- 解説 -->
    <doc>
        <cmn>
            <p>マスタ機能のバスパラメータをリードします。</p>
            <p>この関数は、PROFIBUS-DP管理ソフト(6557系列)の01〜07版と09版以降で使用できます。
               08版の管理ソフトでは、戻り値が EW_VERSION となります。<br/>
               この関数は、6558系列でも使用できます。
            </p>
            <p>※PROFIBUS-DP機能の詳細については「PROFIBUS-DP機能取扱説明書」を参照して下さい。
            </p>
        </cmn>
    </doc>



    <!-- 引数 -->
    <argument>
        <common>
            <vc>
                <item>
                    <name>FlibHndl</name>
                    <type>in</type>
                    <content>
                        <p>
                            ライブラリハンドルです。詳細は、「<a href="handle.htm" target="_parent">ライブラリハンドル</a>」を参照して下さい。
                        </p>
                    </content>
                </item>
                <item>
                    <name>odb</name>
                    <type>out</type>
                    <content>
                        <p>
                            バスパラメータを返すIODBBUSPRM構造体へのポインタです。
                            IODBBUSPRM構造体は次の通りです。
<pre>
typedef struct {
    char           fdl_add ;
    char           baudrate ;
    unsigned short tsl ;
    unsigned short min_tsdr ;
    unsigned short max_tsdr ;
    unsigned char  tqui ;
    unsigned char  tset ;
    long           ttr ;
    char           gap ;
    char           hsa ;
    char           max_retry ;
    unsigned char  bp_flag ;
    unsigned short min_slv_int ;
    unsigned short poll_tout ;
    unsigned short data_cntl ;
    char           reserve1[6] ;
    char           cls2_name[32] ;
    short          user_dlen ;
    char           user_data[62] ;
    char           reserve2[96] ;
} IODBBUSPRM ;
</pre>
                            <dl>
                                <dt>fdl_add</dt>
                                    <dd>マスタ局の局番が返ります。</dd>
                                <dt>baudrate</dt>
                                    <dd>転送速度のコード番号が返ります。</dd>
                                    <dd><table border="0" class="dd">
                                        <tr>    <td>0</td><td>：</td><td>9.6Kbps</td>
                                                <td>1</td><td>：</td><td>19.2Kbps</td>
                                                <td>2</td><td>：</td><td>93.75Kbps</td>
                                        </tr>
                                        <tr>    <td>3</td><td>：</td><td>187.5Kbps</td>
                                                <td>4</td><td>：</td><td>500Kbps</td>
                                                <td>6</td><td>：</td><td>1.5Mbps</td>
                                        </tr>
                                        <tr>    <td>7</td><td>：</td><td>3Mbps</td>
                                                <td>8</td><td>：</td><td>6Mbps</td>
                                                <td>9</td><td>：</td><td>12Mbps</td>
                                        </tr>
                                    </table></dd>
                                <dt>tsl</dt>
                                    <dd>トークンフレーム送信後、その応答フレームの最初の１文字を読み出すまでの最大時間が返ります。</dd>
                                <dt>min_tsdr</dt>
                                    <dd>送信、または受信データの最終ビットから次の送信または受信データの先頭ビットまでの最小経過時間が返ります。</dd>
                                <dt>max_tsdr</dt>
                                    <dd>送信、または受信データの最終ビットから次の送信または受信データの先頭ビットまでの最大経過時間が返ります。</dd>
                                <dt>tqui</dt>
                                    <dd>データを送信した後、レシーバを動作させるまでの待ち時間が返ります。</dd>
                                <dt>tset</dt>
                                    <dd>イベントが発生してからそれに対するアクションを実行開始するまでの時間が返ります。</dd>
                                <dt>ttr</dt>
                                    <dd>PROFIBUSのトークンが一巡するのにかかる予測時間  が返ります。</dd>
                                <dt>gap</dt>
                                    <dd>メンテナンス間隔の間に巡回するトークンの数が返ります。</dd>
                                <dt>hsa</dt>
                                    <dd>PROFIBUS上に設定される最大ノード番号が返ります。</dd>
                                <dt>max_retry</dt>
                                    <dd>最大リトライ回数が返ります。</dd>
                                <dt>bp_flag</dt>
                                    <dd>ユーザインタフェース用のフラグが返ります。各ビットの意味は次の通りです。</dd>
                                    <dd>BIT7</dd>
                                    <dd><table border="0" class="dd">
                                        <tr> <td>0</td><td>：</td><td>エラー発生時にオペレーションモードを変更しない</td> </tr>
                                        <tr> <td>1</td><td>：</td><td>エラー発生時にオペレーションモードをOperateモードからClearモードへ変更する。</td> </tr>
                                    </table></dd>
                                    <dd>※BIT0 〜BIT6 は、未使用です。</dd>
                                <dt>min_slv_int</dt>
                                    <dd>各スレーブ間のポーリング間隔の最小時間が返ります。</dd>
                                <dt>poll_tout</dt>
                                    <dd>マスタ局とマスタ局との通信時のリクエストを発信してからその応答を得るまでの最大待ち時間が返ります。</dd>
                                <dt>data_cntl</dt>
                                    <dd>Data Transfer Listが最低一度更新されるまでの時間が返ります。</dd>
                                <dt>reserve1</dt>
                                    <dd>未使用</dd>
                                <dt>cls2_name</dt>
                                    <dd>未使用</dd>
                                <dt>user_dlen</dt>
                                    <dd>バスパラメータに必要なメーカー側からの指定データのバイト数が返ります。</dd>
                                <dt>user_data</dt>
                                    <dd>バスパラメータに必要なメーカー側からの指定データが返ります。</dd>
                                    <dd>上記 user_dlen に返されるバイト数分のデータが有効です。</dd>
                                <dt>reserve2</dt>
                                    <dd>未使用</dd>
                            </dl>
                        </p>
                    </content>
                </item>
            </vc>
        </common>
    </argument>



    <!-- 戻り値 -->
    <errcode>
        <item>
            <name>EW_NOOPT</name>
            <content>オプションなし<br/>
                    <li>PROFIBUS-DPボード(ハード)が必要です。</li>
                    <li>PROFIBUS-DPの管理ソフトが必要です。</li>
                    <li>PROFIBUS-DPマスタ機能が必要です。</li>
                    <li>拡張ドライバ/ライブラリ機能が必要です。</li>
            </content>
        </item>
        <item>
            <name>EW_VERSION</name>
            <content>PROFIBUS-DPの管理ソフトの版数の誤り<br/>
                    08版の管理ソフトで本関数が使用されました。
                    管理ソフトを08版以外に交換して下さい。
            </content>
        </item>
    </errcode>



    <!-- CNCオプション -->
    <option>
        <hssb>拡張ドライバ/ライブラリ機能が必要です。</hssb>
        <ethr>
              <p>イーサネット機能と拡張ドライバ/ライブラリ機能が必要です。</p>
              <p>但し、Series 160i/180i/210i/0i MODEL B に関しては次のようになります。</p>
              <p>組込みイーサネットを使用のとき、</p>
              <p><ul>上記２つの機能は必要ありません。</ul></p>
              <p>イーサネットボードを使用のとき、</p>
              <p><ul>イーサネット機能のみ必要です。</ul></p>
        </ethr>
        <need>PROFIBUS-DPマスタ機能</need>
    </option>



    <!-- CNCパラメータ -->
    <parameter>
    </parameter>



    <!-- CNCモード -->
    <mode>
    </mode>



    <!-- 対応機種 -->
    <support>
        <m>
            <fs0ia>X</fs0ia>
            <fs0ib>O</fs0ib>
            <fs15>X</fs15>
            <fs15i>X</fs15i>
            <fs16>X</fs16>
            <fs18>X</fs18>
            <fs21>X</fs21>
            <fs16ia>O</fs16ia>
            <fs18ia>O</fs18ia>
            <fs21ia>O</fs21ia>
            <fs16ib>O</fs16ib>
            <fs18ib>O</fs18ib>
            <fs21ib>O</fs21ib>
            <fs30i>X</fs30i>
        </m>
        <t>
            <fs0ia>X</fs0ia>
            <fs0ib>O</fs0ib>
            <fs15>X</fs15>
            <fs15i>X</fs15i>
            <fs16>X</fs16>
            <fs18>X</fs18>
            <fs21>X</fs21>
            <fs16ia>O</fs16ia>
            <fs18ia>O</fs18ia>
            <fs21ia>O</fs21ia>
            <fs16ib>O</fs16ib>
            <fs18ib>O</fs18ib>
            <fs21ib>O</fs21ib>
            <fs30i>X</fs30i>
        </t>
        <lc>
            <fs0ia>X</fs0ia>
            <fs0ib>X</fs0ib>
            <fs15>X</fs15>
            <fs15i>X</fs15i>
            <fs16>X</fs16>
            <fs18>X</fs18>
            <fs21>X</fs21>
            <fs16ia>X</fs16ia>
            <fs18ia>X</fs18ia>
            <fs21ia>X</fs21ia>
            <fs16ib>X</fs16ib>
            <fs18ib>X</fs18ib>
            <fs21ib>X</fs21ib>
            <fs30i>X</fs30i>
        </lc>
        <p>
            <fs16i>O</fs16i>
            <fs18i>O</fs18i>
        </p>
        <l>
            <fs16i>O</fs16i>
            <fs18i>X</fs18i>
        </l>
        <w>
            <fs16i>X</fs16i>
            <fs18i>X</fs18i>
        </w>
        <pw>
            <d>X</d>
            <h>X</h>
        </pw>
    </support>



    <!-- 参照 -->
    <reference>
    </reference>



    <!-- プログラム例 -->
    <example>
    </example>



  </func>
</root>
