S3c2410_SDIO_調試筆記<二>

摘自:上海嵌入式索漫科技培訓教材      作者:下家山

(見Simplified SDIO Card Specification.pdf  35page)因爲,CMD52響應後返回數據爲8bit,所以要送三次。第一次:

                  rSDICARG == 0x00001200;

                  rSDICCON == 0x00000B74;

                  響應

                  rSDICSTA == 0x00000A34;

                  rSDIRSP0 == 0x00001000;

                                  解讀0x00001200

  0            000            0           0      00  0000 0000 0001 001     0       0000 0000

R/W flag

Function Number

RAW flag

Stuff

Register Address

Stuff

Write data or stuff bits

 1              3              1             1          17             1             8

                                  解讀0x00000B74(略)

                                  解讀0x00000A34(略)

                                  解讀0x00001000

                  0x00001000的低8位表示從地址0x09讀出來的值爲0x00;

第二次:

                  rSDICARG == 0x00001400;

                  rSDICCON == 0x00000B74;

                  響應

                  rSDICSTA == 0x00000A34;

                  rSDIRSP0 == 0x00001010;

                                  解讀0x00001400

  0            000            0           0      00  0000 0000 0001 010     0       0000 0000

R/W flag

Function Number

RAW flag

Stuff

Register Address

Stuff

Write data or stuff bits

 1              3              1             1          17             1             8

               解讀0x00000B74(略)  解讀0x00000A34(略)解讀0x00001010

                  0x00001010的低8位表示從地址0x0a讀出來的值爲0x10;

第三次:

                  rSDICARG == 0x00001600;

                  rSDICCON == 0x00000B74;

                  響應

                  rSDICSTA == 0x00000A34;

                  rSDIRSP0 == 0x00001000;

                                  解讀0x00001600

  0            000            0           0      00  0000 0000 0001 011     0       0000 0000

R/W flag

Function Number

RAW flag

Stuff

Register Address

Stuff

Write data or stuff bits

 1              3              1             1          17             1             8

                                  解讀0x00000B74(略)解讀0x00000A34(略)

                                  解讀0x00001000

        0x00001000的低8位表示從地址0x0b讀出來的值爲0x00;

   最後,可以得到FN0 CIS指針地址爲0x001000。

3.4 讀出ID

     同樣,讀出ID號也是通過CMD52來實現的。(見5.2  CMD52及響應剖析

          我們可以從SDIO 協議規範中看出CIS 的整個區域地址範圍爲0x00001000~0x00017fff。

      而,我剛纔讀出FN0 的CIS指針地址爲0x001000,這證明是正確的。那麼出廠時,這些CIS信息是如何存放在0x001000所在的區域的呢?以FN0爲例,聽我一一道來:

          在0x001000起始的區域,SDIO 協議規範是以一個或多個鏈(連起來的列表)被稱爲數據塊或tuples(便士)來組織這些CIS信息的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章