LM3S8962以太网通信UDP无法发送数据

使用周公uCOS+UDP通讯的例程中的两个核心任务,并且我已经测试成功,【可以发送和接收】!!

 但是这里的发送数据是将接收到的数据返回serv端, 而我需要的是【单独发送我想发送的数据】。

 那我就想把recvfrom()去掉不就行了,可是【总是发送不出去啊】!!!

而且加了我改的发送任务后,连这个接收任务也无法执行了。。。

不知道问题所在,求高手解答,谢谢了!!!

部分代码如下:

/*********************************************************************************************************
 ** Function name:         TaskB
 ** Descriptions:          等待UDP的信号量
** input parameters:      无
** output parameters:     无
** Returned value:        无
*********************************************************************************************************/
void TaskB (void  *pdata) 
 {
     void *  UdpTemp;
     uint8   eer;    
     
     while (1) {
             UdpTemp = OSQPend(RecUdpQFlag, 0, &eer);
         if (eer == OS_NO_ERR) {
                     Udp_Process((Rec_Ptr *)UdpTemp);
                     eer = eer;
             }
     }    
 }

 /*********************************************************************************************************
 ** Function name:         TaskD
 ** Descriptions:          UDP协议数据接收和发送任务
** input parameters:      无
** output parameters:     无
** Returned value:        无
*********************************************************************************************************/
void TaskD (void  *pdata) 
 {
     uint8   rec_buffer[100];                                                                            /*  发送缓存区                  */
     SOCKET        s; 
     int     rec_coute, send_coute;
     uint16  iii;
     struct sockaddr servaddr, clientaddr;
         OSTimeDly(60);
         servaddr.sin_family  = 0;                                                                                        /*  设置客户机IP地址            */
         servaddr.sin_addr[0] = 192;
         servaddr.sin_addr[1] = 168;
         servaddr.sin_addr[2] = 0;
         servaddr.sin_addr[3] = 55;
         servaddr.sin_port    = 1026;                                                                                  /*  设置服务器端口号            */
         s=*socket(0, SOCK_DGRAM, UDP_PROTOCOL);                                                        /*  建立SOCKET                  */
         clientaddr.sin_family = 0;
         clientaddr.sin_addr[0] = NetPort[0].My_Ip[0];                                            /*  设置本地IP地址              */
         clientaddr.sin_addr[1] = NetPort[0].My_Ip[1];
         clientaddr.sin_addr[2] = NetPort[0].My_Ip[2];
         clientaddr.sin_addr[3] = NetPort[0].My_Ip[3];
         clientaddr.sin_port = 1025;                                                                                  /*  设置本地监听端口号          */
         iii = bind((SOCKET * ) & s, (struct sockaddr *) & clientaddr, sizeof(clientaddr));        
                                                                                                                                              /*  绑定服务器地址              */
         while (1) {
                 rec_coute=recvfrom( s, rec_buffer, 100, 0, (struct sockaddr *) & servaddr, &iii );         
                                                                                                                                             /*  接受数据                    */
                 if(rec_coute > 0) {
                            send_coute = sendto(s, rec_buffer, rec_coute, 0, 
                                (struct sockaddr *) & servaddr, 
                                 sizeof(servaddr) );
                                                                                                                                             /*  把接受的数据返回            */                        
                         send_coute = send_coute;                                                                        /*  防止编译警告                */
                 } 
         }    
 }