| 
  |||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe  | 
  
USB Mass Storage固件和驅(qū)動設(shè)計 | 
  
| 作者:sparkman 欄目:MCU技術(shù) | 
請問各位大俠: 我的USB Mass Storage設(shè)備使用NAND FLASH作為存儲器,已經(jīng)在STR912中編好了NAND FLASH接口程序,比如擦寫Sector,讀Sector等。 那么,USB Mass Storage的固件中是否必須有文件系統(tǒng)? Windows2000以上都內(nèi)置了USB Mass Storage驅(qū)動,如果令它識別為U盤的話,就肯定要用FAT了。如果令它識別為其它Mass Storage設(shè)備,該怎樣讀寫呢?VC++中有API庫可以使用USB指令直接操作Mass Storage設(shè)備嗎?比如是否可以編程發(fā)送一個Sector號給設(shè)備,設(shè)備就將相應(yīng)的Sector內(nèi)容發(fā)回來? 謝謝!  | 
  
| 2樓: | >>參與討論 | 
| 作者: 浪淘沙 于 2006/11/30 15:42:00 發(fā)布:
         已經(jīng)在STR912中編好了NAND FLASH接口程序,能說說怎么做的嗎?  | 
  |
| 3樓: | >>參與討論 | 
| 作者: sparkman 于 2006/11/30 15:51:00 發(fā)布:
         回答NandFlash 數(shù)據(jù)線接到EMI上,R、W接到RD,WR上,其他用IO口仿真NandFlash時序  | 
  |
| 4樓: | >>參與討論 | 
| 作者: foyyof 于 2006/11/30 16:11:00 發(fā)布:
         可以的,只要自己做相應(yīng)驅(qū)動即可。 不過不能做成MSC的描述符,不然windows會自動加載它的默認驅(qū)動。  | 
  |
| 5樓: | >>參與討論 | 
| 作者: ambercctv 于 2006/11/30 16:29:00 發(fā)布:
         有現(xiàn)成的mass storage的firmware供參考嘛?  | 
  |
| 6樓: | >>參與討論 | 
| 作者: 浪淘沙 于 2006/11/30 17:00:00 發(fā)布:
         關(guān)于USB Mass Storage固件和驅(qū)動設(shè)計 1)USB Mass Storage的固件沒有文件系統(tǒng),不需要! 2)USB Mass Storage就是被Windows2000識別為U盤,沒有特殊的要求 3)不明白你所說的其它Mass Storage設(shè)備是什么意思? 4)VC++中沒有API庫可以使用USB指令直接操作Mass Storage設(shè)備 請在USB的官方網(wǎng)站下載USB Mass Storage的文本,你就知道USB Mass Storage設(shè)備只完成對Sector的操作,不管是什么文件系統(tǒng);這就是為什么一個U盤即可以在Windows下用,也可以在Mac OS和Linux下使用。  | 
  |
| 7樓: | >>參與討論 | 
| 作者: sparkman 于 2006/11/30 20:29:00 發(fā)布:
         USB Mass Storage設(shè)備只完成對Sector的操作,不管是什么文件系統(tǒng) 沒有文件系統(tǒng)最好,設(shè)備對Sector的操作不難實現(xiàn)。 以前的做法是,利用廠商提供的驅(qū)動程序,用VC++編程,在BulkOnly模式下,OUT一個地址,再IN回來64個字節(jié),如此反復(fù)循環(huán),獲得批量數(shù)據(jù)。可是這樣太慢,只有不到3KB/S的速度。 我想提高這個速度,所以打算使用Windows標準的MassStorage驅(qū)動,這樣起碼可以達到U盤的速度吧。 既然Windows提供了Mass Storage驅(qū)動來,那我怎樣才能直接用它來和USB設(shè)備通訊呢?來獲取設(shè)備的某個Sector的數(shù)據(jù)呢?  | 
  |
| 8樓: | >>參與討論 | 
| 作者: computer00 于 2006/11/30 20:39:00 發(fā)布:
         U盤好象是按扇區(qū)來操作的…………  | 
  |
| 9樓: | >>參與討論 | 
| 作者: starm 于 2006/11/30 21:37:00 發(fā)布:
         那我怎樣才能直接用它來和USB設(shè)備通訊呢? 上次贈送的那個仿真器好像就是用了 msc 驅(qū)動.  | 
  |
| 10樓: | >>參與討論 | 
| 作者: sparkman 于 2006/11/30 22:07:00 發(fā)布:
         U盤是按扇區(qū)來操作的 U盤是按扇區(qū)來操作的,windows的標準驅(qū)動可以直接訪問扇區(qū)嗎?還是只提供了Openfile這樣的API了?  | 
  |
| 11樓: | >>參與討論 | 
| 作者: 浪淘沙 于 2006/11/30 22:17:00 發(fā)布:
         Windoes的標準驅(qū)動發(fā)出SCSI命令直接訪問扇區(qū) 我前面已經(jīng)說過,請在USB的官方網(wǎng)站下載USB Mass Storage的文本,然后按文本中的指示下載SCSI的命令文本,內(nèi)容很多,可以寫兩本書。  | 
  |
  | 
    
 
  | 
  
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 | 
Copyright © 1998-2006 www.udpf.com.cn 浙ICP證030469號  |