超碰成人av-青青草97-天天做天天躁天天躁-久久精品国产亚洲一区二区-亚洲天堂狠狠干-在线观看欧美精品-国产精品美女一区二区视频-国产成人欧美日韩在线电影-一级片免费看视频-免费国产视频在线观看-伊人网久久久-无码人妻丰满熟妇啪啪网不卡-精品欧美乱码久久久久久-国产真实夫妇视频-中文久草

luoyingdong
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 157 個
工控威望: 306 點
下載積分: 1203 分
在線時間: 103(小時)
注冊時間: 2011-06-27
最后登錄: 2025-05-07
查看luoyingdong的 主題 / 回貼
樓主  發(fā)表于: 2011-06-29 14:24
這個程序可以用Visual Studio或EVC(Win CE)編譯,實際在Wince系統(tǒng)RUN過OK,有問題的可以回覆告知。
下方范例程序可以直接讀取D0000的值。
我是這個論壇的新人,不知道如何將文件上傳,我可以將完整專案文件上傳給大家參考,包刮PLC端Ethernet設(shè)定方法。


       WSADATA            wsaData;
    SOCKET            udpcmdSock;
    SOCKADDR_IN        saRecv, saSend;
    int                iLen,err,nSize;
    unsigned char    szToUdpCommand[80],szUdpResponse[100];
    struct    timeval        tv;
    fd_set    ReadFds;        //資料可讀取
    fd_set    WriteFds;        //資料可寫入
    fd_set    Exceptfds;        //錯誤檢出
    int        iRetCode;
    CString str1,str2;

    if(WSAStartup(0x0202,&wsaData) == SOCKET_ERROR)
    {
         MessageBox(_T("Startup Failure;"),_T("AMI"),MB_ICONERROR|MB_OK);
         WSACleanup();
         return;
    }

    udpcmdSock = socket ( AF_INET, SOCK_DGRAM, 0 );
    if ( INVALID_SOCKET == udpcmdSock)
    {
        MessageBox(_T("socket error;"),_T("AMI"),MB_ICONERROR|MB_OK);
        WSACleanup();
        return;
    }
    // bind to a local socket and an interface.
    saRecv.sin_family = AF_INET;
    saRecv.sin_addr.s_addr = htonl ( INADDR_ANY );
    //saSend.sin_addr.s_addr = inet_addr("172.16.50.220");
    saRecv.sin_port = htons ( 3939 );
    err = bind ( udpcmdSock, (SOCKADDR *) &saRecv, sizeof (SOCKADDR_IN) );
    if ( err==SOCKET_ERROR  )
    {
        MessageBox(_T("bind error;"),_T("AMI"),MB_ICONERROR|MB_OK);
        closesocket( udpcmdSock );
        WSACleanup();
        return;;
    }

    saSend.sin_family = AF_INET;
    saSend.sin_addr.s_addr = inet_addr("172.16.50.222");   // htonl ( INADDR_BROADCAST );
    saSend.sin_port = htons ( 3941 );
    iLen=21;
    szToUdpCommand[0]=0x50;        //SubHeader.bL
    szToUdpCommand[1]=0x00;        //SubHeader.bH
    szToUdpCommand[2]=0x00;        //NetworkNo
    szToUdpCommand[3]=0xFF;        //PCNo
    szToUdpCommand[4]=0xFF;        //IONo.bL
    szToUdpCommand[5]=0x03;        //IONo.bH
    szToUdpCommand[6]=0x00;        //StationNo
    szToUdpCommand[7]=0x0C;        //Length.bL 12 byte
    szToUdpCommand[8]=0x00;        //Length.bH
    szToUdpCommand[9]=0x10;        //Timer.bL
    szToUdpCommand[10]=0x00;    //Timer.bH
    szToUdpCommand[11]=0x01;    //Command.bL
    szToUdpCommand[12]=0x04;    //Command.bH
    szToUdpCommand[13]=0x00;    //SubCommand.bL bit0=0 -> word unit
    szToUdpCommand[14]=0x00;    //SubCommand.bH
    szToUdpCommand[15]=0x00;    //AddressL
    szToUdpCommand[16]=0x00;    //AddressNULL
    szToUdpCommand[17]=0x00;    //AddressH
    szToUdpCommand[18]=0xA8;    //DeviceCode D
    szToUdpCommand[19]=0x01;    //Points.bL    1 points
    szToUdpCommand[20]=0x00;    //Points.bH

    str1.Format(_T("L=%d,SBuf="),iLen);
    for(int i=0;i<iLen;i++) str1.AppendFormat(_T("%02hX "),(BYTE)szToUdpCommand);
    GetDlgItem(IDC_STATIC1)->SetWindowTextW(str1);

    //--- send command to PLC ---
    err = sendto ( udpcmdSock,(char*)szToUdpCommand,iLen,0,
        (SOCKADDR *) &saSend,sizeof ( SOCKADDR_IN ));
    if (  err==SOCKET_ERROR  )
    {
        MessageBox(_T("sendto error"),_T(""),MB_ICONERROR|MB_OK);
        closesocket( udpcmdSock );
        WSACleanup();
        return;
    }

/*********** receive response from Mit PLC ***********/
    tv.tv_sec = 2;//sec.
    tv.tv_usec = 0; //u-sec
    // The fd sets should be zeroed out before using them to prevent errors.
    FD_ZERO(&ReadFds);
    FD_ZERO(&WriteFds);
    FD_ZERO(&Exceptfds);
    //FD_CLR(udpcmdSock, &ReadFds );
    FD_SET(udpcmdSock, &ReadFds );

    iRetCode = select(0,&ReadFds,NULL,NULL,&tv);
    if (iRetCode == SOCKET_ERROR) {
        MessageBox(_T("select error"),_T(""),MB_ICONERROR|MB_OK);
        closesocket( udpcmdSock );
        WSACleanup();
        return;
    }

    if (FD_ISSET(udpcmdSock, &ReadFds)==0)//OnReceive
    {
        MessageBox(_T("Time Out !"),_T(""),MB_ICONERROR|MB_OK);
        closesocket( udpcmdSock );
        WSACleanup();
        return;
    }//OnReceive
    
    nSize = sizeof ( SOCKADDR_IN );
    err = recvfrom ( udpcmdSock, (char*)szUdpResponse,100, 0,
        (SOCKADDR FAR *) &saRecv, &nSize );
    if (err  ==  SOCKET_ERROR)
    {
        MessageBox(_T("recvfrom error"),_T(""),MB_ICONERROR|MB_OK);              
        closesocket( udpcmdSock );
        WSACleanup();
        return;
    }
    MessageBox(_T("recvfrom OK"),_T(""),MB_OK);

    str2.Format(_T("L=%d,RBuf="),err);
    for(int i=0;i<err;i++)    str2.AppendFormat(_T("%02hX "),(BYTE)szUdpResponse);
    GetDlgItem(IDC_STATIC2)->SetWindowTextW(str2);

    if ( udpcmdSock!=INVALID_SOCKET ){
        closesocket(udpcmdSock);
    }
    WSACleanup();

Fred Lo
callen1515
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 97 個
工控威望: 219 點
下載積分: 770 分
在線時間: 23(小時)
注冊時間: 2011-08-07
最后登錄: 2013-11-02
查看callen1515的 主題 / 回貼
1樓  發(fā)表于: 2011-09-16 13:37
高人,這個我是學(xué)不會了

主站蜘蛛池模板: 91超碰在线观看 | 艳妇臀荡乳欲伦交换h在线观看 | 国产精品久久福利新婚之夜 | 99精品网| 国内精品久久久久久 | 欧美三级aaa | 中文字幕久久熟女人妻av免费 | 国产永久免费 | 9191精品国产免费不久久 | 国产成人无码a区在线观看视频 | 日本成人午夜视频 | 人人妻人人澡av天堂香蕉 | 国产成人精品一区二 | 国产精品96久久久久久 | 欧美99| 精品国产一区二区三区无码 | 国产区视频在线观看 | 欧洲乱码伦视频免费 | 国产三级做爰在线播放 | 好男人中文资源在线观看 | 亚洲欧美精品aaaaaa片 | 一本一道久久a久久精品逆3p | 日韩大片在线永久免费观看网站 | 日韩一区在线播放 | 日本免费大片免费视频 | 999久久久国产 | av国产免费| 国内精品伊人久久久久777 | 国产精品极品美女自在线观看免费 | 一级做a爰片久久毛片看看 天天天天躁天天爱天天碰2018 | 欧美午夜在线 | 老汉色影院 | 国产欧美一区二区三区免费视频 | 在线观看91精品国产入口 | 99久久久无码国产精品6 | 91精品国产综合久久久久 | 99久久99久久精品国产片 | 东北少妇不戴套对白第一次 | 五月婷婷丁香久久 | 伊伊人成亚洲综合人网7777 | 日韩欧美高清dvd碟片 | 亚洲精品乱码久久久久久中文字幕 | 亚洲成a∨人片在无码2023 | 老司机午夜免费精品视频 | 男女啪啪做爰高潮免费网站 | 日韩电影在线看 | 狠狠爱天天操 | 无码人妻一区二区三区免费 | 国产精品国产三级国产av中文 | 日韩在线免费观看视频 | 国产精品无码av天天爽播放器 | 国产午夜成人久久无码一区二区 | 久久97精品久久久久久久不卡 | 国产99久久 | 六月婷婷在线 | 成人两性高清图片视频 | 国产欧美日本亚洲精品五区 | 亚洲精品av无码重口另类 | 精品麻豆cm视频在线看 | 波多野结衣50连登视频 | 乱色精品无码一区二区国产盗 | 欧美日韩无线在码不卡一区二区三区 | 久久久久久人妻一区二区三区 | 久无码久无码av无码 | 色88久久久久高潮综合影院 | 性精品 | 老年人黄色一级片 | 亚洲国产成人一区二区三区 | 日韩视频在线一区 | 日本一区二区精品视频 | 中国老太婆bb无套内射 | 夜夜骚 | 91视频在线 | 国产99久久亚洲综合精品 | 亚洲国产av一区二区三区四区 | 国产v亚洲v天堂无码 | 亚洲一区免费视频 | 国产精品对白交换视频 | 无码精品人妻一区二区三区湄公河 | 亚洲欧美色一区二区三区 | 永久免费观看国产裸体美女 | 午夜影院在线播放 | 国产亚洲精品aaaa片小说 | 手机国产乱子伦精品视频 | 久久久www成人免费无遮挡大片 | 精品人妻无码区在线视频 | 久久久久无码国产精品一区 | 成人情趣视频 | 无码人妻精品一区二区三 | 亚洲精品一区二区三区不卡 | 国产国产人免费人成免费视频 | 久久99久久久久 | 欧美日韩精品一区二区三区在线观看 | 欧美日韩另类在线观看视频 | 日韩欧美精品在线 | 国产av一区二区三区天堂综合网 | 国产色产综合色产在线观看视频 | 日韩在线国产 | 久久久久波多野结衣高潮 |