4.6tcp客戶端應用開發示例_第1頁
4.6tcp客戶端應用開發示例_第2頁
4.6tcp客戶端應用開發示例_第3頁
4.6tcp客戶端應用開發示例_第4頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、MiniARMDate:產 TCP、摘 MiniARMDate:產 TCP、摘 MiniARM修訂歷iMiniARM修訂歷iMiniARM目錄示示例目示例步MiniARM目錄示示例目示例步建立和配置工繪添加代產品用戶手2008GuangzhouZHIYUANElectronics.1MiniARM示示例目TCPMINIARM M3350Windows Embedded Compact 7開發包,其名稱為包VisualStudio MINIARM M3350 TCPMINIARMMiniARM示示例目TCPMINIARM M3350Windows Embedded Compact 7開發包,其名

2、稱為包VisualStudio MINIARM M3350 TCPMINIARMM3350工控機主板上的以太TCP TCP 客戶端的通訊。MINIARM M3350 包的使用見示例步建立和配置(1) 新建工程。在 VS2008 里面新建一個 MFC ntSDK 為“M3350_SDK”,工程文(中國)Windows (2) 添加繪框1.1 TCP更改相關控件ID1MiniARM(3) 框一些控件添加成員變量,如表 1.2所示1.2 添加代頭文件的配在 在ntDlg.h文件開始,宏定義用戶接收數據緩沖區大小2#defineRX_BUF_SIZEMiniARM(3) 框一些控件添加成員變量,如表

3、1.2所示1.2 添加代頭文件的配在 在ntDlg.h文件開始,宏定義用戶接收數據緩沖區大小2#defineRX_BUF_SIZE下拉列表框(Edit本地IP編輯框(Edit編輯框(EditIP編輯框(Edit端編輯框(Edit編輯框(Edit按鈕連服務按鈕按鈕按鈕按鈕MiniARM1460。也就是小于宏“ DATA_LEN_MAX”然后在“CUdpDlg”類中添加如下公有屬性,如程1.1 MiniARM1460。也就是小于宏“ DATA_LEN_MAX”然后在“CUdpDlg”類中添加如下公有屬性,如程1.1 1.11.11.1定義一個TCP/IP服務的句柄編寫用戶接收數據回調函數,如程程T

4、CP3void mytcpipReceivedataunsigned longunsigned shortunsignedCTcp_c ntDlg *cupdlgTmp = (CTcp_c ntDlg *)pvOutput;iTmp= iTmp= if(usDatalength= TCP_CONNECTEDif(usDatalength= TCP_TERMINATE)_T(RemoteconnectionwasunsignedunsignedMiniARM程1.2前1.21.2IP地址和如果接收到數據的長度為宏“ TCP_CONNECTED”1.2 1.2如果接收到數據的長度為宏“ ERR_R

5、X_THREAD”,表示MiniARM程1.2前1.21.2IP地址和如果接收到數據的長度為宏“ TCP_CONNECTED”1.2 1.2如果接收到數據的長度為宏“ ERR_RX_THREAD”,表示程1.21.21.21.2在1.2(10)4if(usDatalength= ERR_RX_THREAD)_T(Remoteconnectionwasif (cupdlgTmp-usIndex + usDatalength) RX_BUF_SIZE) _T(ReceiveBufis&cupdlgTmp-pusRxbufcupdlgTmp-cupdlgTmp-pusRxbufcupdlgTmp-u

6、sIndex+usDatalength = cupdlgTmp-m_rx.SetWindowText(cupdlgTmp- MiniARM5BOOL CTcp_c /SetMiniARM5BOOL CTcp_c /Settheiconforthisdialog. Theframeworkdoesthis/ whentheapplicationsmainwindowisnotadialog SetIcon(m_hIcon,/SetbigSetIcon(m_hIcon, /Setsmallunsignedlong ctcpipLocal=if(ctcpipLocal=NULL)return 0;C

7、string for (i=0; i 8) & 0 xff, (ulLocalipi16)&(ulLocalipi24)&this-this-this-usIndex=this-m_localport = this-MiniARM1.31.3本地IP地址列表緩沖區調用包的服務初始化函數,初始化本地TCP/IP服務傳遞用戶接收數據緩沖區大小和回調含函數指針到此得到本地IP地址1.3如果構造函數返回本地MiniARM1.31.3本地IP地址列表緩沖區調用包的服務初始化函數,初始化本地TCP/IP服務傳遞用戶接收數據緩沖區大小和回調含函數指針到此得到本地IP地址1.3如果構造函數返回本地IP地址列表

8、為NULL構造函數執行失敗1.31.332位的IP地址轉換為點分式的IP添加得到的IP地址列表框的“本地IP地址”的下拉列表;1.31.31.31.3端IP地址為 192.168.0.230TCP6void CTcp_c unsignedusTmplen=unsigned longulTmplocalip =0; unsigned longulTmpremoteip=0; bTmpret = false;usTmplen = this-m_localip.GetWindowText(pusTmpip, 16);pcTmpipusTmplen=ulTmplocalip=usTmplen = th

9、is-m_remoteip.GetWindowText(pusTmpip, returnTRUE; /returnTRUE unlessyousetthefocustoaMiniARM1.41.41.41.41.41.41.4把寬字符串轉換為字符串類型的數組將點分式的IP32MiniARM1.41.41.41.41.41.41.4把寬字符串轉換為字符串類型的數組將點分式的IP32位的IP框得IP地址從將點分式的IP32位的IP包的服務啟動的函數epcProtocolStartup (),以1.41.41.41.4框“框框IP地址”編輯框7pcTmpipusTmplen=ulTmpremotei

10、p=bTmpret= (unsignedshort)this-m_localport, (unsignedshort)this- if(bTmpret)this-this-CEdit*ceditTmp= (CEditthis-ceditTmp= (CEditMiniARM1.41.4框“本地IP地址”下拉框框端口”框“停止”按鈕單擊事件,如程1.5 TCP1.51.51.51.51.51.5MiniARM1.41.4框“本地IP地址”下拉框框端口”框“停止”按鈕單擊事件,如程1.5 TCP1.51.51.51.51.51.5退出TCP/IP服務框框IP地址”編輯框端口”框“本地IP地址”下拉框

11、框“本地端口”程1.6 接收窗口“清空”按鈕單擊事件代1.61.68void this-usIndex=this-void CTcp_c this-this-CEdit*ceditTmp=(CEditceditTmp-this-ceditTmp=(CEditceditTmp-this-MiniARM1.7 1.71.8 9void CTcp_c unsignedMiniARM1.7 1.71.8 9void CTcp_c unsignedusTmplen= pcTmpip16; unsigned longusTmplen = this-m_remoteip.GetWindowText(pusT

12、mpip, 16);pcTmpipusTmplen=ulTmpRemoteip=unsignedshortusTmplen = this-m_tx.GetWindowText(pusTmpsendbuf, RX_BUF_SIZE);voidthis-MiniARM1.81.81.81.81.81.81.81.8從IP轉換點分式的IP32位的IP地址格式;框里面“數據發送”得到用戶要發送的數據MiniARM1.81.81.81.81.81.81.81.8從IP轉換點分式的IP32位的IP地址格式;框里面“數據發送”得到用戶要發送的數據包的數據發送函數epcProtocolSenddata()送到指定IP地址的指定端口上(9) 至此,TCP客戶機的示(10)啟動MINIARMM3350WindowsEmbeddedCompact7USB接MINIARMM3350PCUSB建立MINIARMM3350WindowsCompact7PCWindowsActiveSync(11) VS2008 中,解決方案配置選擇 Release,然后選擇菜單“生成”nt.exeMINIARMM3350Program(12) 在 MINIARM M3350 的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論