新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > USB數據通信接□模塊的程序設計

        USB數據通信接□模塊的程序設計

        作者: 時間:2013-10-17 來源:網絡 收藏

          以USHORT ReadlnterruptRegister(void)函數為例,代碼如下:


          3 中斷服務程序

          這部分代碼處理由PDIUSBDl2產生的中斷,它將數據從PDIUSBDI2的內部FIFO取回到CPU存儲器,并建立正 確的事件標志以通知主循環程序進行處理。在ISR函數的入口固件使用ReadlntemJptRegister()來決定中 斷源,根據中斷源進入相應的子程序進行處理。

          中斷服務處理函數代碼如下


          4.主端點操作

          這部分代碼較多,包括各個端口的發送/接收函數,端點1和主端點(端點2)的收發函數相對較簡單。

          

          (2)主端點接收函數。

          5.程序說明

          在端點0的發送函數中,MCU首先需要通過讀DI2的最后處理狀態寄存器,清0Control_In中斷標志位,接著 MCU在確認DI2處于傳輸模式后進行數據所的發送。由于D12的控件端點只有16bit,如果傳輸的長度大于 16bit,MCU在傳輸階段就必須控制數據的數量,其流程如圖2所示。MCU必須檢查要發送到主機的當前和剩余 的數據大小,如果剩下的字節數大于16,MCU將先發送16字節并減去參考長度(要求的長度)16。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 琼海市| 东阳市| 若羌县| 新建县| 德惠市| 教育| 襄城县| 法库县| 阿鲁科尔沁旗| 古交市| 寻乌县| 德兴市| 周口市| 许昌县| 湘乡市| 仁化县| 蒲城县| 梓潼县| 周口市| 霞浦县| 固阳县| 崇礼县| 琼中| 武隆县| 满洲里市| 北辰区| 林周县| 嘉善县| 望都县| 隆回县| 佛教| 望城县| 涞水县| 苍溪县| 岫岩| 宁海县| 西平县| 临高县| 普定县| 隆子县| 镇宁|