中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于DSP和專(zhuān)用接口芯片的USB實(shí)現(xiàn)方案

        基于DSP和專(zhuān)用接口芯片的USB實(shí)現(xiàn)方案

        作者:黨瑞榮 劉 蔚 茍 娜 時(shí)間:2008-07-29 來(lái)源:中電網(wǎng) 收藏

          中斷處理程序
          中斷處理程序是整個(gè)固件程序設(shè)計(jì)的重點(diǎn)。將設(shè)置為下降沿觸發(fā),當(dāng)PDID12接收到主機(jī)發(fā)送的信息包時(shí),觸發(fā)進(jìn)入中斷。首先通過(guò)讀取PDID12的中斷寄存器判斷所發(fā)生中斷的類(lèi)型,然后根據(jù)具體的中斷類(lèi)型進(jìn)入相應(yīng)的處理子程序。中斷處理程序流程圖如圖3所示。

        本文引用地址:http://www.antipu.com.cn/article/86353.htm

          標(biāo)準(zhǔn)請(qǐng)求處理程序
          協(xié)議中規(guī)定了11條所有USB設(shè)備都必須支持的標(biāo)準(zhǔn)請(qǐng)求,這些請(qǐng)求都是通過(guò)端點(diǎn)0發(fā)送的。標(biāo)準(zhǔn)請(qǐng)求處理程序?qū)χ鳈C(jī)發(fā)出的標(biāo)準(zhǔn)請(qǐng)求進(jìn)行響應(yīng),獲取設(shè)備的性能及狀態(tài),并給設(shè)備分配地址且進(jìn)行相應(yīng)配置,最終完成枚舉過(guò)程。

          硬件接口及PDIUSBD12命令操作程序
          硬件接口程序集成了對(duì)PDIUSBD12的讀寫(xiě)操作,是整個(gè)固件程序中最底層也是使用最頻繁的部分,將它獨(dú)立成一個(gè)模塊編寫(xiě)極大地方便了程序在不同硬件平臺(tái)上的移植。值得注意的是:PDIUSBD12要求數(shù)據(jù)線(xiàn)上的數(shù)據(jù)建立時(shí)間和保持時(shí)間必須大于40nS,因此編程時(shí)需要插入至少4個(gè)軟件等待狀態(tài)。另外,因?yàn)镻DIUSBD12的最小讀寫(xiě)周期為500nS,所以在每次對(duì)其進(jìn)行讀寫(xiě)操作后必須增加適當(dāng)?shù)难訒r(shí)。

          數(shù)據(jù)發(fā)送及接收程序
          當(dāng)用戶(hù)通過(guò)主機(jī)端應(yīng)用程序向設(shè)備索要數(shù)據(jù)時(shí),DSP調(diào)用數(shù)據(jù)發(fā)送子程序完成數(shù)據(jù)發(fā)送,針對(duì)發(fā)送數(shù)據(jù)量的大小,可以選擇使用端點(diǎn)1或者端點(diǎn)2完成。對(duì)于主機(jī)發(fā)送數(shù)據(jù)的接收,在端點(diǎn)0及端點(diǎn)1的IN中斷子程序中即可完成。發(fā)送數(shù)據(jù)子程序如下:


         
          調(diào)試
          固件程序?qū)r(shí)間敏感,所以編程時(shí)要特別注意時(shí)序問(wèn)題。由于USB枚舉過(guò)程很快,如果連續(xù)三次接收不到應(yīng)答包就結(jié)束枚舉,所以調(diào)試時(shí)要注意不能采用CCS的單步調(diào)試,可以采用斷點(diǎn)調(diào)試。調(diào)試過(guò)程之初經(jīng)常會(huì)遇到的一種狀況是指示燈閃爍三次以后熄滅,這說(shuō)明主機(jī)檢測(cè)到了設(shè)備連接,但無(wú)法和設(shè)備進(jìn)行對(duì)話(huà)來(lái)了解設(shè)備的信息。這表明固件程序還沒(méi)有開(kāi)始正常工作,需仔細(xì)檢查程序中的錯(cuò)誤之處。

          調(diào)試過(guò)程之初,可以使用以下兩種方法檢測(cè)硬件連接是否正確:

          1. 使用命令字FDh讀取PDIUSBD12的ID號(hào),正常狀態(tài)下讀出的兩個(gè)字節(jié)應(yīng)該為12H和10H。

          2. 通過(guò)設(shè)置PDIUSBD12工作模式,改變輸出時(shí)鐘頻率。在CLKout引腳測(cè)量輸出波形,觀(guān)察是否與設(shè)置值相符。
        若以上兩條滿(mǎn)足,則說(shuō)明硬件連接基本沒(méi)有問(wèn)題。

          PC端軟件
          PC端軟件包括設(shè)備驅(qū)動(dòng)程序和應(yīng)用程序兩部分。

          系統(tǒng)驅(qū)動(dòng)程序是基于WDM (Windows Driver Model) 驅(qū)動(dòng)程序模型設(shè)計(jì)的,包括四個(gè)模塊:初始化模塊、即插即用管理模塊、電源管理模塊和I/O功能模塊。本設(shè)計(jì)選用輔助工具DriverStudio,它能很好地和DDK結(jié)合,編程思路也比較清晰。首先使用驅(qū)動(dòng)向?qū)В―riverWizard)建立項(xiàng)目,設(shè)置驅(qū)動(dòng)程序類(lèi)型,設(shè)置USB設(shè)備的VID(Vendor ID)和PID(Product ID)及其各端點(diǎn)的屬性。給端點(diǎn)2增加讀寫(xiě)函數(shù)代碼。這樣就創(chuàng)建了一個(gè)驅(qū)動(dòng)程序的總體框架。再對(duì)生成的代碼進(jìn)行修改編譯和測(cè)試,完成USB驅(qū)動(dòng)程序的開(kāi)發(fā)。

          應(yīng)用程序是為了實(shí)現(xiàn)用戶(hù)和設(shè)備的接口,基本功能包括檢測(cè)USB設(shè)備、開(kāi)啟或閉合USB設(shè)備、設(shè)置USB數(shù)據(jù)傳輸管道、實(shí)時(shí)從USB接口采集數(shù)據(jù)以及顯示數(shù)據(jù)等。程序使用VC++編寫(xiě),調(diào)用Win32的應(yīng)用程序接口(API)函數(shù),實(shí)現(xiàn)應(yīng)用程序和設(shè)備驅(qū)動(dòng)的通信。使用PHILIPS公司提供的EasyD12.dll動(dòng)態(tài)鏈接庫(kù)可以使開(kāi)發(fā)過(guò)程更加輕松快捷。

        結(jié)束語(yǔ)

          系統(tǒng)測(cè)試結(jié)果表明:主機(jī)與設(shè)備間的數(shù)據(jù)傳輸平均速率達(dá)到130kb/s,完全可以滿(mǎn)足一般的需要。此項(xiàng)接口設(shè)計(jì)方案具有良好的可移植性,針對(duì)不同的硬件平臺(tái)僅需做少許修改即可應(yīng)用。隨著USB技術(shù)的進(jìn)一步發(fā)展,USB2.0和USB OTG規(guī)范的推出以及無(wú)線(xiàn)USB的出現(xiàn),USB儀器將成為的發(fā)展方向,并推動(dòng)傳統(tǒng)儀器向小型化和微型化方向發(fā)展。


        上一頁(yè) 1 2 下一頁(yè)

        關(guān)鍵詞: DSP USB 測(cè)量?jī)x器 MCU

        評(píng)論


        相關(guān)推薦

        技術(shù)專(zhuān)區(qū)

        關(guān)閉