1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>電子通信論文>USB接口芯片FT245AM的原理

    USB接口芯片FT245AM的原理

    時間:2023-02-20 23:43:26 電子通信論文 我要投稿
    • 相關推薦

    USB接口芯片FT245AM的原理

     摘要:介紹了一種USB總線接口芯片FT245AM及其在航空ARINC429總線測試儀中的應用方法,同時介紹了FT245AM的內部結構、管腳說明以及與微處理器的接口電路,給出了航空ARINC429總線測試儀的總體框圖、部分原理和接口邏輯的Verilog HDL源代碼及仿真時序。

        關鍵詞:USB總線 ARINC429總線 FT245AM CPLD MCU

    隨著計算機的廣泛就算,與計算機通信的方式也越來越多,對通信速度和易用性要求也越來越高,這使得USB通信方式顯得越來越突出,應用領域也越來越廣泛。因此,在鼠標、鍵盤、游戲桿、數據采集卡、數碼相機、掌上電腦中都有USB的應用。

    FT245AM是美國FTDI公司生產的一種USB專用芯片。它具有功能強、體積小、傳輸速度快、符合USB1.1技術規范、易于一微處理器接口等特點,因而倍受用戶的青睞。筆者采用FT245AM成功地開發了航空ARINC429總線測試儀。
    (范文先生網www.baimashangsha.com收集整理)
        FT245AM集成了USB1.1通信協議和外設接口,可以方便地實現USB主機與外設MCU、CPLD的接口,其數據傳輸速率可達1MB/s。FT245AM內部128字節的接收FIFO和384字節的發送FIFO大大提高了USB主機與外設的通信質量。另外,FT245AM還具備3.3V的LDO調整器、8位頻器、USB數據時鐘恢復PLL、USB數據收發器,且EEPROM接口邏輯單元可外接串行存儲器93C46,以實現USB VID、PID、序列號和設備說明字符串的存儲。使用FT245AM可大大簡化其外圍電路,使用戶設備更趨于小型化。

    1 FT245AM簡介

    1.1 FT245AM內部結構和引腳功能

    FT245AM芯片的內部結構如圖1所示。該芯片采用QFP32封裝,其各管腳說明如下:

    USBDP(7腳):USB差分數據正端;

    EEDATA(2腳):串行存儲器數據;

    USBDM(8腳):USB差分數據負端;

    TEST(5腳):廠商測試管腳;

    3V3OUT(6腳):3.3V電源輸出;

    D[7:0](25~18腳):外設接口數據總線;

    XTIN(27腳):晶體振蕩器輸入;

    RD(16腳):外設讀數據信號輸入;

    XTOUT(28腳):晶體振蕩器輸出;

    WR(15腳):外設寫數據信號輸入;

    RCCLK(31腳):RC定時器;

    TXE(14腳):發送FIFO空標志輸出;

    RESET(4腳):芯片復位輸入;

    RXF(12腳):接收FIFO非空標志輸出;

    EECS(32腳):串行存儲器片選;

    EEREQ(11腳):串行存儲器讀取請求;

    EESK(1腳):串行存儲器時鐘;

    EEGNT(10腳):串行存儲器讀取允許;

    VCC,AVCC(3、13、26、30腳):分別為芯片電源和電路模擬電源;

    GND,AGND(9、19、29腳):芯片地和模擬地。

    1.2 FT246AM與外設的數據傳輸方法

    FT245AM具有外設接口控制單元,可以方便地與MCU、CPLD接口來實現數據交換。

        當外設從FT245AM中讀取USB主機數據時,如果FT245AM的管腳RXF為高電平,則表明FT245AM沒有接收到USB主機發送的數據,此時外圍MCU(CPLD)不能讀取數據。而

    當MCU(CPLD)檢測到RXF為低電平時,表明FT245AM的接收FIFO中已有USB主機發送的數據,此時外圍MCU(CPLD)便可以通過外設數據總線讀取數據。外設通過FT245AM讀取USB主機數據的時序圖如圖2所示。

    當外設通過FT245AM寫數據到USB主機時,如果FT245AM的管腳TXE為高電平,則表示FT245AM內部正忙,外圍MCU(CPLD)不能向FT245AM的發送FIFO中寫數據。而當外圍MCU(CPLD)檢測到TXE為低電平時,則表明FT245AM的發送FIFO空閑,外圍MCU(CPLD)可以向FT245AM中寫數據到USB主機。圖3所示是外設通過FT245AM向USB主機發送數據的時序圖。

    2 在ARINC429總線測試儀中應用

    ARINC429總線在航空領域有著廣泛的使用,該總線采用差分數據傳輸方式,支持12.5kbps和100kbps兩種傳輸速率。由于ARINC429總線設備的應用領域比較特殊,因此需要較高的可靠性,同時其測試設備也顯得尤為重要。為了方便該總線設備的測試,擺脫專用測試設備的不靈活性,急需一種方便快捷的通信方式來實現計算機與該總線設備的互連,使該總線設備的測試可以在計算機中自動完成,從而提供測試設備的靈活性和通用性。因此,提出了基于USB總線的ARINC429總線測試儀。

    2.1 基于USB的ARINC429總線測試儀結構

    考慮到USB總線為自供電試,最大可驅動500mA電流,故ARINC429測試儀選取4路接收、2路發送的結構。當然,如果允許外接電源,還可以實現更多的收發路數,但這樣會降低USB總線的方便性。由于ARINC429總線的傳輸速率最大為100kbps,而USB1.1的通信能力可達12Mbps。,考慮到協議的額外開銷,一路USB總線同時完成2路ARINC429總線的發送和4路接收。

    為了提高ARINC429總線測試儀的實時性,可選用高速MCU控制USB接口芯片FT245AM,但MCU沒有足夠的I/O數,無法滿足與ARINC429控制芯片連接的I/O管腳,因此,可選用CPLDEPM7128S來完成FT245AM的控制和數據傳輸。

    基于USB的ARINC429總線測試儀結構如圖4所示。圖5所示是FT245AM部分的外圍電路。

    在諞測試儀電路中,EPM7128S用于完成ARINC429總線控制芯片DEI1016與USB控制芯片FT245AM的邏輯變換,以使USB主機可以實時發送數據到ARINC429總線設備,并實時接收設備返回的數據,以供主機中的測試軟件進行記錄和檢測,從而滿足設備故障的診斷和定位之需。

        2.2 EPM7128S與FT245AM的接口實現

    EPM7128S與FT245AM的接口電路主要完成從FT245AM的接收FIFO中讀數據和向FT245AM的發送FIFO中寫數據。采用純硬件實現方式可使FT245AM的接口延時和整個測試儀通信環節的延時達到最小。

    EPM7128S可與FT245AM共享工作時鐘,它使用12條I/O與FT245AM相連,分別對應于FT245AM的D0~D7、TXE、RXF、RD、WR等。

    對EPM7128S的編程可采用VerilogHDL語言,并采用Synplify綜合,最后使用MAXPlus II進行布線和仿真。與FT245AM的接口設計代碼如下:

    //-------------

    //產生FT245AM讀信號

    always@(posedge clk or negedge reset)

    begin

    if(reset = =1'b0)

    usb_rd<=1'b1;

    else if(usb_rxf= =1'b1)

    usb_rd<=1'b1;

    else if(usb_rd= =1'b0)

    usb_rd<=1'b1;

    else if((usb_rxf = = 1'b0)&&(usb_rden= =1'b1)&&(cnt= =2'd0))

    usb_rd<=~usb_rd;

    end

    //---------------------

    //計數器,控制FT245AM讀寫時序

    always@(posedge clk or negedge reset)

    begin

    if(reset = =1'b0)

    cnt<=2'd0;

    else if(cnt !=2'd0)

    cnt<=cnt+1'b1;

    else if((usb_txe = =1'b0)&&(data_valid = =1'b1)&&(usb_rden= =1'b0))

    ent<=cnt+1'b1;

    end

    //---------------------

    //產生FT245AM寫信號

    always@(posedge clk or negedge reset)

    begin

    if(reset= =1'b0)

    usb_wr<=1'b0;

    else

    usb_wr<=(cnt= =2'd1);

    end

    //---------------------

    //讀取USB主機數據

    always@(posedge clk or negedge reset)

    begin

    if(reset= =1'b0)

    rx_data<=8'b00;

    else if(usb_rd = = 1'b0)

    rxdata<=usb_data;

    end

    //---------------------

    //向USB主機寫數據

    always@(posedge clk or negedge reset)

    begin

    if(reset = =1'b0)

    tx_data<=8'h00;

    else if(cnt[0] = =1'b1)tx_data<=data_429;

    end

    //---------------------

    //FT245Amgn EPM7128S的數據三態接口

    assign usb_data=(cnt[1] = =1'b1)?tx_data:8'hzz;

    //----------------------

    圖5 FT245AM外圍電路圖

    3 結束語

    本文介紹了USB接口芯片FT245AM的原理和在航空ARINC429總線測試儀中的具體應用實例方法。筆者將EPM7128與FT245AM的接口邏輯在MAXplus II環境下進行了仿真,結果表明:使用該設計完全可滿足實際要求,因此,使用USB通信接口的航空ARINC429總線測試儀,大大便利了429總線設備與計算機的通信,有效提高了429總線設備的檢測效率。



    【USB接口芯片FT245AM的原理】相關文章:

    USB總線接口芯片CH371及其應用08-06

    RS232接口轉USB接口的通信方法08-06

    基于DSP平臺的USB接口設計08-06

    基于USB接口的數據采集系統設計08-06

    帶USB接口的電子巡更系統的設計08-06

    可編程數碼管/鍵盤串行接口芯片HD7279A的原理與應用08-06

    PowerPC和Dallas的時鐘芯片接口設計08-06

    PCI總線接口芯片9050及其應用08-06

    GPIB接口專用芯片TNT488208-06

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      中文字幕乱码中文乱码二区 | 亚洲另类国产欧美一区二区 | 婷婷色五月综合激情六月导航 | 亚洲欧洲日产国码二区 | 亚洲一区免费看 | 日韩欧洲区精品一区二区 |