a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于C8051F320的數據采集系統USB接口設計

基于C8051F320的數據采集系統USB接口設計

作者: 時間:2009-10-16 來源:網絡 收藏

固件分為兩個部分:前臺主程序和后臺中斷服務程序(ISR)。在 固件
程序中,最重要的工作就是 描述符的定義和 傳輸中斷的處理。
USB 描述符是USB 協議定義的一套描述設備功能和屬性的固定結構的描述語言。
USB2.0 中的描述符包括設備描述符、配置描述符、接口描述符、端點描述符等8 種標準描
述符和其它一些非標準描述符。USB 主機通過USB 描述符完成設備類型的識別和配置,客
戶端驅動程序通過這些信息來正確訪問設備并與其通信。本文在對 的配置中除
了端點0 外還用到了端點1 和端點2,它們的描述符如表1 所示。

本文引用地址:http://www.j9360.com/article/202632.htm

USB 傳輸中斷的處理也是一個重要的部分。傳輸中斷的處理由ISR 和前臺主程序共同
完成。這兩部分的數據交換通過事件標志和數據緩沖區來實現[6]。當 的USB 引
擎從主機收到一個數據包時,就會產生一個中斷請求,C8051F320 立即響應中斷,通過讀取
USB 功能控制器的三個中斷寄存器CMINT、IN1INT 和OUT1INT 來判斷中斷來源(USB
復位中斷、端點0 中斷、端點1 輸入中斷、端點2 輸出中斷),然后根據不同的中斷來源跳
入相應的處理模塊以進行不同的中斷處理,并在處理完畢后返回。其中,端點0 是每個USB
設備都必須支持的默認控制傳輸端點,主要用于主機對USB 設備的配置、狀態信息的獲取
和設備錯誤的糾正等,它的中斷處理模塊由控制輸出和控制輸入兩部分組成。每次傳輸首先
由設置事務開始,然后根據設置事務數據不同的中斷來源跳入相應的處理模塊以進行不同的
中斷處理,并在處理完畢后返回。同時在ISR 中,固件將數據包從C8051F320 的USB 引擎
內部緩沖區移到一個自定義的數據緩沖區,并在隨后請求清零其內部緩沖區,以使其能夠繼
續接收新的數據包。然后返回到主循環,檢查自定義緩沖區內是否有新的數據并開始其它的
任務。由于這種結構,主循環只用檢查自定義緩沖區內需要處理的新數據,專注于新數據的
處理,而ISR 也能夠以最大速度進行數據的傳輸。這樣,程序對USB 的操作更加簡單,也
便于程序的維護。主程序和端點0 的控制傳輸程序流程分別如圖3、圖4 所示。端點1 和端
點2 的程序流程與之類似。



評論


相關推薦

技術專區

關閉