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

CC3220SF blink homekit示例下使用tcp socket编程跑飞

我在使用CC3220SF blink homekit示例下使用tcp socket编程并debug过程中,发现使用sl_connect()函数进行与tcp server的连接的过程中有高几率发生系统跑飞,程序暂停时会发现程序停留在下方的函数中,而且在代码不进行任何改动的情况下重新进行debu时sl_connect()函数有时却能正常连接tcp server,但是在使用sl_send()函数发送5次消息后再次系统跑飞,程序再次停留在下方函数中。请问我该怎么解决。

/*
* ======== Hwi_excHandler ========
*/
Void Hwi_excHandler(UInt *excStack, UInt lr)
{
Hwi_module->excActive[0] = TRUE;

/* spin here if no exception handler is plugged */
while (Hwi_excHandlerFunc == NULL) {
;
}

Hwi_excHandlerFunc(excStack, lr);
}

/****我的socket初始化****/

void net_init()
{

SockID = sl_Socket(SL_AF_INET,SL_SOCK_STREAM, SL_IPPROTO_TCP);

if(SockID<0)printf("socket failed\n");

else printf("socket success\n");

SlSockAddrIn_t Addr;
_i16 AddrSize = sizeof(SlSockAddrIn_t);
memset(&Addr, 0, sizeof(Addr)); //先清除变量值
Addr.sin_family = SL_AF_INET;
Addr.sin_port = sl_Htons((unsigned short)60000);
Addr.sin_addr.s_addr = sl_Htonl(SL_IPV4_VAL(192,168,2,215));//ip addr

_i16 Status=0;
Status = sl_Connect(SockID, (SlSockAddr_t *)&Addr, AddrSize);

if(Status<0)printf("connect failed\n");

else printf("connect success\n");

GPIO_toggle(Board_LED0);

}

/***我发送消息使用的函数部分***/

char buf[]="someonemoved";

sl_Send(SockID,buf,sizeof(buf),SL_MSG_DONTWAIT);

Yonghua Pan:

关于homekit的需求请不要在论坛里面post, 请联系相应的技术支持人员。

赞(0)
未经允许不得转载:TI中文支持网 » CC3220SF blink homekit示例下使用tcp socket编程跑飞
分享到: 更多 (0)