ft232h引腳 FT1248開發筆記

2021-10-13 14:10:56 字數 2021 閱讀 1932

環境配置

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

建議在除錯硬體前用ftdi官方提供的測試程式進行測試。這是c#下的測試程式,建議使用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. 讀寫資料在每個返回延進行取樣。

FT4222H學習筆記3 搭建C 環境

d2xx是ftdi提供的可以直接通過乙個dll訪問usb裝置的驅動程式。2.解壓d2xx後資料夾內有對應的usb驅動檔案 ftd2xx.h和對應的dll或者靜態庫。c 只能直接使用dll的方式。資料夾amd64對應64位系統,而i386對應32位系統。4.在執行目錄內拷貝對應的檔案 新建乙個ft42...

FT2232H與CY7C131的連線

ft2232h提供了一種mcu host bus emulation 模式,用來模擬一般的8054 8051微控制器的資料介面。cy7c131是一款提供10位位址線 8位資料線的雙口ram。在連線時,分為以下兩種情況 1 位址線為8位時 由於ft2232h的mcu host bus emulatio...

h5引用專案裡css HTML中引入CSS 的方式

有 4 種方式可以在 html 中引入 css。其中有 2 種方式是在 html 檔案中直接新增 css 另外兩種是引入 外部 css 檔案。下面我們就來看看這些方式和它們的優缺點。內聯方式 內聯方式指的是直接在 html 標籤中的 style 屬性中新增 css。示例 這通常是個很糟糕的書寫方式,...