基于CH372芯片的USB通信系統方案設計
3 軟件設計本文引用地址:http://dyxdggzs.com/article/172066.htm
CH372在計算機應用層與本地端單片機之間提供了端對端的連接,在這個(gè)基礎上,USB接口可以選用單向數據流和請求加應答兩種通訊方式。采用請求加應答的方式實(shí)現通信,都是由計算機主動(dòng)請求,單片機被動(dòng)應答完成數據傳輸。在程序編制過(guò)程中約定3種數據傳輸模式,通過(guò)計算機傳輸數據進(jìn)行確定,分別是:
1)計算機下傳數據01H,單片機上傳存放數據的文件的參數;
2)計算機下傳數據02H及8字節參數,8字節參數包括存放數據的地址、數據的數量,單片機通過(guò)調用相關(guān)子程序分析參數,并將相應的數據上傳;
3)計算機下傳數據03H,單片機執行關(guān)閉CH372的操作命令。
3.1 單片機端程序
在單片機端采用匯編語(yǔ)言編寫(xiě)程序,在程序設計過(guò)程中,考慮到系統的可靠性、穩定性以及調試過(guò)程直觀(guān)性的需要,故采用匯編語(yǔ)言編寫(xiě)程序,程序流程如圖2所示。

3.2 計算機端程序
CH372在計算機端提供了應用層接口,應用層接口是由CH372動(dòng)態(tài)鏈接庫DLL提供的面向功能應用的API,所有API在調用后都有操作狀態(tài)返回,但不一定有應答數據。CH372動(dòng)態(tài)鏈接庫提供的API包括:設備管理API、數據傳輸API、中斷處理API。
在計算機端采用Visual Basic(VB)編寫(xiě)程序,利用VisualBasic的該特性,調用CH372動(dòng)態(tài)鏈接庫DLL提供的面向功能的應用API函數編寫(xiě)計算機端的應用程序,其工作流程如圖3所示。

評論