音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

ZLG/FS文件系統(tǒng)中間件的問(wèn)題!

作者:zenist 欄目:ARM技術(shù)
ZLG/FS文件系統(tǒng)中間件的問(wèn)題!
我在用EasyARM2131開發(fā)板用ZLG/FS文件系統(tǒng)中間件,讀寫SD卡的時(shí)候遇到如下問(wèn)題:
1.在用同樣的程序循環(huán)寫入兩張不同SD卡,結(jié)果不同,[Canon SD MEMORY Card SDC-32M]這張卡,不能在已有的文件后續(xù)寫數(shù)據(jù),另一張可以,請(qǐng)問(wèn)是不是開發(fā)板對(duì)卡有兼容性一說(shuō)?
2.另一張是 東芝的卡,16M,對(duì)一個(gè)文件寫數(shù)據(jù),最多只能寫入100K,具體是102400字節(jié),請(qǐng)問(wèn),是不是程序中的文件指針有bug阿,我只是最簡(jiǎn)單地調(diào)用了OpenFile,WriteFile,CloseFile,AllCacheWriteBack幾個(gè)函數(shù)而已阿.請(qǐng)教各位大俠,有用過(guò)這個(gè)開發(fā)板,遇到文件系統(tǒng)的問(wèn)題?
-------望不吝指教!

2樓: >>參與討論
zenist
====自己頂一下
 
3樓: >>參與討論
zenist
用過(guò)的用戶有沒(méi)有遇到我這樣的問(wèn)題阿?
用過(guò)的用戶有沒(méi)有遇到我這樣的問(wèn)題阿?
指點(diǎn)一下使用這個(gè)中間件的注意事項(xiàng),就那幾個(gè)函數(shù),我用了幾種情況來(lái)驗(yàn)證,總是摸不著可靠地使用地規(guī)律.
FS地代碼看了,總體感覺(jué)不是很簡(jiǎn)練,是不是給客戶的代碼是簡(jiǎn)化版阿?

---ZLG地技術(shù)人員,看了,回一下阿.


4樓: >>參與討論
zenist
堅(jiān)持-----
這是一個(gè)很基本的應(yīng)用,參照你們的<<ARM嵌入式系統(tǒng)軟件開發(fā)實(shí)例(一)>>也沒(méi)有什么問(wèn)題阿,就是用起來(lái)不是很順.
實(shí)例通過(guò),然后,我添加 了一個(gè)循環(huán),沒(méi)有改變其他的代碼,結(jié)果是寫入了102400字節(jié)不再寫入了.
---雁過(guò)留痕----
---拜托,買過(guò)ZLG開發(fā)板的大俠,試一下,看結(jié)果如何.正常通過(guò)的,通告一聲.
-==謝過(guò)先!

5樓: >>參與討論
eleven11
學(xué)習(xí)過(guò),但沒(méi)用過(guò),用的別的fs
幫你頂一下

6樓: >>參與討論
greatbin
bangniding
 
7樓: >>參與討論
zenist
To:eleven11
推薦一款FS(好用的)!

8樓: >>參與討論
zenist
有用過(guò)的嗎?
ZLG/FS應(yīng)該算是ZLG公司比較成熟的中間件,在書中都介紹了,怎么不好用那?

9樓: >>參與討論
eleven11
不是有書嗎
再翻一下舊貼吧,我只是修改一下做了測(cè)試,應(yīng)該還能用的吧,我用的是其它商業(yè)fs(不是ucFS),

10樓: >>參與討論
zenist
謝過(guò)!
 
11樓: >>參與討論
eleven11
對(duì)于zlgfs的代碼沒(méi)有一行行分析
我按照zlg/fs的思想也寫過(guò)fs,不過(guò)對(duì)于zlgfs的代碼沒(méi)有一行航分析,后來(lái)公司用的是買的商業(yè)fs(雖然我認(rèn)為也不是很好)

CacheID = SecIndex & CacheMap;

這是我用的cache分配的算法,按區(qū)域進(jìn)行映射,這樣你嫌麻煩的話就不必修改zlgfs的讀寫文件的函數(shù)了

12樓: >>參與討論
zenist
我修改一下FileWrite()函數(shù)看一下.
看過(guò),樓上關(guān)于FS的帖子,不錯(cuò),多謝指點(diǎn)迷途

13樓: >>參與討論
zenist
致樓上
能否共享一下你修改的關(guān)于Cache的函數(shù),我修改后,調(diào)試通過(guò),寫少量數(shù)據(jù)通過(guò),寫多了,常出錯(cuò),萬(wàn)分感激@
--->xqzenist@hotmail.com

14樓: >>參與討論
zenist
假設(shè)
請(qǐng)教,如果我用51來(lái)實(shí)現(xiàn)基于優(yōu)盤或是SD卡的文件系統(tǒng),最快的寫入速度大概能達(dá)到多少?
-->>假設(shè)的基本前提:W78E58B,22.184MHz

15樓: >>參與討論
shclark
ZLG/FS文件系統(tǒng)中間件的問(wèn)題!
我前兩天仔細(xì)研究了ZLG/FS文件系統(tǒng)中間件(V1.0),感覺(jué)代碼質(zhì)量離商業(yè)應(yīng)用還有一定距離。建議各位同行僅用于學(xué)習(xí)目的。!我現(xiàn)在用的是商業(yè)fs。

16樓: >>參與討論
zenist
大伙都用過(guò)那些FS阿?介紹一下
 
17樓: >>參與討論
chinagzj
ZLG/FS文件系統(tǒng)中間件的問(wèn)題
ZLG/FS 1.0 版有問(wèn)題 老陳說(shuō)1.1的好用,但他們保密,我也想要個(gè)ZLG/FS 1.1 版 請(qǐng)大家?guī)椭幌轮x謝。。

18樓: >>參與討論
zenist
真黑!
怪不得大伙都說(shuō)作開發(fā)板的都黑!
牛皮吹的大的很,說(shuō)這個(gè)文件系統(tǒng)怎么樣,只能學(xué)習(xí)用,害人,早知買商用的了,
-->商用的怎么買阿,價(jià)格如何阿 ?

19樓: >>參與討論
eleven11
畢竟是zlg自己開發(fā)的吧
ucLinux上的軟件是開源免費(fèi)的,但賣ucLinux的很多也就告訴你打幾個(gè)命令掛這個(gè)掛那個(gè),你要用這些協(xié)議就要用Linux,不過(guò)國(guó)內(nèi)盜版ucFS和zlgfs滿天飛,F(xiàn)AT文件系統(tǒng)在中國(guó)不值錢,單獨(dú)的NANDFlash上的寫平衡的文件系統(tǒng)才值錢,不過(guò)這個(gè)都是保密的

20樓: >>參與討論
zenist
我的關(guān)鍵問(wèn)題
我得問(wèn)題是:
  用ZLG/FS能否實(shí)現(xiàn)4字節(jié)/ms的采樣速度,并將之寫入Sd卡?
  采樣數(shù)據(jù)速度穩(wěn)定,但不能丟數(shù)據(jù)!


21樓: >>參與討論
chinagzj
ZLG/FS 1.0 版有問(wèn)題
ZLG/FS 1.0 版有問(wèn)題 說(shuō)1.1的好用,但他們保密,我也想要個(gè)ZLG/FS 1.1 版 請(qǐng)大家?guī)椭幌轮x謝ZLG。!  
急用!。。!
chinagzj@msn.com

22樓: >>參與討論
eleven11
zenist:我的cache文件
給你發(fā)了郵件

* - 本貼最后修改時(shí)間:2006-5-28 11:18:58 修改者:eleven11

23樓: >>參與討論
zenist
請(qǐng)教大俠:如何購(gòu)買商業(yè)的FS?
請(qǐng)教大俠:如何購(gòu)買商業(yè)的FS(成熟的)?
一般價(jià)格如何?
各位用過(guò)什么FS?
我的要求就是可以在前后臺(tái)系統(tǒng)中,采集數(shù)據(jù),寫入SD卡中的文件.

用過(guò)ZLG的FS,感覺(jué)就是怪,不好用,自己修改過(guò)其中幾個(gè)函數(shù),可以運(yùn)行.
就是怕不可靠,
求助  大俠 介紹用過(guò)的FS,`和怎么樣搞到?



24樓: >>參與討論
zenist
T-->eleven11
請(qǐng)教如何購(gòu)買商業(yè)FS?價(jià)格如何?

25樓: >>參與討論
liwenz
我用zlg-fs寫過(guò)幾m的文件,沒(méi)看到問(wèn)題
但我沒(méi)有測(cè)試過(guò)速度,估計(jì)你那么高的速度是達(dá)不到的,400kbit/s這是串口的速度


26樓: >>參與討論
eleven11
商業(yè)版本都很貴的
而且api也都不多,每ms向sd寫4字節(jié)?好像不可能,又不是ram,而且也不能一次寫4字節(jié)

27樓: >>參與討論
zenist
樓上
請(qǐng)教如何購(gòu)買其他的商業(yè)FS?價(jià)格如何?

28樓: >>參與討論
eleven11
賣這個(gè)的很多啊
http://embedon.com/soft.asp#2

http://www.bhrtos.com/

不過(guò)就算他說(shuō)開源了也沒(méi)用,又沒(méi)有給你設(shè)計(jì)文檔,基本沒(méi)能力修改的,如果想定制還的找他付錢,所以要需要自己的功能最還還是選擇zlgfs,畢竟設(shè)計(jì)文檔給你了,

29樓: >>參與討論
zenist
問(wèn)題解決的差不多了,謝謝各位指點(diǎn)
實(shí)測(cè)速度(寫入):
1.Camon卡(32MB) 200KB/S;
2.TOSHIBA(16MB) 22KB/S.
估計(jì)是卡的速度的問(wèn)題,前者是剛買相機(jī)帶的卡,前者比較老.


30樓: >>參與討論
zenist
心得
使用ZLG/FS,要注意Cache的使用,除了FileWrite()之外,其他的沒(méi)有必要改動(dòng),就是要注意使用.
對(duì)各個(gè)函數(shù)改動(dòng)Cache特別注意,適時(shí)回寫.

31樓: >>參與討論
eleven11
別忘了改bug
好像有幾處bug

32樓: >>參與討論
zenist
Thanks to eleven11 for your Email!
shu ru fa huai le !

33樓: >>參與討論
zenist
Bug?
(怪,輸入法字庫(kù)丟了,多虧備份了)
什么Bug?你給我的程序,還是ZLG/FS的Bug?
不過(guò),ZLG/FS確實(shí)有Bug,
--->為了方便大家使用,少走彎路(我的彎路不少阿)-->建議把Bug總結(jié)一下-->`
==>>最好是ZLG的技術(shù)支持給貼出來(lái)
===>>>小弟代與我同樣遭遇的叩謝先!

34樓: >>參與討論
liwenz
我好想弄清楚zlg/fs的cache
你們說(shuō)要貼出bug
==>>最好是ZLG的技術(shù)支持給貼出來(lái)???
我估計(jì)是不會(huì)的,zenist你不妨先貼出來(lái)
有些其實(shí)不是bug,只是沒(méi)弄懂。

我做的系統(tǒng),只是一次寫/讀一個(gè)文件
當(dāng)然,fat表肯定要cache,但其他不要
該怎么做?
1 sector or cluster
1個(gè)扇區(qū)還是1族
我對(duì)ram很緊張,所以想只1個(gè)sector,512bytes,可以嗎?

35樓: >>參與討論
zenist
TO==>>liwenz
因?yàn)樵谖业膽?yīng)用中只要求寫入數(shù)據(jù),其他的不需要,我改寫了FileWrite(),FileClose().
***********************************
** 函數(shù)名稱: FileWriteSD
** 功能描述: 寫一個(gè)扇區(qū)到文件
**
** 輸 入: src:要寫的數(shù)據(jù)
**        Handle:文件句柄
** 輸 出: RETURN_OK:成功
**        其它參考fat.h中關(guān)于返回值的說(shuō)明
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: xuzhenqiu
** 日 期: 2006年5月27日
********************************************************************************************************/
uint8 FileWriteSD(void *src,HANDLE Handle)
{
    uint32 i,j,SecIndex;
    MY_FILE *fp;
    Disk_Info *DiskInfo;
    uint8 Rt;
    Disk_RW_Parameter Pa;
    uint8 *TEMP;
    TEMP = (uint8 *)src;
    
    Rt = PARAMETER_ERR;
    fp = FileInfo + Handle;
    if (Handle >= 0 && Handle < MAX_OPEN_FILES)      /* Handle是否有效 */
    if (((fp->Flags) & FILE_FLAGS_WRITE) != 0)       /* 對(duì)應(yīng)的打開文件信息表是否已使用 */
    {
        Rt = FILE_EOF;
        if (fp->Offset <= fp->FileSize)
        {
            Rt = NOT_FIND_DISK;
                /* 獲取文件所在邏輯盤信息 */
            DiskInfo = GetDiskInfo(fp->Drive);
            if (DiskInfo != NULL)
            {
                
                /* 調(diào)整文件指針 */
                j = (fp->Offset) % (DiskInfo->SecPerClus * DiskInfo->BytsPerSec);
                
                if (j == 0)
                {
                    if (fp->Offset < fp->FileSize)
                    {
                        fp->Clus = FATGetNextClus(fp->Drive, fp->Clus);
                    }
                    else
                    {
                        i = FATAddClus(fp->Drive, fp->Clus);
                        if (i >= BAD_CLUS)
                        {
                            return DISK_FULL;
                        }
                        fp->Clus = i;
                        if (fp->FstClus == EMPTY_CLUS)
                        {
                            fp->FstClus = i;
                        }
                    }
                }               
                /* 計(jì)算數(shù)據(jù)所在扇區(qū) */
                i = j / DiskInfo->BytsPerSec;
                j = j % DiskInfo->BytsPerSec;
                SecIndex = (fp->Clus - 2) * DiskInfo->SecPerClus + DiskInfo->DataStartSec + i;
                Rt = SECTOR_READ_ERR;                
                /* 調(diào)整打開文件信息表 */
                fp->Offset += 512;
                if (fp->Offset > fp->FileSize)
                {
                    fp->FileSize = fp->Offset;
                }
                //存儲(chǔ)數(shù)據(jù)
                if(DiskInfo->DiakCommand != NULL)
                {
                    Pa.Drive = DiskInfo->Drive;
                    Pa.SectorIndex = SecIndex;
              &nb
36樓: >>參與討論
zenist
可以
在上面的這個(gè)函數(shù)里就是直接對(duì)SD卡操作,以為我在系統(tǒng)中只是寫數(shù)據(jù).
1個(gè)Cache也可以,主要是在FS內(nèi)部操作FAT,FDT時(shí)使用.
看過(guò)ZLG/FS的代碼就知道,GetCache()在分配Cache時(shí),如果沒(méi)有空閑的Cache,就會(huì)把當(dāng)前Cache回寫的.所以說(shuō),1個(gè)Cache(Sector)是可以的,只是效率不高.
注意,對(duì)文件操作完畢,調(diào)用FileClose()后,如果文件的大小變了,是需要回寫的.
還是那句話,注意適時(shí)回寫,這要靠你仔細(xì)分析FS的代碼了.(我是實(shí)在沒(méi)招了,才這樣的)

37樓: >>參與討論
liwenz
謝謝,不過(guò)我專注于read
 
38樓: >>參與討論
zenist
都差不多
 
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
ARMlpc2131中斷問(wèn)題.請(qǐng)各位幫忙解答一下
請(qǐng)教個(gè)問(wèn)題?ZC436xxx是那個(gè)公司的產(chǎn)品?
希望ZLG給LPCARM供貨情況做個(gè)說(shuō)明!
溫馨提示:關(guān)于ADS的FFT
麻煩有人知道ADS的網(wǎng)站嗎?
免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)