<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 經(jīng)USB端口的模擬和數(shù)字I/O

          經(jīng)USB端口的模擬和數(shù)字I/O

          ——
          作者: 時間:2005-06-27 來源: 收藏

          本文給出通過計算機(jī)端口得到16位數(shù)字I/O和12位模擬I/O。用Gigatechnology 模塊和 LTC1286ADC、LTC1451DAC 實現(xiàn)本設(shè)計。
          模塊
          USB模塊接入USB總線,它提供字節(jié)寬的雙向信號。4個其他信號控制數(shù)據(jù)流。為了從PC得到數(shù)據(jù),等待直到*RXF輸出為高態(tài)和*RD輸入為低態(tài)為止,然后數(shù)據(jù)呈現(xiàn)在雙向引腳。在*RD變化狀態(tài)之后,*RXF輸出變高態(tài)。重復(fù)此過程直到讀出所有數(shù)據(jù)為止。在*WR輸入的負(fù)沿送數(shù)據(jù)到PC,*TXE輸出應(yīng)變高態(tài)。當(dāng)它再次變低態(tài)時,可以發(fā)送更多數(shù)據(jù)。
          數(shù)據(jù)輸出
          從PC送數(shù)據(jù)到USB模塊,過程為:
          * 打開器件。
          * 從PC發(fā)送代表數(shù)據(jù)的字符串。
          * 關(guān)閉器件。
          當(dāng)從PC發(fā)送數(shù)據(jù)到模塊時,Visual Basic程序檢測代表數(shù)字?jǐn)?shù)據(jù)的檢查單元中的變化或定義ADC輸出的區(qū)域中設(shè)置變化。程序匯編字符串,每個字符的bit5和bit2表示被發(fā)送的模擬和數(shù)字?jǐn)?shù)據(jù)。Bit3表示選通數(shù)據(jù)進(jìn)入74HC595輸入寄存器(圖2)和LTC1451寄存器的時鐘信號(圖3)。在數(shù)據(jù)正確地放送后,后跟兩個字符。Bit1選通數(shù)據(jù)進(jìn)入74HC595輸出并驅(qū)動LTC1451門*CS輸入。
          盡管DAC是12位器件,但它可以接收16個時鐘脈沖,它仍然能正確工作,這是因為恰當(dāng)?shù)剡x通*CS輸入。因為它首先接收數(shù)據(jù)MSB,所以,bit0必須在數(shù)字輸出字bit16相當(dāng)時間發(fā)送,bit11與數(shù)字輸出字bit4的相當(dāng)時間發(fā)送,這靠軟件實現(xiàn)。
          ADC具有內(nèi)部2.048V基準(zhǔn)和倍數(shù)2放大器,因此,毫伏輸出是方便的等效碼。
          數(shù)據(jù)輸入
          數(shù)據(jù)輸入過程如下:
          * 打開器件;
          * 從USB模塊中讀表示數(shù)據(jù)的字符串;
          * 關(guān)閉器件。
          為了從USB模塊中讀數(shù)據(jù)到PC,程序匯編鎖存在74HC589輸入寄存器中的字符中,此時再次用bit1。字符串其后的字符再次選通bit7低態(tài)和高態(tài),選通U3a(圖1)并送其Q輸出為1。U3a的Q和*Q輸出信號控制74HC589器件的*SLOAD輸入和LTC1286的*CS輸入。它也去除來自U4的復(fù)位信號,允許工作直到共Q9輸出變邏輯1為止,通過U3b復(fù)位U3a。當(dāng)U4工作時,其Q4輸出提供16個時鐘沿來選通來自LTC1286的數(shù)據(jù)輸入。此信號經(jīng)反相器也選通74HC589(圖2)和USB模塊的*WR輸入。74HC589和LTC1286 ADC(圖3)在時鐘沿的不同極性轉(zhuǎn)換數(shù)據(jù),而電路能確保USB模塊在有效時鐘沿之間的中間狀態(tài)接收數(shù)據(jù)。
          來自USB模塊的模擬和數(shù)字?jǐn)?shù)據(jù)分別從模塊返回字符串中bit6和bit4獲得。在*CS有效之后,ADC在第4個時鐘脈沖給出其輸出的最高有效位(D11),其他位緊隨其后,在第15個時時脈沖輸出最低有效位(D0)。為了與數(shù)字輸入具有共性,電路中給出第16個時鐘脈沖;在第16個脈沖期間,ADC再一次輸出D1。因此,軟件除去USB所接收的轉(zhuǎn)換數(shù)據(jù)最后1位,并轉(zhuǎn)送剩余的其他正確位。
          因為時鐘率必須低于單純數(shù)字情況下的時鐘率,所以,不需要來自USB模塊的*TXE信號。在此采用4MHz振蕩器連率,需要選擇U4的不同輸出以獲得ADC所用的低于200KHz時鐘率。
          在ADC之前有一個1增益運放,提供高輸入阻抗并使ADC所產(chǎn)生的噪聲與輸入隔離。電位器(圖3)補(bǔ)償放大器漂移并設(shè)置到零輸入電壓時ADC讀出零。本文所用ADC是12位器件,其輸出碼是:4096



          關(guān)鍵詞: USB

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();