基于雙模式USB接口的便攜式比色計設(shè)計
2.單片機通過CH375芯片發(fā)送數(shù)據(jù)的處理步驟:
?。?)單片機執(zhí)行 WR_USB_DATA命令向 CH375寫入要發(fā)送的數(shù)據(jù);
?。?)CH375被動地等待 USB主機在需要時取走數(shù)據(jù);
(3)當(dāng) USB主機取走數(shù)據(jù)后,CH375首先鎖定當(dāng)前 USB緩沖區(qū),防止重復(fù)發(fā)送數(shù)據(jù),然后將中斷引腳置低,向單片機請求中斷; (4)單片機進入中斷服務(wù)程序,獲取中斷狀態(tài),然后將中斷引腳恢復(fù)高電平,取消中斷;
?。?)判斷中斷狀態(tài),為“上傳成功”,單片機執(zhí)行 WR_USB_DATA命令向 CH375寫入另一組要發(fā)送的數(shù)據(jù),若沒有不執(zhí)行。
?。?)單片機執(zhí)行 UNLOCK_USB命令,完成后釋放緩沖區(qū),繼續(xù) USB通訊;
(7)退出中斷服務(wù)程序。 單片機主要在中斷中完成數(shù)據(jù)收發(fā)與處理,中斷服務(wù)程序流程圖如圖 4所示。
3.2.2 計算機端的軟件接口 CH375在計算機端提供了應(yīng)用層接口,該接口是 CH375動態(tài)鏈接庫 DLL面向功能應(yīng)用的API,包括:設(shè)備管理API、數(shù)據(jù)傳輸API、中斷處理 API。 設(shè)計中采用 VC++6.0作為 PC端應(yīng)用軟件的開發(fā)平臺。首先在計算機上安裝 CH375器件的驅(qū)動程序,然后將動態(tài)鏈接庫 DLL拷貝到計算機中,最后將 DLL的訪問入口添加到 VC項目中,這樣就可以實現(xiàn)對 USB設(shè)備的應(yīng)用程序編程。
4.結(jié)束語
本文將雙模式 USB數(shù)據(jù)傳輸方式應(yīng)用于便攜式比色計儀器中,充分體現(xiàn)了便攜、靈活和可靠的優(yōu)點。該設(shè)備既可以直接與 PC機進行數(shù)據(jù)通訊,工作于有計算機的實驗室測試環(huán)境,也可以通過 U盤作為數(shù)據(jù)傳輸中介,使設(shè)備工作于在線檢測。本方案有效解決了傳統(tǒng)比色計儀器的局限,可以滿足不同測試環(huán)境的要求,并且數(shù)據(jù)存儲方便快速,具有廣闊的應(yīng)用前景。
評論