構文
int SyncPing(
unsigned int ipAddress,
unsigned char ttl,
int *rtt
);
パラメータ
- ipAddress
- [in] IPアドレスを指定します。
- sock
- [in] TLを指定します。
- rtt
- [out] ラウンドトリップタイムを受け取るポインタを指定します。
戻り値
関数は下記の値が返却されます。値 | 説明 |
---|---|
PING_ERR_SUCCESS | PINGの成功 |
PING_ERR_FAIL | 不正な引数 |
PING_ERR_TIMEOUT | PINGのタイムアウト |
PING_ERR_DEST_UNREACH | PINGが未到達 |
PING_ERR_WRONG_RESPONSE | 指定と異なるネットワークデバイスからのPINGを受信 |
解説
指定したIPアドレスにPINGを送信します。約5秒でタイムアウトします。
必要条件
ヘッダファイル:
lib.hライブラリファイル:
libSTARTUPOPH5000.a
サンプル
#include <stdio.h>
#include "lib.h"
void main(void)
{
int ret;
int i;
int connectStatus = SYS_WLAN_STATUS_UNAVAILABLE;
unsigned int hostIp = nmi_inet_addr("192.168.0.1");
char *ipAddress;
unsigned char ttl = 128;
unsigned int rtt;
ret = SysWLANInit(NULL);
while (connectStatus != SYS_WLAN_STATUS_CONNECTED)
{
ret = SysGetWLANConnectStatus(&connectStatus);
Idle();
}
for (i = 0; i < 4; i++)
{
ret = SyncPing(hostIp, ttl, &rtt);
printf("SyncPing(%x,%d,%p):\n\r", hostIp, ttl, &rtt);
ipAddress = (char *)&hostIp;
printf("IP:%u.%u.%u.%u\n\r", ipAddress[0], ipAddress[1], ipAddress[2], ipAddress[3]);
printf("ret=%d,ttl=%d,rtt=%d\n\r", ret, ttl, rtt);
Idle();
}
while(1)
Idle();
}
最終更新日:2020/09/25