TI中文支持网
TI专业的中文技术问题搜集分享网站

TDA2SX: Help:如何在TDA2中实现IPV6的功能,再通过UDP发送报文数据?

Part Number:TDA2SX

在TDA2中使用IPV6地址协议,来发送UDP的报文数据。

通过创建SOCKet的方式,失败,代码如下:

static char src[] = "fd11::100";
static char dst[] = "fd11::200";

void main_Tx()
{
int udp6_socket, ret, ttl, on, addr_len;
struct sockaddr_in6 saddr;
struct sockaddr_in6 daddr;
char buffer[] = "Hello World6";
Vps_printf(" DanS—–Network: start IPv6 interface main\n");

if ((inet_pton(AF_INET6, (char *)&src[0], &saddr.sin6_addr)) != 1)
{
Vps_printf("invalid ipv6 addr \r\n");
return ;
}
if ((inet_pton(AF_INET6, (char *)&dst[0], &daddr.sin6_addr)) != 1)
{
Vps_printf("invalid ipv6 addr \r\n");
return ;
} addr_len = sizeof(struct sockaddr_in6);
saddr.sin6_family = AF_INET6;
saddr.sin6_port = htons(30000);
daddr.sin6_family = AF_INET6;
daddr.sin6_port = htons(40000);

udp6_socket = socket(AF_INET6, SOCK_DGRAM, IPPROTO_UDP);
if (udp6_socket == -1)
{
Vps_printf("create udp6_socket fail\r\n");//代码运行打印在这里
Vps_printf("failed socket create (%d)\n",fdError());
return;
}

if (bind(udp6_socket, (struct sockaddr *)&saddr, addr_len))
{
Vps_printf("udp6 bind addr fail, err : %d\r\n", 0);
if( udp6_socket != (-1) )
fdClose( udp6_socket );
Vps_printf("\n== End Timeout Test ==\n\n");
//close(udp6_socket);
return;
}
/* 发送 */
ret = sendto(udp6_socket, &buffer[0], sizeof(buffer), 0, (struct sockaddr *)&daddr, addr_len);
if (ret > 0)
{
Vps_printf("udp6 send %d bytes success \r\n", ret);
}

fdClose( udp6_socket );
//close(udp6_socket);
return;
}

以上代码在调用,报错在黄色部分。求帮忙查看如何解决。

1.我在TDA2中,已经将对应的usecase的NDK_ENABLE_IPV6开关打开了。

2.为了使IPV6正常的运行还需要修改哪些部分?能否提供一下示例。

非常感谢。

Cherry Zhou:

您好我们已收到您的问题并升级到英文论坛寻求帮助,链接如下,如有答复将尽快回复您。谢谢!

e2e.ti.com/…/tda2sx-how-to-implement-ipv6-functionality-in-tda2-before-sending-message-data-over-udp

,

123321:

您好,这个问题能帮忙看一下吗?比较急。问题可以理解为:

在TDA2x下,NetWorking中的NDK版本是:ndk_2_24_02_31;NSP版本是nsp_gmacsw_4_16_01_01,想要实现IPV6下,用UDP发送报文,如何设置使用?

,

Cherry Zhou:

给您带来的不便敬请谅解,我们催促下英文论坛的工程师哈,您也可以多多关注下工程师这边。

赞(0)
未经允许不得转载:TI中文支持网 » TDA2SX: Help:如何在TDA2中实现IPV6的功能,再通过UDP发送报文数据?
分享到: 更多 (0)