九九热九九I在线观看i国产女优视频i中文字幕人成高清i欧美亚洲日本一区二I久久久久acI伊人在线视频网站I久久久久IVI中文字幕永久有效I9爱在线观看一区I久久鲁一鲁I国产精品98I天天综合网7799I大香蕉资源站I真人高清无码

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


       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
luoyingdong
級別: 略有小成
精華主題: 0
發帖數量: 157 個
工控威望: 306 點
下載積分: 1391 分
在線時間: 103(小時)
注冊時間: 2011-06-27
最后登錄: 2025-05-07
查看luoyingdong的 主題 / 回貼
1樓  發表于: 2011-06-29 14:26
不知是否有上傳成功
Fred Lo
ak_42bl520
努力創造未來
級別: 略有小成
精華主題: 0
發帖數量: 106 個
工控威望: 215 點
下載積分: 815 分
在線時間: 99(小時)
注冊時間: 2008-10-29
最后登錄: 2012-11-02
查看ak_42bl520的 主題 / 回貼
2樓  發表于: 2011-06-29 15:15
樓主可以把文件 發我一份嗎
郵箱:power_2005shi@126.com
luoyingdong
級別: 略有小成
精華主題: 0
發帖數量: 157 個
工控威望: 306 點
下載積分: 1391 分
在線時間: 103(小時)
注冊時間: 2011-06-27
最后登錄: 2025-05-07
查看luoyingdong的 主題 / 回貼
3樓  發表于: 2011-06-29 15:29
發郵件給2樓了,請注意接收
Fred Lo
rosephy
級別: 略有小成
精華主題: 0
發帖數量: 114 個
工控威望: 281 點
下載積分: 618 分
在線時間: 81(小時)
注冊時間: 2008-08-29
最后登錄: 2025-12-07
查看rosephy的 主題 / 回貼
4樓  發表于: 2011-06-29 15:35
樓主高人,可否拜你為師哦,如果可以的話請加我QQ:1302714379
iteerh
級別: 家園?

精華主題: 0
發帖數量: 552 個
工控威望: 803 點
下載積分: 17334 分
在線時間: 2377(小時)
注冊時間: 2006-10-25
最后登錄: 2026-03-19
查看iteerh的 主題 / 回貼
5樓  發表于: 2011-06-29 21:44
我也想要,.
iteerh@yahoo.tw
iteerh
級別: 家園常客

精華主題: 0
發帖數量: 552 個
工控威望: 803 點
下載積分: 17334 分
在線時間: 2377(小時)
注冊時間: 2006-10-25
最后登錄: 2026-03-19
查看iteerh的 主題 / 回貼
6樓  發表于: 2011-06-29 21:46
我也想要,謝謝,剛信箱不完整

iteerh@yahoo.com.tw
luoyingdong
級別: 略有小成
精華主題: 0
發帖數量: 157 個
工控威望: 306 點
下載積分: 1391 分
在線時間: 103(小時)
注冊時間: 2011-06-27
最后登錄: 2025-05-07
查看luoyingdong的 主題 / 回貼
7樓  發表于: 2011-06-30 07:47
已發出郵件給6樓,請查收
Fred Lo
iteerh
級別: 家園常客

精華主題: 0
發帖數量: 552 個
工控威望: 803 點
下載積分: 17334 分
在線時間: 2377(小時)
注冊時間: 2006-10-25
最后登錄: 2026-03-19
查看iteerh的 主題 / 回貼
8樓  發表于: 2011-07-07 20:51
已收到,謝謝你
callen1515
級別: 略有小成
精華主題: 0
發帖數量: 97 個
工控威望: 219 點
下載積分: 958 分
在線時間: 23(小時)
注冊時間: 2011-08-07
最后登錄: 2013-11-02
查看callen1515的 主題 / 回貼
9樓  發表于: 2011-09-16 13:37
高人,這個我是學不會了
zennin
級別: 探索解密
精華主題: 0
發帖數量: 56 個
工控威望: 183 點
下載積分: 950 分
在線時間: 78(小時)
注冊時間: 2011-08-07
最后登錄: 2025-12-29
查看zennin的 主題 / 回貼
10樓  發表于: 2011-10-04 20:37
我也要啊   397969850@qq.com
luoyingdong
級別: 略有小成
精華主題: 0
發帖數量: 157 個
工控威望: 306 點
下載積分: 1391 分
在線時間: 103(小時)
注冊時間: 2011-06-27
最后登錄: 2025-05-07
查看luoyingdong的 主題 / 回貼
11樓  發表于: 2011-10-05 12:25
郵件已發出,請查收
Fred Lo

主站蜘蛛池模板: 亚洲精品久久久打桩机小说 | 亚洲天砖砖区免费 | 伊人激情av一区二区三区 | 99精品久久久久久久久久综合 | xxxx69国产 | 天天影视综合 | 欧美人人爽| 日本xxxx色视频在线观看免费 | 免费黄色av网址 | 天堂а√在线地址中文在线 | 亚洲国产女人 | 四虎亚洲精品无码 | 久中文字幕 | 国产av午夜精品一区二区入口 | 色妞综合网| 久久人妻少妇嫩草av | 天堂8在线天堂资源在线 | 国产精品高潮露脸在线观看 | 午夜爽爽爽男女免费观看影院 | 男人一边吃奶一边做爰免费视频 | 色人阁色五月 | 西西人体www大胆高清视频 | 久久精品国产只有精品96 | 色综合a| 色综合久久久无码网中文 | 精品国产乱码一区二区三区四区 | 宅男噜噜99国产精品麻豆精品 | 亚洲精品国产成人一区二区 | av最新版天堂资源在线 | 成年日韩片av在线网站 | 国产福利av | 国产精品成人在线视频 | 成人性生交大片100部 | 一区二区三区国产精品 | 可以免费观看的av | 欧洲女人性开放免费网站 | 亚洲欧美日韩国产综合在线 | 亚洲va久久久噜噜噜久久男同 | 伊人国产精品 | 国产无遮挡裸体免费久久 | 免费永久看黄神器无码软件 | 中文字幕免费高清视频 | 亚洲理论 | 亚洲成年人 | 亚洲热av| 奇米影视奇奇米色狠狠色777 | 动漫无遮挡羞视频在线观看 | 精品免费二区三区三区高中清不卡 | 91精品国产欧美一区二区成人 | 5566中文字幕 | 日本无遮挡吸乳视频 | 欧美成 人 在线播放视频 | 无码国模产在线观看免费 | 久久久久久久久综合 | 加勒比黑人和翔田千里在线 | 五月久久久综合一区二区小说 | 亚洲国产精品大学美女久久久爽 | 日本人妖系列xxx | 视频1区2区3区 | 蜜乳av中文 | 成人免费三p在线观看 | 99re色| 亚洲精品国产综合麻豆久久99 | 99久久国产综合精品成人影院 | 99久热国产精品视频尤物 | 国产成人av综合亚洲色欲 | 国产精品久久久久久吹潮 | 少妇第一次交换又紧又爽 | 伊人干网综合亚洲 | 丰满少妇xbxb毛片日本 | 777亚洲熟妇自拍无码区 | 91亚洲专区 | 午夜黄色在线 | 制服.丝袜.亚洲.另类.中文 | 欧美亚洲偷图色综合 | 亚洲成av人影片在线观看 | 国产成人精品a∨一区二区 午夜精品成人一区二区 | 国产网红主播精品一区 | 艳妇臀荡乳欲伦岳在线观看 | 亚洲精品乱码久久久久 | 无码一区二区三区在线观看 | 五月天婷婷久久 | 国产精品午夜无码体验区 | 特级毛片在线播放 | 丰满的岳久久乱 | 人人干人人上 | 在线观看亚洲大片短视频 | 日韩伦乱| 久久亚洲精品国产亚洲老地址 | 亚洲性夜夜摸人人天天 | 日日噜噜夜夜狠狠久久av小说 | 国产系列丝袜熟女精品网站 | 羞羞色院91蜜桃 | 国产成人无码一二三区视频 | 亚洲人成电影网站在线播放 | t66y地址1地址2地址3社区 | 无码丰满人妻熟妇区 | 中文字幕色av一区二区三区 | jizz视频在线观看 |