硬解碼獲取原始圖像以及內容_第1頁
硬解碼獲取原始圖像以及內容_第2頁
硬解碼獲取原始圖像以及內容_第3頁
硬解碼獲取原始圖像以及內容_第4頁
硬解碼獲取原始圖像以及內容_第5頁
已閱讀5頁,還剩27頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第20章硬解碼-獲取原始圖像以及內容目錄4.關鍵代碼解析2.實驗原理1.實驗描述3.實驗實現【實驗目的】了解新大陸二維碼芯片;了解硬解碼獲取原始圖像以及內容的操作;掌握硬解碼獲取原始圖像以及內容的代碼實現。【實驗內容】一、通過串口線連接PC端的COM口與二維碼實驗箱COM口;二、在二維碼實驗箱的顯示屏上選擇硬解碼模塊;三、在PC端打開配套資料的“\03.軟件與工具\02.可執行程序\Demo8_硬解碼-獲取原始圖像以及內容”中的可執行程序,出現如圖20-1所示的實驗初始界面;圖20-1四、串口選擇COM1(注意選擇實際使用的串口),點擊“連接”,連接成功后,點擊“開始掃描”,硬解碼識別頭打開,將二維碼放置識別頭前,聽到“嘀”的一聲,掃描成功(注:此聲音設置是在demo7中勾選的聲音選項,另硬解碼掃碼速度非常快);五、點擊“獲取詞碼”,將得到本次掃描的二維碼數據,顯示在界面上,如圖20-2所示;圖20-2八、點擊“獲取圖片”,則得到此二維碼的圖片,如圖20-3所示;圖20-3目錄4.關鍵代碼解析2.實驗原理1.實驗描述3.實驗實現二、HardwareDecodeLib類庫下iotc370lib類(硬解碼類)簡介以下介紹本實驗中所使用到iotc370lib類的主要方法。(1)publicexternstaticIntPtrIotcOpen(IntPtrlpPathName,intnType,IntPtrlpParam);功能:打開一個Iotc370設備,注意:請使用臺式電腦COM1連接設備參數:lpPathName:USB設備路徑名(COM指針,格式:\\\\.\\COM1\0標識設備連接COM1),nType:類型(設置成13),lpParam:連接參數(DCB結構指針)返回:設備句柄(2)publicexternstaticintIotcClose(IntPtrh);功能:關閉一個Iotc370設備參數:h:設備句柄返回:0成功,非0失敗(3)publicexternstaticintIotcWriteRegister(IntPtrh,intnAddress,byte[]lpBuffer,intnLength);功能:寫Iotc370寄存器參數:h:設備句柄,nAddress:要寫入的寄存器的起始地址,lpBuffer:用于保存需要寫入的寄存器值,nLength:表示需要寫從寄存器地址nAddress開始連續多少個寄存器返回:0表示成功,-1失敗(4)publicexternstaticintIotcGetDecodeData(IntPtrh,byte[]lpBuffer,refiotc370lib.IoStatuslpStatus);功能:獲取解碼詞參數:h:設備句柄,lpStatus:最后一次解碼的結果返回:0成功,非0失敗(5)publicexternstaticintIotcGetImageInfo(IntPtrh,refiotc370lib.ImageInfolpImageInfo);功能:獲取圖片信息參數:h:設備句柄,lpImageInfo:輸出參數,保存圖像信息返回:0表示成功,-1失敗(6)publicexternstaticintIotcUploadImage(IntPtrh,byte[]lpBuffer,intnLength,intnTimeout,refiotc370lib.IoStatuslpStatus);功能:上傳圖像參數:h:設備句柄,lpBuffer:輸出參數,用于保存上傳的圖像數據,RAW格式,nLength:輸入參數,表示圖像數據長度,必須等于IotcGetImageInfo接口獲取的IMG_INFO結構中,width*height*depth的值,nTimeout:輸入參數,最大讀操作等待超時,單位ms,通常情況下,接口為USBDatapipe和USB轉并口時設置成3000ms,接口USBHIDPOS時設置成20000ms,nTimeout,lpStatus:輸入/輸出參數,異步模式下保存下載狀態返回:0表示成功,-1失敗參數:h:設備句柄,lpStatus:最后一次解碼的結果返回:0成功,非0失敗功能:關閉一個Iotc370設備第三步:測試系統,檢測系統功能是否正常。(3)把本書配套資料提供的二維碼驅動類庫文件“HardwareDecodeLib.三、在PC端打開配套資料的“\03.(4)右鍵MainWindow設計窗體點擊“查看代碼”,切換至MainWindow的代碼編輯窗口;\\COM1\0標識設備連接COM1),nType:類型(設置成13),lpParam:連接參數(DCB結構指針)(3)把本書配套資料提供的二維碼驅動類庫文件“HardwareDecodeLib.返回:0表示成功,-1失敗參數:h:設備句柄,nAddress:要寫入的寄存器的起始地址,lpBuffer:用于保存需要寫入的寄存器值,nLength:表示需要寫從寄存器地址nAddress開始連續多少個寄存器(3)把本書配套資料提供的二維碼驅動類庫文件“HardwareDecodeLib.八、點擊“獲取圖片”,則得到此二維碼的圖片,如圖20-3所示;目錄4.關鍵代碼解析2.實驗原理1.實驗描述3.實驗實現實驗步驟:第一步:硬件連接把連接二維碼實驗箱的串口連接線直接連接至PC端的串口,在二維碼實驗箱觸摸彩屏選擇“硬解碼”模塊。(2)publicexternstaticintIotcClose(IntPtrh);返回:0成功,非0失敗IoStatuslpStatus);參數:h:設備句柄,nAddress:要寫入的寄存器的起始地址,lpBuffer:用于保存需要寫入的寄存器值,nLength:表示需要寫從寄存器地址nAddress開始連續多少個寄存器功能:關閉一個Iotc370設備類庫\PC端”底下)拷貝到“Demo8_硬解碼-獲取原始圖像以及內容”項目目錄下。功能:打開一個Iotc370設備,注意:請使用臺式電腦COM1連接設備Drawing;”來導入Bitmap的命名空間,需用語句“System.三、在PC端打開配套資料的“\03.返回:0表示成功,-1失敗返回:0表示成功,-1失敗一、通過串口線連接PC端的COM口與二維碼實驗箱COM口;(3)publicexternstaticintIotcWriteRegister(IntPtrh,intnAddress,byte[]lpBuffer,intnLength);返回:0表示成功,-1失敗三、在PC端打開配套資料的“\03.類庫\PC端”底下)拷貝到“Demo8_硬解碼-獲取原始圖像以及內容”項目目錄下。圖20-1第二步:創建“Demo8_硬解碼-獲取原始圖像以及內容”WPF應用程序。(1)打開VisualStudio2012,新建“Demo8_硬解碼-獲取原始圖像以及內容”項目。(2)按圖20-1布局往窗體MainWindow上增加控件,并按表20-1所示設置各控件屬性。表20-1(3)把本書配套資料提供的二維碼驅動類庫文件“HardwareDecodeLib.dll、BitMapLib.dll”(“\03.軟件與工具\05.類庫\PC端”底下)拷貝到“Demo8_硬解碼-獲取原始圖像以及內容”項目目錄下。在解決方案資源管理器中添加動態庫。(4)右鍵MainWindow設計窗體點擊“查看代碼”,切換至MainWindow的代碼編輯窗口;參照參考代碼(“\03.軟件與工具\03.源碼\PC端”)編寫相應代碼,實現程序功能。修改代碼錯誤,直至沒有錯誤提示產生,保存項目所有文件。注意:在代碼窗口中,需用語句“usingHardwareDecodeLib;”來導入iotc370lib類的命名空間,需用語句“usingBitMapLib;”來導入Util、ByteToBitMap類的命名空間,需用語句“usingSystem.Drawing;”來導入Bitmap的命名空間,需用語句“System.Runtime.InteropServices;”來導入Marshal的命名空間。需要手動拷貝iotc370lib.dll到程序Debug目錄下。第三步:測試系統,檢測系統功能是否正常。目錄4.關鍵代碼解析2.實驗原理1.實驗描述3.實驗實現(1)獲取識別碼,本段代碼實現獲取識別碼,獲取解碼信息必須把設備句柄傳入,把返回的解碼信息通過數組的轉換顯示。如下圖:(4)右鍵MainWindow設計窗體點擊“查看代碼”,切換至MainWindow的代碼編輯窗口;掌握硬解碼獲取原始圖像以及內容的代碼實現。參數:h:設備句柄,nAddress:要寫入的寄存器的起始地址,lpBuffer:用于保存需要寫入的寄存器值,nLength:表示需要寫從寄存器地址nAddress開始連續多少個寄存器第三步:測試系統,檢測系統功能是否正常。ImageInfolpImageInfo);了解硬解碼獲取原始圖像以及內容的操作;參數:h:設備句柄,lpBuffer:輸出參數,用于保存上傳的圖像數據,RAW格式,nLength:輸入參數,表示圖像數據長度,必須等于IotcGetImageInfo接口獲取的IMG_INFO結構中,width*height*depth的值,nTimeout:輸入參數,最大讀操作等待超時,單位ms,通常情況下,接口為USBDatapipe和USB轉并口時設置成3000ms,接口USBHIDPOS時設置成20000ms,nTimeout,lpStatus:輸入/輸出參數,異步模式下保存下載狀態了解硬解碼獲取原始圖像以及內容的操作;類庫\PC端”底下)拷貝到“Demo8_硬解碼-獲取原始圖像以及內容”項目目錄下。(2)publicexternstaticintIotcClose(IntPtrh);類庫\PC端”底下)拷貝到“Demo8_硬解碼-獲取原始圖像以及內容”項目目錄下。(3)把本書配套資料提供的二維碼驅動類庫文件“HardwareDeco

溫馨提示

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

評論

0/150

提交評論