<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

micro SD卡

作者: 時(shí)間:2023-12-20 來(lái)源:電子森林 收藏

SD 卡很容易與 FPGA 連接。它們有不同的尺寸(標準、迷你和微型),但電氣工作方式相同。我們重點(diǎn)討論微型 SD 卡,因為它們小巧方便,如今也很流行。

本文引用地址:http://dyxdggzs.com/article/202312/454089.htm

微型 SD 卡有 8 個(gè)引腳。首先,電源連接在第 4 針和第 6 針上。

然后,根據您決定使用的操作模式,您需要將 3 到 6 個(gè)引腳連接到 FPGA 引腳。

SPI 模式

在 SPI 模式下,DI/DO 線(xiàn)路是單向的。這意味著(zhù)

  • DI/DO 上無(wú)需上拉

  • 命令(以及寫(xiě)扇區時(shí)的扇區數據)發(fā)送到 DI 引腳

  • 從 DO 引腳接收響應(以及扇區讀取時(shí)的扇區數據


SPI 模式通常用于微控制器系統。在 FPGA 中,我們可能更適合使用...

SD 模式

在 SD 模式下,CMD/DATx 線(xiàn)路是雙向的。這意味著(zhù)

  • CMD/DATx 上需要上拉(FPGA 通??稍趦炔刻峁┥侠δ埽?/p>

  • 在 CMD 引腳上發(fā)送/接收命令/響應

  • 從 DATx 引腳發(fā)送/接收扇區數據(用于扇區讀取和寫(xiě)入

例如,在 SD 單位模式下,我們需要這些連接:

協(xié)議

SD 卡采用命令/響應方案工作。例如,命令 "17 "允許讀取卡內存的一個(gè)扇區(512 字節)。所有通信都與主機(本例中為 FPGA)提供的時(shí)鐘同步。啟動(dòng)時(shí)時(shí)鐘頻率應低于 400KHz,卡初始化后時(shí)鐘頻率可加快。

// we use the Xylo-E FX2 FIFO2 as data source for "commanding" an SD card
// the SD card is used in one-bit SD mode 
// first we are going to drive the SD card at a much slower speed than the FPGA itself
// let's create a "shift" signal that is asserted once every 64 clock periods
reg [5:0] cnt=0;  
always @(posedge clk) cnt <= cnt+1;
reg shift=0;  
always @(posedge clk) shift <= &cnt; // now we serialize every byte we get from the FIFO2
reg [2:0] cntbit=0;reg shifting=0;
reg [7:0] data=0;
always @(posedge clk) if(shift) shifting <= shifting ? ~(&cntbit & ~FIFO2_data_available) : FIFO2_data_available;
always @(posedge clk) if(shift & shifting) cntbit <= cntbit+1;
always @(posedge clk) if(shift) data <= (FIFO2_data_available & (~shifting | &cntbit)) ? FIFO_DATAIN : {data[6:0],1'b0};assign FIFO_RD = shift & (~shifting | &cntbit); 
// and send the serial data to the SD card
assign SD_CLK = cnt[5];
assign SD_CMD = shifting ? data[7] : 1'bZ;

所有命令和大多數響應的長(cháng)度都是 48 位(6 字節)。扇區數據是 512 字節的倍數。例如,下面是一段可以向 SD 卡發(fā)送命令的簡(jiǎn)單代碼。



關(guān)鍵詞: SD卡

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>