検索結果 190 件

by eForce技術担当
2014年7月14日(月) 15:05
フォーラム: μNet3
トピック: TCPの接続方法が分かりません。
返信数: 0
閲覧数: 6911

TCPの接続方法が分かりません。

TCPの接続方法にはアクティブオープンとパッシブオープンの2種類あります。 アクティブオープンは主にクライアントが能動的にTCPのセッションを開始するもので、 パッシブオープンはサーバが受動的にTCPのセッションを待ち受けるために使用します。 (FTPなどのプロトコルにおいてはその限りではありません) uNet3で接続する(アクティブオープン)には、SOC_CLIを引数にソケット関数con_soc()を コールします。引数で設定した宛先にSYNを送信後、相手からSYN/ACKの応答があれば 接続は正常終了しcon_soc()はE_OKを返却します。 また接続を待ち受ける(パッシブオープン)には...
by eForce技術担当
2014年7月14日(月) 15:03
フォーラム: μNet3
トピック: ネットワークバッファが足りない場合はどうなりますか?
返信数: 0
閲覧数: 6483

ネットワークバッファが足りない場合はどうなりますか?

snd_soc()やTCPのcon_soc()などパケットの送信が行われる場合にはE_NOMEMが返却されます。
また受信ができなくなるためrcv_soc()はタイムアウトするまで復帰しません。
by eForce技術担当
2014年7月14日(月) 15:03
フォーラム: μNet3
トピック: ネットワークバッファはいくつ用意すれば良いですか?
返信数: 0
閲覧数: 7643

ネットワークバッファはいくつ用意すれば良いですか?

アプリケーションの動作に依りますが基本的には送信で1つ、受信で1つのネットワークバッファを 消費し、APIが終了すると解放されます。 ただし以下のようなケースでは1つ以上のネットワークバッファが必要になるためその考慮が必要です。 複数のソケットで同時にAPIを呼び出す場合やパケットを受信する場合 複数のソケットで順次APIを呼び出す場合は、解放されたネットワークバッファを使い回しますが、タスクを分けて同時に呼び出す場合は、 それぞれのソケットに対するネットワークバッファの割り当てを考慮する必要があります。 ARPを伴うパケットを送信する場合 初めてパケットを送信する宛先(IP)に対しては、MA...
by eForce技術担当
2014年7月14日(月) 14:58
フォーラム: μNet3
トピック: ネットワークバッファとは何ですか?
返信数: 0
閲覧数: 7141

ネットワークバッファとは何ですか?

μNet3がパケットを送信したり受信するため保持する領域をネットワークバッファと呼びます。
基本的には1つのパケットは1つのネットワークバッファで構成されます。
ネットワークバッファはカーネルが提供する固定長メモリプールを使用します。
ネットワークバッファのサイズはMACヘッダ長+MTUサイズ+管理領域を考慮したサイズになります。
by eForce技術担当
2014年7月14日(月) 14:57
フォーラム: μNet3
トピック: ソケットはいくつまで作ることができますか?
返信数: 0
閲覧数: 6238

ソケットはいくつまで作ることができますか?

生成可能なソケット数に上限はないため、その数は使用可能なRAMサイズに依存します。
またUDPソケットとTCPソケットでは消費するRAMサイズは異なります。

1.UDPソケットの場合は1つのソケットにつき約104byte必要です。
2.TCPソケットの場合は1つのソケットにつき約240byte、それに各TCPソケットで定義する送信バッファと受信バッファ用の領域が必要になります。

※評価版の場合、使用可能なソケット数に制限があります。(UDPソケット、TCPソケットそれぞれ3個まで)
by eForce技術担当
2014年7月14日(月) 14:56
フォーラム: μNet3
トピック: アプリケーションからIPアドレスを設定できますか?
返信数: 0
閲覧数: 6954

アプリケーションからIPアドレスを設定できますか?

可能です。 IPアドレスを変更するにはnet_cfg()を使用します。 以下にサンプルコードを示します。 T_NET_ADR adr; UH devid; devid = 1; /* デバイスID */ adr.ipaddr = ip_aton("192.168.1.10"); /* IPアドレス */ adr.mask = ip_aton("255.255.255.0"); /* IPサブネットマスク */ adr.gateway = ip_aton("192.168.1.1"); /* IPゲートウェイ */ net_cfg(devid, NET_IP4_CFG, (VP)&adr); 通...
by eForce技術担当
2014年7月14日(月) 14:55
フォーラム: μNet3
トピック: アプリケーションからMACアドレスを設定できますか?
返信数: 0
閲覧数: 6934

アプリケーションからMACアドレスを設定できますか?

可能です。 μNet3ではデバイスのMACアドレスを広域変数gNET_DEV[n]に保持します。 (nはデバイスID-1) アプリケーションプログラムは直接この変数にMACアドレスを設定します。 尚、MACアドレスの設定はプロトコルスタックやネットワークデバイスの 初期化前に実行する必要があります。以下にサンプルコードを示します。 #include "net_hdr.h" void cfg_mac(UH devid, UB *mac) { T_NET_DEV *dev; dev = &gNET_DEV[devid-1]; net_memcpy(dev->cfg.eth.mac, mac, 6)...
by eForce技術担当
2014年7月14日(月) 14:49
フォーラム: μNet3
トピック: ソケットAPIは独自仕様ですか?
返信数: 0
閲覧数: 6180

ソケットAPIは独自仕様ですか?

独自仕様になります。主要なAPIは以下になります。

コード: 全て選択

net_ini     TCP/IPの初期化
con_soc     ソケットの接続
cls_soc     ソケットの切断
cfg_soc     ソケットの設定
ref_soc     ソケットの参照
abt_soc     ソケット処理のキャンセル
snd_soc     データの送信
rcv_soc     データの受信
by eForce技術担当
2014年7月14日(月) 09:53
フォーラム: μC3/Compact、μC3/Standard
トピック: 標準COMドライバ、割込みサービスルーチンで使用することができますか?
返信数: 0
閲覧数: 9938

標準COMドライバ、割込みサービスルーチンで使用することができますか?

対象:
μC3/Compact、μC3/Standard

質問:
標準COMドライバは、割込みサービスルーチンで使用することができますか?

回答:
μC3の標準COMドライバは、タスクからの呼び出しのみに対応しています。各APIは、タスクから呼び出しをしてください。なお、タスクからの呼び出しであっても、CPUロック中や、ディスパッチ禁止中の場合には、呼び出しができません。
by eForce技術担当
2014年7月11日(金) 17:59
フォーラム: μC3/Compact、μC3/Standard
トピック: Cortex-Mで管理外割込みをつかうと動きがおかしい。
返信数: 0
閲覧数: 3198

Cortex-Mで管理外割込みをつかうと動きがおかしい。

・Cortex-Mでの割込みレベルは以下のように設定してください。

(高優先) 0 カーネルの管理外の割込みで使用可能な割込みレベル カーネルレベル 割込みサービスルーチンで使用可能な割込みレベル 255

管理外割り込み処理中にカーネルのシステムコールを呼ぶことはできません、誤動作の原因になりますのでご注意下さい。