關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于雙模式USB接口的便攜式比色計設計

        基于雙模式USB接口的便攜式比色計設計

        作者: 時間:2009-09-01 來源:網絡 收藏

          2.2 單片機控制CH375電路設計

          本系統使用 C8051F020單片機作為處理器。C8051F020是Cygnal 公司推出的一種 SOC型 8位單片機,片內有 64KB FLASH存儲器和4KB RAM,完全符合作為主機時讀寫 U盤的要求。C8051F020單片機控制 CH375的電路如圖 2所示。

          1. 系統軟件設計

          2. 1主機模式默認狀態下,儀器工作在主機模式,通過讀寫 U盤,存儲采集到的數據。 在單片機下開發 U盤的讀寫系統,單片機端程序要涉及較多的協議,必須能實現 的控制傳輸、批量傳輸、SCSI/UFI/RBC命令傳輸及 FAT文件系統等功能。CH375內置了 通信協議的固件程序,包含了 Mass Storage類協議,所以實際的單片機程序只需要處理 FAT文件系統層,并且這一層也可以由 CH375的 U盤文件級子程序庫實現,因此簡化了程序的開發流程。

          CH375的 U盤文件級子程序庫提供了 USB存儲設備的文件級,這些應用層 API包含了常用的文件級操作,可以移植并嵌入到各種常用的單片機程序中,編寫程序時可以直接調用這些 API函數讀寫 U盤。單片機讀寫 U盤的程序流程如圖 3所示。

          單片機端程序用到的主要操作函數包括:

          (1)初始化 CH375芯片:CH375Init;

          (2)查詢 U盤是否準備好:CH375DiskReady;

          (3)打開文件:CH375FileOpen;

          (4)關閉文件:CH375FileClose;

          (5)新建文件:CH375FileCreate;

          (6)以字節為單位從文件讀數據:CH375ByteRead;

          (7)以字節為單位向文件寫數據:CH375ByteWrite;

          (8)以字節為單位移動文件指針:CH375ByteLocate。

          3.2 從機模式 當圖 1中的P1口連接到PC機USB時,在 C8051F020單片機控制下,儀器切換到從機模式,設備可以與 PC機通訊,進行數據交換。

          3.2.1 本地端的單片機軟件

          CH375專門用于處理 USB通訊,當 CH375接收上位機發送的數據或發送完給上位機的數據后,以中斷方式通知單片機。本地端單片機程序主要完成 CH375的初始化和數據的接收與發送,單片機控制 CH375對數據的處理過程如下:

          1.單片機通過CH375芯片接收數據的處理步驟:

          (1) 當 CH375接收到 USB主機發來的數據后,首先鎖定當前 USB緩沖區,防止被后續數據覆蓋,然后將中斷引腳設置為低電平,向單片機請求中斷;

          (2) 單片機進入中斷服務程序,執行 GET_STATUS命令獲取中斷狀態;

          (3) 在 GET_STATUS命令后將中斷引腳恢復為高電平,取消中斷;

          (4) 判斷中斷狀態,為“下傳成功”,單片機執行 RD_USB_DATA命令從 CH375讀取接收到的數據;

          (5) RD_USB_DATA命令完成后,釋放緩沖區,繼續 USB通訊;

          (6) 退出中斷服務程序。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 辛集市| 项城市| 盐城市| 彭水| 茶陵县| 公安县| 河南省| 阳西县| 阿荣旗| 晋州市| 大悟县| 阳信县| 武汉市| 成武县| 乃东县| 镇安县| 谢通门县| 日土县| 蓬安县| 邻水| 安义县| 依兰县| 佛坪县| 荔浦县| 徐州市| 青海省| 姚安县| 兰溪市| 伊宁县| 谷城县| 弥勒县| 宿州市| 惠州市| 鄯善县| 梁山县| 恩施市| 保山市| 合作市| 盐山县| 鄂托克旗| 金湖县|