华为摄像头通过stm32叠加字符串


void sendtoHuawei(uint8_t *cameraIp,uint16_t cameraSrcPort,uint16_t cameraDstPort,uint8_t *userName,uint8_t *pwd,uint8_t lineNum,int camNo)//华为

    int flag = 1;
    int sock = -1,connected;
    uint8_t ret;
    int recv_data_len;
    memset(str1, 0, sizeof(str1));
    memset(str2, 0, sizeof(str2));
    memset(str3, 0, sizeof(str3));
    memset(recvbuf, 0, sizeof(recvbuf));
    /*
    memset(disp1, 0, 4096);
    memset(disp2, 0, 4096);
    memset(disp3, 0, 4096);
    memset(disp4, 0, 4096);
    */
    char ip[15]="\0";
    memset(ip,0,sizeof(ip));
    sprintf(ip,"%d.%d.%d.%d",cameraIp[0],cameraIp[1],cameraIp[2],cameraIp[3]);
    printf("sendtoHuawei g_NetDataBag.cameraDstPort = %s,g_NetDataBag.cameraDstPort=%d\r\n",ip,cameraDstPort);
    ret=socket(SOCK_TCPS,Sn_MR_TCP,0, Sn_MR_ND);    
    if(ret != SOCK_TCPS){
        printf("%d:Socket Error\r\n",SOCK_TCPS);
        goto exit;
    }else{
        //printf("%d:Opened\r\n",SOCK_TCPS);
    }
    ret=connect(SOCK_TCPS,cameraIp,cameraDstPort);
    if(ret != SOCK_OK){
        printf("%d:Socket Connect Error\r\n",SOCK_TCPS);
//        while(1);
        goto exit;
    }    
    
    int len = strlen(str2);
    sprintf(str3, "%d", 4);

    memset(str1, 0, sizeof(str1));
    strcat(str1, "PUT /SDCAPI/V1.0/OsdIaas/Channels/Osd?ChannelId=101&TemplateId=0 HTTP/1.1\r\n");
    strcat(str1, "Accept: */*\r\n");
    strcat(str1, "Host: ");
    strcat(str1, ip);
    strcat(str1, "\r\n");
    //strcat(str1, "connection:close\r\n");
    //strcat(str1, "\r\n");

    strcat(str1, "Content-Type: text/xml\r\n");
    strcat(str1, "\r\n");
    printf("[sendcam]len=%d,%s\r\n",strlen(str1),str1);
    send(SOCK_TCPS,(uint8_t *)str1,strlen(str1));    
    
  vTaskDelay(300);
    //接收数据    
    if(getSn_IR(SOCK_TCPS) & Sn_IR_CON)                       
    {
        setSn_IR(SOCK_TCPS, Sn_IR_CON);                    // Sn_IR的CON位置1,通知W5500连接已建立
    }
    // 数据回环测试程序:数据从上位机服务器发给W5500,W5500接收到数据后再回给服务器
    len=getSn_RX_RSR(SOCK_TCPS);                            // len=Socket0接收缓存中已接收和保存的数据大小    
    recv_data_len &#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值