頁
１．概要

１

２．通信仕様３３．機能説明６

４．プログラムサンプル

９５．ケーブル配線図

１１

ＨＩ－ＮＥＴはパーソナルコンピュータとホストコンピュータでオンライン通信する場合に、通信手順を特に意識することなく高度なオンラインプログラムが作成できる通信手順ライブラリです。

１．１ ＨＩ－ＮＥＴの構成
ＨＩ－ＮＥＴは次の内容で構成されています。
（１）手順ライブラリ（２）言語インターフェイス（ ＨＩ－ＮＥＴ上のＲＯＭ内 ）（ 添付のＣＤ－ＲＯＭ内 ）１．２ ＨＩ－ＮＥＴの特徴
・ＣＰＵを搭載したインテリジェントボードです。
・ＲＳ－２３２Ｃを２チャンネル持っています。
（ ＨＩ－ＮＥＴ／ＵＳＢは１チャンネル ）・同時に８回線までのオンライン通信が可能です。
・送信バッファ、受信バッファとして各々６４キロバイトを持っています。
（ 各バッファは、標準２０４８＋１０バイトのブロックで管理されます。 ）・インターフェイスの形式で下記の２種類があります｡
ｲﾝﾀｰﾌｪｲｽ
ＵＳＢ
ＰＣＩバス

製品名
ＨＩ－ＮＥＴ／ＵＳＢ
ＨＩ－ＮＥＴ／ＰＣＩ

サイズ (mm)
154 × 95 × 34 ( ケース )175 × 107
( ハイプロファイル・ショートサイズ )( ブラケットを含まず )１．３ 対応ＯＳ・言語（１）ＨＩ－ＮＥＴ／ＵＳＢ
・Windows 2000, XP, Windows 7(32Bit/64Bit)
Windows 8(32Bit/64Bit), Windows 10(32Bit/64Bit)
Windows 2000 Server, Server 2003, Server 2008(32Bit/64Bit)
Windows Server 2012
・ＤＬＬを使用できる言語（ Visual BASIC ･ Visual Ｃ 等 ）（２）ＨＩ－ＮＥＴ／ＰＣＩ・Windows 2000, XP, Windows 7(32Bit), Windows 8(32Bit)
Windows 2000 Server, Server 2003, Server 2008(32Bit)
・ＤＬＬを使用できる言語（ Visual BASIC ･ Visual Ｃ 等 ）-1-１．４ 対応モデム
Ａ．ＳＹＮ同期式通信（ＢＳＣ手順同期式・レベル２Ｂクラス２手順）
１．構内回線の場合

２．公衆回線の場合【 条件 】①４線式②構内同期式【 例 】

ＮＥＣ製 DATAX S19.2 mini－mkⅡ
ブラックボックス製 ＭＥ７４２Ａ－Ｒ２【 条件 】①公衆回線モデム（２線式）②同期式（ＳＹＮ同期式）③自動ダイヤルは Ｖ２５．ｂｉｓ対応

【 例 】

ＮＥＣ製

ＩＴＭ２４００ｍｋⅡ
ＩＴＭ４８００ｍｋⅡ
オムロン製 ＭＤ－２４ＨＳ
ＭＤ－４８ＨＳ

Ｂ．調歩同期式通信（ＢＳＣ手順調歩同期式・レベル２Ａクラス２手順）
１．構内回線の場合

２．公衆回線の場合【 条件 】①４線式②調歩同期式【 例 】

ＮＥＣ製 DATAX S19.2 mini－mkⅡ
ブラックボックス製 ＭＥ８３７Ａ－Ｒ３
ＭＥ８３８Ａ－Ｒ３【 条件 】①公衆回線モデム（２線式）②調歩同期式③自動ダイヤルは Ｖ２５．ｂｉｓ対応

【 例 】

ＮＥＣ製
ＩＴＭ１２００
オムロン製 ＭＤ１２００Ｈ-2-２．１ ＢＳＣ手順
適 応 回 線専用回線／公衆回線

同 期 方 式

調歩同期式 または ＳＹＮ同期式

回 線 速 度

（調歩同期式）

１５０～ ９６００ ｂｐｓ（ＳＹＮ同期式）

１５０～ ９６００ ｂｐｓ

通 信 方 式

半二重通信（２線式または４線式）

接 続 方 式コンテンション方式

応 答 方 式（調歩同期式）

絶対 ACK，NAK 応答（ＳＹＮ同期式）

ACK0，ACK１の交互応答
絶対 NAK 応答

ＥＢＣＤＩＣ／ＡＳＣＩＩの選択
伝送制御コード

標準（調歩同期式）（ＳＹＮ同期式）

伝送コード

ＥＢＣＤＩＣ／ＪＩＳ

透 過 方 式

透過／非透過８ビットパリティ無し
８ビットパリティ無し

ＣＲＣ１６／ＣＲＣ－ＩＴＵ－Ｔ／ＬＲＣの選択可
誤 り 制 御標準（調歩同期式）（ＳＹＮ同期式）

自動ダイヤル

ＬＲＣ
ＣＲＣ１６

V25.bis 対応

２．２ レベル２Ａクラス２・レベル２Ｂクラス２手順
適 応 回 線
同 期 方 式回 線 速 度専用回線／公衆回線（レベル２Ａクラス２） 調歩同期式（レベル２Ｂクラス２） ＳＹＮ同期式（レベル２Ａクラス２） １５０～ ９６００ ｂｐｓ（レベル２Ｂクラス２） １５０～ ９６００ ｂｐｓ

通 信 方 式

半二重通信（２線式または４線式）

接 続 方 式コンテンション方式（レベル２Ａクラス２） 絶対 ACK，NAK 応答

応 答 方 式

（レベル２Ｂクラス２） ACK0，ACK1 の交互応答
絶対 NAK 応答
ＡＳＣＩＩ ７ビットパリティ有り

伝送制御コード（レベル２Ａクラス２） ７ビット偶数パリティ（レベル２Ｂクラス２） ７ビット奇数パリティ

伝送コード

ＥＢＣＤＩＣ／ＪＩＳ

透 過 方 式

透過／非透過誤 り 制 御自動ダイヤル（レベル２Ａクラス２） ＬＲＣ（レベル２Ｂクラス２） ＣＲＣ－ＩＴＵ－Ｔ
V25.bis 対応-3-

２．３ レベル２Ａクラス３・レベル２Ｂクラス３手順
適 応 回 線
同 期 方 式回 線 速 度専用回線／公衆回線（レベル２Ａクラス３） 調歩同期式（レベル２Ｂクラス３） ＳＹＮ同期式（レベル２Ａクラス３） １５０～ ９６００ ｂｐｓ（レベル２Ｂクラス３） １５０～ ９６００ ｂｐｓ

通 信 方 式

半二重通信（２線式または４線式）

接 続 方 式

ポーリング／セレクティング方式（レベル２Ａクラス３） 絶対 ACK，NAK 応答

応 答 方 式

（レベル２Ｂクラス３） ACK0，ACK1 の交互応答
絶対 NAK 応答
ＡＳＣＩＩ ７ビットパリティ有り

伝送制御コード（レベル２Ａクラス３） ７ビット偶数パリティ（レベル２Ｂクラス３） ７ビット奇数パリティ

伝送コード

ＥＢＣＤＩＣ／ＪＩＳ

透 過 方 式

透過／非透過誤 り 制 御自動ダイヤル（レベル２Ａクラス３） ＬＲＣ（レベル２Ｂクラス３） ＣＲＣ－ＩＴＵ－Ｔ
V25.bis 対応-4-

２．４ 伝送制御文字
ＳＹＮ同期式

調歩同期式

符 号意味EBCDICASCIIEBCDICASCII

STX０２０２０２０２

電文開始（透過モードでは DLE･STX）

ETX

０３０３０３０３

電文終了（透過モードでは DLE･ETX）

ETB

２６１７２６１７

ブロック終了（透過モードでは DLE･ETB）

EOT

３７０４３７０４

伝送終了

SYN

３２１６－

－

同期文字

ENQ

２Ｄ

０５２Ｄ

０５

問い合わせ

ACK－－

２Ｅ

０６

肯定応答

ACK0

10･70

10･30

－

－

肯定応答０ （ＳＹＮ同期式）

ACK1

10･61

10･31

－

－

肯定応答１ （ＳＹＮ同期式）

SOH

０１０１

０１０１

ヘディング開始

WACK

10･6B

10･3B

10･6B

10･3B

送信待機要求肯定応答（ＢＳＣ手順のみ）

WABT

－

10･3F

－

10･3F

受信の一時中断要求 （レベル２Ａ／２Ｂのみ）

RVI

10･7C

10･3C

10･7C

10･3C

送信局の反転中断－10･7C－10･7C

中断

NAK

３Ｄ

１５３Ｄ

１５

否定応答

DLE

１０１０

１０１０

伝送制御拡張

PADL

ＡＡ

ＡＡ

ＡＡ

ＡＡ

リーディングパッド※padset 関数で変更可能

PADTＦＦ

ＦＦ

ＦＦＦＦ

トレーリングパッド※padset 関数で変更可能（ＳＹＮ同期式）（調歩同期式）（レベル２Ａ／２Ｂのみ）※レベル２Ａは調歩同期式、レベル２ＢはＳＹＮ同期式です。
※レベル２Ａ／２Ｂクラス２、レベル２Ａ／２Ｂクラス３の伝送制御文字はＡＳＣＩＩ です。
※伝送上では、レベル２Ａでは偶数パリティ、レベル２Ｂでは奇数パリティが付加されます。

-5-３．１ ＢＳＣ手順
initialbscopenbscsendsendckhrecv
hrecvxchcloserdtck
rbfclr
sbfclrtelon
mtelontelofftimerset

retrysetpadsetbsizeset
syncsetvergetＨＩ－ＮＥＴを使用可能にします。
ＢＳＣ手順の回線をオープンし、通信可能の状態にします｡（通信モード） ・優先局指定 （１次局・２次局）
・公衆回線／専用回線
・透過方式／非透過方式
・伝送のデータ形式指定 （８ビット／７ビット）
・２線式／４線式
・ＪＩＳ
ＥＢＣＤＩＣ変換の有無
・調歩同期式／ＳＹＮ同期式
・通信速度
送信データを送信バッファに入れます。
送信バッファに入ったデータは自動的に送信されます。
送信終了のチェックを行います｡
受信バッファから受信データを取り出します｡
受信バッファから受信データを取り出します｡（受信データ長が 0 の受信データも取り出します｡）
回線のクローズを行います｡
受信データの件数を確認します｡
受信バッファをクリアします。
送信バッファをクリアします。
指定した電話番号に自動ダイヤルします｡
手動発信及び自動着信で電話回線の接続を行います｡
接続されている電話回線を切断します｡
各タイマー値を既定値から変更します。
・無通信監視タイマー
・送信監視タイマー
・受信監視タイマー
・ＷＡＣＫ応対ＥＮＱ送出タイマー
各リトライ値を既定値から変更します｡
・相手局が無応答の場合のリトライ回数
・相手局からＮＡＫが返った場合のリトライ回数
リーディングパッド、トレーリングパッドを既定値から変更します｡
送信、受信データバッファの１ブロックのサイズを変更します。
ＳＹＮＣキャラクタとその数の変更を行います｡
ＨＩ－ＮＥＴのバージョンを取得します｡※ＢＳＣ手順のみ使用できる関数
ridget

ＢＳＣ手順で受信した ID を取得します。

-6-

３．２ レベル２Ａクラス２・レベル２Ｂクラス２手順
initialnec2open

nec2send
sendckhrecv
hrecvxchcloserdtck
rbfclr
sbfclrtelon
mtelontelofftimerset

retrysetpadsetbsizeset
syncsetvergetＨＩ－ＮＥＴを使用可能にします。
レベル２Ａ／２Ｂクラス２の回線をオープンし、通信可能の状態にします｡（通信モード） ・優先局指定 （１次局・２次局）
・公衆回線／専用回線・透過方式／非透過方式
・伝送のデータ形式指定 （８ビット／７ビット）
・２線式／４線式
・ＪＩＳ
ＥＢＣＤＩＣ変換の有無
・調歩同期式（レベル２Ａ）／ＳＹＮ同期式(レベル２Ｂ)
・通信速度
送信データを送信バッファに入れます。
送信バッファに入ったデータは自動的に送信されます。
送信終了のチェックを行います｡
受信バッファから受信データを取り出します｡
受信バッファから受信データを取り出します｡（受信データ長が 0 の受信データも取り出します｡）
回線のクローズを行います｡
受信データの件数を確認します｡
受信バッファをクリアします。
送信バッファをクリアします。
指定した電話番号に自動ダイヤルします｡
手動発信及び自動着信で電話回線の接続を行います｡
接続されている電話回線を切断します｡
各タイマー値を既定値から変更します。
・無通信監視タイマー
・送信監視タイマー
・受信監視タイマー
各リトライ値を既定値から変更します｡
・相手局が無応答の場合のリトライ回数
・相手局からＮＡＫが返った場合のリトライ回数
リーディングパッド、トレーリングパッドを既定値から変更します｡
送信、受信データバッファの１ブロックのサイズを変更します。
ＳＹＮＣキャラクタとその数を変更します。
ＨＩ－ＮＥＴのバージョンを取得します｡-7-

３．３ レベル２Ａクラス３・レベル２Ｂクラス３手順
initialnec3open

nec3send
sendckhrecv
hrecvxchcloserdtck
rbfclr
sbfclrtelon
mtelontelofftimerset

retrysetpadsetbsizeset
syncsetvergetＨＩ－ＮＥＴを使用可能にします。
レベル２Ａ／２Ｂクラス３の回線をオープンし、通信可能の状態にします。
（通信モード） ・主局／従局
・公衆回線／専用回線
・透過方式／非透過方式
・伝送のデータ形式指定 （８ビット／７ビット）
・２線式／４線式
・ＪＩＳ
ＥＢＣＤＩＣ変換の有無
・調歩同期式（レベル２Ａ）／ＳＹＮ同期式(レベル２Ｂ)
・通信速度
送信データを送信バッファに入れます｡
送信バッファに入ったデータは自動的に送信されます。
送信終了のチェックを行います｡
受信バッファから受信データを取り出します｡
受信バッファから受信データを取り出します｡（受信データ長が 0 の受信データも取り出します｡）
回線のクローズを行います｡
受信データの件数を確認します｡
受信バッファをクリアします。
送信バッファをクリアします。
指定した電話番号に自動ダイヤルします｡
手動発信及び自動着信で電話回線の接続を行います｡
接続されている電話回線を切断します｡
各タイマー値を既定値から変更します。
・無通信監視タイマー
・送信監視タイマー
・受信監視タイマー
・主局のポーリング間隔
各リトライ値を既定値から変更します｡
・相手局が無応答の場合のリトライ回数
・相手局からＮＡＫが返った場合のリトライ回数
リーディングパッド、トレーリングパッドを既定値から変更します｡
送信、受信データバッファの１ブロックのサイズを変更します。
ＳＹＮＣキャラクタとその数を変更します。
ＨＩ－ＮＥＴのバージョンを取得します｡※レベル２Ａクラス３・レベル２Ｂクラス３手順の主局側のみで使用できる関数
pollonpolloff
pollstat

指定したユニットアドレスへのポーリングを開始します。
指定したユニットアドレスのポーリングを停止します。
指定した入力ユニットアドレスのポーリング状態を取得します。

-8-４．１ Ｃ言語サンプル （ＢＳＣ手順でデータ受信）
main()
{
int
int
char
intcharintchn, sts, mode;
ioadr[4];id1[50], id2[50];prot, bps;
dt[1000];
em, rln;// -- ＨＩ－ＮＥＴのインシャライズ
chn = 0;sts = initial (chn) ;if (sts & 0xff) {printf (“Initial Error St = %x\n”, sts);exit(1);}//--回線オープン
id1[0] = ‘\0’;id2[0] = ‘\0’;mode = 0;
prot = 2;
bps = 6;//--ＩＤ設定//--回線モード//--SYN 同期式(外部同期)//--通信速度(9600bps)

sts = bscopen (chn, id1, id2, mode, prot, bps);

if ( sts =! 0x0000) {printf (“回線オープンエラー sts = %x\n”, sts)exit(1) ;//--データ受信（[EOT]を受信するまで受信を繰り返す）
do{memset ( dt, 0, sizeof(dt));do{sts = hrecv (chn,dt);}while(sts == 0);}//==回線オープン//==受信if ((sts & 0x8000) == 0x8000){;
printf（”受信エラー sts = %x\n”, sts） ;break;//--エラー有無確認

rln = sts & 0x1fff;
em = (sts / 0x2000) & 3;//--データ長の取得//--区切文字の取得

switch(em){case 0x00case 0x01
printf (“受信データ：%s\n”,dt);
break;
case 0x02
printf(“ＥＯＴ受信\n”);break;}} while (em != 0x02);}//--使用するチャンネル//--ＨＩ－ＮＥＴの初期化

chclose(chn);//--区切文字[ETX][ETB]//--受信データ表示//--[EOT]を受信//--回線クローズ-9-

４．２ ＢＡＳＩＣサンプル （ＢＳＣ手順でデータ受信）‘ ＨＩ－ＮＥＴのイニシャライズ
CHN% = 0‘--使用するチャンネル

STS% = initial (CHN%)

IF STS% <> 0 THEN
PRINT “Initial Error St =”; STS%EXIT DO
END IF‘ 回線オープン
ID1$ = CHR$(0)ID2$ = CHR$(0)MODE% = 0
PROT% = 2
BPS% = 6‘--ＩＤ設定‘--回線モード‘— SYN 同期式(外部同期)‘--通信速度(9600bps)

STS% = bscopen (CHN%, ID1$, ID2$, MODE%, PROT%, BPS%)‘==回線オープン

IF STS% <> 0 THEN
PRINT “回線オープンエラー STS = ”; HEX$(STS%)
EXIT DO
END IF‘--データ受信（[EOT]を受信するまで受信を繰り返す）
DO
DT$ = STRING$(1024,CHR$(0))
DO

STS% = hrecv (CHN%,DT$)‘--受信文字列のエリア確保‘==受信LOOP WHILE STS% = 0
IF (STS% AND &H8000) = &H8000 THEN
PRINT “受信エラー STS = ”;HEX$(STS%)
EXIT DO
END IF‘--エラー有無確認

RLN% = STS% AND &H1FFF
EM% = (STS% / &H2000) AND 3‘--データ長の取得‘--区切文字の取得SELECT CASE EM%
CASE 0,1 :PRINT“受信データ：”;LEFT$(DT$,RLN%)
CASE 2:PRINT“ＥＯＴ受信”END SELECTLOOP UTIL EM% = 2

STS% = chclose(CHN%)‘--区切文字[ETX][ETB]‘--受信データ表示‘--[EOT]を受信‘--回線クローズ- 10 -

Ａ．対モデムケーブルの配線
ＳＤ
ＲＤ
ＲＳ
ＣＳＤＲ
ＳＧＣＤ
ＳＴ2
ＲＴＥＲ
ＳＴ1２３４５６７８15172024

２３４５６７８15172024

ＳＤ （ＴｘＤ）
ＲＤ （ＲｘＤ）
ＲＳ （ＲＴＳ）
ＣＳ （ＣＴＳ）
ＤＲ （ＤＳＲ）
ＳＧ （ＧＮＤ）
ＣＤ （ＤＣＤ）
ＳＴ2 （ＴｘＣ2）
ＲＴ （ＲｘＣ）
ＥＲ （ＤＴＲ）
ＳＴ1 （ＴｘＣ1）

Ｂ．直結ケーブルの配線① ＢＳＣ（調歩同期）
・レベル２Ａクラス２・レベル２Ａクラス３ＳＤ
ＲＤ
ＲＳ
ＣＳ
ＤＲ
ＳＧＣＤ
ＥＲ

２３４５６７８20２３４５６７８20ＳＤ
ＲＤ
ＲＳ
ＣＳＤＲ
ＳＧ
ＣＤ
ＥＲ（ＴｘＤ）
（ＲｘＤ）
（ＲＴＳ）
（ＣＴＳ）
（ＤＳＲ）
（ＧＮＤ）
（ＤＣＤ）
（ＤＴＲ）

② ＢＳＣ（ＳＹＮ同期）
・レベル２Ｂクラス２・レベル２Ｂクラス３
ＳＤ
ＲＤ
ＲＳ
ＣＳ
ＤＲ
ＳＧ
ＣＤ
ＳＴ2
ＲＴ
ＥＲ
ＳＴ1

２３４５６７８15172024２３４５６７８15172024- 11 -ＳＤ （ＴｘＤ）
ＲＤ （ＲｘＤ）
ＲＳ （ＲＴＳ）
ＣＳ （ＣＴＳ）
ＤＲ （ＤＳＲ）
ＳＧ （ＧＮＤ）
ＣＤ （ＤＣＤ）
ＳＴ2 （ＴｘＣ2）
ＲＴ （ＲｘＣ）
ＥＲ （ＤＴＲ）
ＳＴ1 （ＴｘＣ1）