FT1248開發筆記

來源:互聯網
上載者:User

標籤:

環境配置

開始調試前必須確保電腦已安裝上正確的驅動程式,64位系統在driver中安裝amd64的,32位的系統安裝x86的(我在調試時因為驅動程式沒有選對,真是血的教訓。。。)。對於FTD2XX的晶片,除非使用MPSSE功能,其他情況都使用FTD2XX的驅動,然後使用dll或者配置成com來進行通訊。

建議在調試硬體前用FTDI官方提供的測試程式進行測試。這是C#下的測試程式,http://www.ftdichip.com/Support/SoftwareExamples/CodeExamples/CSharp.htm,建議使用example 3的資料輪迴測試,注意這個測試程式需要把TXD和RXD引腳短接,RTS和CTS引腳短接。因此建議畫板的時候可以留下介面方便測試。如果四個腳都串連FPGA,那也可以用FPGA來扮演連接器的角色。

然後,別忘了還要使用FT_Prog把晶片和Master通訊方式配置成FT1248模式。,這個在hardware specific中PART A的hardware中可以選擇。,並在driver中選擇FTD2XX。需要注意的是,如果只使用了一個FT232H和Master通訊,FT1248匯流排上沒有其他裝置,那麼一般會選上FT1248 setting的Flow ctrl not selected,這樣在非通訊過程是晶片的MIOSIO[0]和MISO才會反應資料緩衝區狀態,在調試過程中如果出現資料發送出去但是板子沒有收到的情況,那麼有一種情況就是電腦的另一個usb也連著一個ft的usb晶片,有可能是程式燒錄器。那就拔掉以後再試試。

FT1248的8bit協議

(一) FT232H在本協議中作為從機與主機進行8bit通訊(或者1bit,2bit,4bit,本文基於8bit

1. 在8bits通訊中,會用到11根訊號線,雙向資料線[7:0] MIOSIO,Master控制的時鐘線(SCLK)和使能線(SS_N),FT232H控制的MISO

2. FT232H判斷使用的是多少bit通訊是通過檢測SS_N在拉低後的第一個周期內MIOSIO情況(需要注意手冊建議每個MIOSIO都要加上拉電阻,因此晶片預設都是在高電平的),

    如果[7:4]MIOSIO中有一個被拉低了,那麼通訊為8bit;

    如果[3:2]MIOSIO中有一個被拉低了,那麼通訊為4bit;

    如果[1]MIOSIO被拉低了,那麼通訊為2bit,否則就是1bit通訊;

3. 在未進行通訊時,FT232H將會通過MIOSIO[0]和MISO分別反應write buffer和read buffer的狀態,兩個buffer都有1 kBytes的空間:

    (a)其中MIOSIO[0]在高電平表示在write buffer中至少還能存放1 byte;

    (b)MISO在高電平表示read buffer還有至少1 byte沒有被讀取;

4. 當SS_N變為低電平表示主機正開始一次傳輸,這時首先由主機發送8bit的CMD指令(在第一個時鐘返回延,從機進行採樣),沒有使用到的MIOSIO都拉低。

  對於8bit模式,              目前可用的指令包括:

    CMD0 = MIOSIO[6];            0x0  寫輸入到USB緩衝

    CMD1 = MIOSIO[5];            0x1  從USB緩衝讀資料

    CMD2 = MIOSIO[3];            0x2  讀取modem狀態

    CMD3 = MIOSIO[0];            0x3  寫modem狀態

                           0x4  把write buffer中的資料擦除

 

5. 在第二個周期開始時,[7:0]MIOSIO的傳輸要轉向,主機的這幾根線進入三態狀態(注意:AN_167手冊上對8bit的這段描述貌似直接複製了4bit的,所以時鐘和位寬都有錯誤)。轉向完後,第三個周期就開始收/發資料了,當然這個時候SS_N都要保持低電平。同時,MISO會使用ACK或NAK來告知是否傳輸成功。

6. 在準備把SS_N拉高來結束傳輸前,必須把MIOSIO置於三態,使得FT232H能通過MIOSIO[0]把write buffer狀態映射出來。

7. MISO的狀態將表示是否在write的時候write buffer滿了,或者在read的時候read buffer空了。如果出現這些異常,MISO將反饋NAK,手冊建議當收到NAK的下一個周期必須SS_N置高停止傳輸,否則之後的read和write都會出問題。

 

8. 讀寫資料在每個返回延進行採樣。

 

FT1248開發筆記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.