Author WeiKai Version 1.0.0 Date 2013/4/14 Page 1/11 我如何在 XPAC 上建立一個 COM port 通訊程式 Applies to: Platform OS version XPAC utility version XPAC series All versions (WinCE6) All versions XPAC SDK 提供 XPAC 結合 Visual C# Visual Basic.net 和 C++ 的完整解決方案 這個範例示範如何使用 MFC C# 和 VB.Net 控制 COM port 以和其他裝置通訊, 請照下列步驟建立程式 使用 MFC 控制 COM port 通訊 Step 1: 從 Toolbox 拖曳按鈕控制元件到表單上
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 2/11 Step 2: 在按鈕控制元件上按下滑鼠右鍵, 並選擇 Properties Step 3: 在 Properties 視窗上的 Caption 屬性輸入 Send data 並按下 ENTER 鍵
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 3/11 Step 4: 在主要檔案加入 #include "XPacSDK_CE.h" Step 5: 連擊在表單上的 Send data 按鈕控制元件 Step 6: 加入下列程式碼 在 Send data 按鈕點擊事件加入下列程式碼 使用 uart_open 開啟 COM port, 函式中的參數其字串格式為 COMx:,baudrate, parity bits,data bits,stop bits, 舉例來說假如你要開啟 COM1, 設定 baudrate 為 115200,parity bit 是 None, data bit 是 8,stop bit 是 1, 因此這個參數是 COM1:,115200,N,8,1 uart_open 型態 HANDLE uart_open(lpcstr ConnectionString);
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 4/11 使用 uart_sendcmd 傳送資料, 函式中的第一個參數是開啟 COM 所得之 HANDLE, 第二個數是命令字串, 第三個參數是接收資料的緩衝暫存 uart_ SendCmd 型態 HANDLE uart_ SendCmd (HANDLE hport, LPCSTR cmd, LPSTR szresult); 使用 uart_close 關閉 COM port, 這個函式參數是 COM port HANDLE uart_close 型態 HANDLE uart_close(handle hport); Step 7: 建立和執行 依序按下 Build Build Solution 以建立執行檔, 在專案資料夾內可以獲得該執行檔, 將這個執行檔放置在你的 XPAC 上並執行它 1 2 假如你的 COM3 連接到 I-7044D, 且該模組的 baudrate 是 115200, 程式的結果如下圖下示
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 5/11 附註 & 警告 參考下列 FAQ 文件上傳執行檔至 XPAC X5-02_How_to_debug_XPAC_programs_in_Visual_Studio_2005(2008)_online_through_the_TCPIP_engli sh X5-27_How to write a MFC application with XPAC SDK in visual studio 2005 X5-30_How to write a MFC application with XPAC SDK in visual studio 2008
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 6/11 使用 C# 控制 COM Port 通訊 Step 1: 從 Toolbox 拖曳按鈕控制元件到表單上, 按鈕的 text 屬性設定為 Send data Step 2: XPacNet.dll 可以從 C# 範例程式 CD 或下列清單獲得, 最新版本可以從 ICPDAS 網站下載 1. CD:\SDK\XPacNET 2. ftp://ftp.icpdas.com/pub/cd/xp-8000-ce6/sdk/xpacnet/ 3. ftp://ftp.icpdas.com/pub/cd/xpac-atom-ce6/sdk/xpacnet/ 附註 & 警告 參考下列 FAQ 文件將 XPacNet.dll 加入至專案 X5-28_How to write a C#.net application with XPAC SDK in visual studio 2005 X5-31_How to write a C#.net application with XPAC SDK in visual studio 2008 Step 3: 連擊在表單上的按鈕控制元件
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 7/11 Step 4: 插入下列程式碼在 Send data 按鈕點擊事件加入下列程式碼 使用 uart_open 開啟 COM port, 函式中的參數其字串格式為 COMx:,baudrate, parity bits,data bits,stop bits, 舉例來說假如你要開啟 COM1, 設定 baudrate 為 115200,parity bit 是 None, data bit 是 8,stop bit 是 1, 因此這個參數是 COM1:,115200,N,8,1 uart_open 型態 IntPtr uart_open(string ConnectionString); 使用 uart_sendcmd 傳送資料, 函式中的第一個參數是開啟 COM 所得之 HANDLE, 第二個數是命令字串, 第三個參數是接收資料的緩衝暫存 uart_ SendCmd 型態 Bool uart_ SendCmd (IntPtr hport, byte[] cmd, byte[] szresult); 使用 uart_close 關閉 COM port, 這個函式參數是 COM port IntPtr uart_close 型態 Bool uart_close(intptr hport);
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 8/11 Step 5: 建立和執行 依序按下 Build Build Solution 以建立執行檔, 在專案資料夾內可以獲得該執行檔, 將這個執行檔放置在你的 XPAC 上並執行它 1 2 假如你的 COM3 連接到 I-7012, 且該模組的 baudrate 是 115200, 程式的結果如下圖下示 附註 & 警告 參考下列 FAQ 文件上傳執行檔至 XPAC X5-02_How_to_debug_XPAC_programs_in_Visual_Studio_2005(2008)_online_through_the_TCPIP_engli sh X5-28_How to write a C#.net application with XPAC SDK in visual studio 2005 X5-31_How to write a C#.net application with XPAC SDK in visual studio 2008
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 9/11 Using VB.Net to control COM port communicate Step 1: 從 Toolbox 拖曳按鈕控制元件到表單上, 按鈕的 text 屬性設定為 Send data Step 2: XPacNet.dll 可以從 C# 範例程式 CD 或下列清單獲得, 最新版本可以從 ICPDAS 網站下載 1. CD:\SDK\XPacNET 2. ftp://ftp.icpdas.com/pub/cd/xp-8000-ce6/sdk/xpacnet/ 3. ftp://ftp.icpdas.com/pub/cd/xpac-atom-ce6/sdk/xpacnet/ 附註 & 警告 參考下列 FAQ 文件將 XPacNet.dll 加入至專案 X5-29_ How to write a VB.net application with XPAC SDK in visual studio 2005 X5-32_How to write a VB.net application with XPAC SDK in visual studio 2008 Step 3: 連擊在表單上的按鈕控制元件
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 10/11 Step 4: 插入下列程式碼在 Send data 按鈕點擊事件加入下列程式碼 使用 uart_open 開啟 COM port, 函式中的參數其字串格式為 COMx:,baudrate, parity bits,data bits,stop bits, 舉例來說假如你要開啟 COM1, 設定 baudrate 為 115200,parity bit 是 None, data bit 是 8,stop bit 是 1, 因此這個參數是 COM1:,115200,N,8,1 uart_open 型態 IntPtr uart_open(string ConnectionString); 使用 uart_sendcmd 傳送資料, 函式中的第一個參數是開啟 COM 所得之 HANDLE, 第二個數是命令字串, 第三個參數是接收資料的緩衝暫存 uart_ SendCmd 型態 HANDLE uart_ SendCmd (IntPtr hport, byte[] cmd, byte[] szresult); 使用 uart_close 關閉 COM port, 這個函式參數是 COM port IntPtr uart_close 型態 HANDLE uart_close(intptr hport);
Author WeiKai Version 1.0.0 Date 2013/4/14 Page 11/11 Step 5: 建立和執行 依序按下 Build Build Solution 以建立執行檔, 在專案資料夾內可以獲得該執行檔, 將這個執行檔放置在你的 XPAC 上並執行它 2 假如你的 COM3 連接到 I-7044D, 且該模組的 baudrate 是 115200, 程式的結果如下圖下示 附註 & 警告 參考下列 FAQ 文件上傳執行檔至 XPAC X5-02_How_to_debug_XPAC_programs_in_Visual_Studio_2005(2008)_online_through_the_TCPIP_engli sh X5-29_ How to write a VB.net application with XPAC SDK in visual studio 2005 X5-32_How to write a VB.net application with XPAC SDK in visual studio 2008