U盤插拔4次后死在庫里面

技術支持這么差么?

要你們一個庫文件遲遲不發(fā),發(fā)EMAIL給你們也沒有反應,要你們給個權限下載也沒給,你們做這的事情就這么難?就一心想賣多少芯片,不樂于幫客戶解決問題?在使用你們的芯片時遇到問題就這么難得到答復,試想,問題沒解決誰敢用你們的芯片?能否提供MSN之類的支持呢?你們以庫的方式保護你們的知識產權這個可以理解,但庫的方式會帶來使用方發(fā)現(xiàn)問題解決問題的難度,你們技術支持就這么難做么?一個EMAIL也懶得回,一個簡單的操作也不懶得去做?

1. 希望你們能提供最新的LIB CH375LIB.ZIP 2006-03-18 1.57MB 2.9 · CH375的U盤文件級操作子程序庫及相關例子源程序 支持FAT12/FAT16/FAT32的閃存盤和移動硬盤 支持MCS51/AVR/MSP430/ARM/80X86等單片機和DSP )

2. 能否提供LIB的源程序 我使用51的芯片,想使用CH375HF6.LIB,另請問是否與CH375HF4.LIB兼容?我至少能獲得哪個源代碼呢(不只是LIB的庫文件),我在論壇中看到有朋友已經獲得,不知能否給我EMAIL一份。 MCS51 單片機的增強版子程序庫,文件名是CH375HF6.LIB,可以在訂購芯片或者評估板時提供。子目錄是FILELIB6,提供多個示例程序。

3. 聯(lián)系方式: XJW@3core.com 個人信息保護,已隱藏

你要是決的上網申請速度慢的話,你可以打電話給我們銷售人員,他們會給你下載權限的,還有就上庫6兼容庫4,你可以放心的使用


這個項目我只能利用晚上時間做,到今天已是第4天了,昨天晚上弄到凌晨2點,昨天使用的是CH375HF4.LIB,今天晚上又用CH375HF6.LIB試過了,

程序工作過程大至如下(3-6為循環(huán)): 1. 插入U盤 2. CH375初始化 3. CH375DiskSize( ); 4. CH375FileOpen( ); // List file 5. CH375FileCreate( ); 6. CH375FileClose( );

問題出在哪了呢?

不會是U盤兼容性的問題吧?先前一直測試的U盤型號為中科存儲的金存太學士,64MB。使用CH375HF4.LIB時執(zhí)行3次循環(huán)后,在第4次循環(huán)執(zhí)行CH375FileCreate( )時死于庫中;使用CH375HF6.LIB時執(zhí)行5次循環(huán)后,在第6次循環(huán)執(zhí)行CH375FileCreate( )時死于庫中 后改用另一個U盤(UFD-64M),同樣是64MB,測試,也會出現(xiàn)以上的現(xiàn)象,但正常的循環(huán)次數(shù)要多些

測試程序:EXAM6,稍做修改,可由串口信息看出操作過程(與上段描述稍有不同)

串口輸出信息 ===================================================== 第一次循環(huán) ----------------------------------------------------- Wait Udisk Ready ? DiskSize TotalSize = 62 MB Open List file /* Create Write Close Erase Take out

第n次循環(huán)(屈指可數(shù)的幾次) ----------------------------------------------------- Wait Udisk Ready ? DiskSize TotalSize = 62 MB Open List file /* Create Write Close Erase // 不再繼續(xù),死于庫中??赡艹霈F(xiàn)的現(xiàn)象之一:U盤文件系統(tǒng)被破外(UFD-64M),將這個U盤插入計算機后,機器變得很慢(試過兩臺機),格式化U盤很慢,約3~4分鐘;可能出現(xiàn)的現(xiàn)象之二:U盤中原有的某文件消失,U盤可在計算機中操作 =====================================================

測試,繼續(xù)中……

發(fā)現(xiàn)死于以下兩條函數(shù): 1. CH375FileCreate( ); 2. CH375FileErase( ); 創(chuàng)建相同文件名的文件時是否也會執(zhí)行此函數(shù)?

問題在哪呢,死于庫中 大概是一個標志位的判斷處無法過去

C:0x21BD 22 RET C:0x21BE AF27 MOV R7,0x27 C:0x21C0 AE26 MOV R6,0x26 C:0x21C2 AD25 MOV R5,0x25 C:0x21C4 AC24 MOV R4,0x24 C:0x21C6 EC MOV A,R4 C:0x21C7 4D ORL A,R5 C:0x21C8 4E ORL A,R6 C:0x21C9 4F ORL A,R7 C:0x21CA 6056 JZ C:2222 C:0x21CC 8F4F MOV 0x4F,R7 C:0x21CE 8E4E MOV 0x4E,R6 C:0x21D0 8D4D MOV 0x4D,R5 C:0x21D2 8C4C MOV 0x4C,R4 C:0x21D4 E527 MOV A,0x27 C:0x21D6 24FF ADD A,#0xFF C:0x21D8 F527 MOV 0x27,A C:0x21DA E526 MOV A,0x26 C:0x21DC 34FF ADDC A,#0xFF C:0x21DE F526 MOV 0x26,A C:0x21E0 E525 MOV A,0x25 C:0x21E2 34FF ADDC A,#0xFF C:0x21E4 F525 MOV 0x25,A C:0x21E6 E524 MOV A,0x24 C:0x21E8 34FF ADDC A,#0xFF C:0x21EA F524 MOV 0x24,A C:0x21EC E4 CLR A C:0x21ED F548 MOV 0x48,A C:0x21EF F547 MOV 0x47,A C:0x21F1 F546 MOV 0x46,A C:0x21F3 F545 MOV 0x45,A C:0x21F5 7F4C MOV R7,#0x4C // 回到此處 C:0x21F7 E4 CLR A C:0x21F8 FD MOV R5,A C:0x21F9 120798 LCALL C:0798 C:0x21FC EF MOV A,R7 C:0x21FD 6001 JZ C:2200 C:0x21FF 22 RET C:0x2200 E548 MOV A,0x48 C:0x2202 2401 ADD A,#0x01 C:0x2204 F548 MOV 0x48,A C:0x2206 E4 CLR A C:0x2207 3547 ADDC A,0x47 C:0x2209 F547 MOV 0x47,A C:0x220B E4 CLR A C:0x220C 3546 ADDC A,0x46 C:0x220E F546 MOV 0x46,A C:0x2210 E4 CLR A C:0x2211 3545 ADDC A,0x45 C:0x2213 F545 MOV 0x45,A C:0x2215 300EDD JNB 0x21.6,C:21F5 // 此處無法繼續(xù)向下,在此循環(huán) C:0x2218 12259A LCALL C:259A

庫里的東西我是不想去深入研究了,會要人命的,想要你們提供這個庫的源碼,碰了一鼻子的灰,你們的銷售非得要我買你們2K個CH375才會免費提供源碼,或花900RMB來購買。我現(xiàn)在灰頭灰臉的,碰上這問題無法繼續(xù)下去了。錢我是不會出的了,我的程序沒調試成功,沒有找到問題在哪也許一個也不會再買了。不知你們能否提供技術支持,至少能給我一段與CH375FileErase( )函數(shù)相關的代碼,請盡快回復(我看你們對EMAIL與對帖子的回應總是比較的遲鈍,或者說是不怎么重視,那種你們認為有量的公司也許例外)。在寫這些東西的時候,我已經在考慮使用SYPRESS的SL811了,不是我不相信國產的芯片,我想說的是你們的技術支持,這種以LIB庫封裝了的技術支持做得讓我們做開發(fā)的太難做了。 至少一種奇怪的現(xiàn)象是問你們技術支持能否提供些資料,回答竟是找銷售的,你們銷售是賣芯片的還是提供技術支持的?你們是賣開發(fā)板還是賣文件系統(tǒng)的還是賣芯片的? 與你們銷售打電話很窩心了,有很多想罵人的話咱就不說了,也不是想罵誰,就覺得你們這種做法是與客戶過不去,更是與自家公司過不去,你們老大的觀念有問題,你們是設計、生產芯片的公司,希望不要仿效周立功的做法,他們是專賣芯片的,他們的芯片是PHILIS等芯片巨頭公司生產的,他們的芯片不愁賣不出去,我就不信你們的芯片也不愁賣不出去,你們究竟是靠賣芯片賺錢?還是想賺那點本應該由你們提供技術支持的那點文件系統(tǒng)的小錢?這樣做下去你們會失去很多客戶的。一個弱小的公司服務不要太死板了,否則只有死路一條。 亂說了一通,不想浪費我的口水了,說錯了的地方,你們可以解釋,也請不要罵我。這兩天我的問題解決不了,我可能會沒那么再關注這個論壇了,我一直希望國產的芯片公司快速成長起來,忠心的祝愿你們生意越來越好


講得都有道理啊,如果不提供庫的源代碼的話,想學好這塊芯片確實難了,還有如果把整個子程序庫搬進去的話,最后生成HEX文件是很大的,很耗費單片機的ROM。找塊便宜的都不夠容量了。我也十分渴望能得到貴公司的子程序庫源代碼。 我的郵箱是: panzhx◎126.com


有道理,支持,我比你慘多了,快一個月了,我的項目還沒完,調用CH375DiskReady( ); 程序總是停在這個地方,void xQueryInterrupt( void ) /* 查詢CH375中斷并更新中斷狀態(tài) */ { 。。。。 while ( CH375_INT_WIRE ){ /* 如果CH375的中斷引腳輸出高電平則等待 */

} xWriteCH375Cmd( CMD_GET_STATUS ); /* 獲取當前中斷狀態(tài),發(fā)出命令后至少延時2uS */ CH375IntStatus = xReadCH375Data( ); /* 獲取中斷狀態(tài) */ if ( CH375IntStatus == USB_INT_DISCONNECT ) CH375DiskStatus = DISK_DISCONNECT; /* 檢測到USB設備斷開事件 */ else if ( CH375IntStatus == USB_INT_CONNECT ) CH375DiskStatus = DISK_CONNECT; /* 檢測到USB設備連接事件 */ }

非常需要源文件,可他們不給。如果我的問題解決不了,我也要換芯片了。

惱火。


我試了EXAM6的程序,U盤插拔了10幾次都是一樣的,沒有出現(xiàn)你說的那種情況??!你如果操作錯誤的話它會提示錯誤代碼的,你就試下我給你發(fā)的文件看可以不可以,要是可以的話,那就說明你改的軟件有點問題了。


多謝回復,EMAIL已收到,我中午回去試,下午會有結果


1. 我硬件設計的片外RAM地址: 0000H~7FFF

2. CH375的地址由CPLD(XC9572XL 注:3V低壓器件)實現(xiàn),定義在: 0x8000 - 0x8001 COMMAND Addr: 0x8001 DATA Addr: 0x8000

3. 故定義CH375端口地址如下: #define CH375_CMD_PORT_ADDR 0x8001 /* CH375命令端口的I/O地址 */ #define CH375_DAT_PORT_ADDR 0x8000 /* CH375數(shù)據端口的I/O地址 */

4. 與你們的文件不同之處僅在CH375的端口地址 #define CH375_CMD_PORT_ADDR 0xBCF1 /* CH375命令端口的I/O地址 */ #define CH375_DAT_PORT_ADDR 0xBCF0 /* CH375數(shù)據端口的I/O地址 */

問題(問題一)出在這么?我沒有通讀你們提供的所有文檔,是否0x8000-0xBCEF地址之間你們還有其它方面的定義?如果有定義,并有文檔說明,那是我的問題,沒有仔細閱讀你們的文檔(項目做得太匆忙了,各文檔只是快速流覽了一遍);如果不是,那根本問題在哪呢?

5. 我修改CH375的端口地址為0xBCF1與0xBCF0后,測試插拔U盤幾十次,沒有出問題,但至插拔U盤82次左右,出現(xiàn)如下問題: 程序在以下語句等待,U盤插入后沒有反應,芯片ACT腳外接LED不亮,程序復位運行后亦如此 while ( CH375DiskStatus != DISK_CONNECT ) xQueryInterrupt( ); /* 查詢CH375中斷并更新中斷狀態(tài),等待U盤插入 */ C:0x286A 20B2FD JB INT0(0xB0.2),xQueryInterrupt(C:286A) // 程序在此地址死等 C:0x286D 90BCF1 MOV DPTR,#CH375_CMD_PORT(0xBCF1) C:0x2870 7422 MOV A,#0x22 C:0x2872 F0 MOVX @DPTR,A C:0x2873 534F80 ANL 0x4F,#P0(0x80) C:0x2876 E54F MOV A,0x4F C:0x2878 6003 JZ C:287D C:0x287A E4 CLR A C:0x287B F54F MOV 0x4F,A C:0x287D 90BCF0 MOV DPTR,#CH375_DAT_PORT(0xBCF0) C:0x2880 E0 MOVX A,@DPTR C:0x2881 F54F MOV 0x4F,A C:0x2883 E54F MOV A,0x4F C:0x2885 B41604 CJNE A,#0x16,C:288C C:0x2888 752E01 MOV 0x2E,#0x01 C:0x288B 22 RET

芯片硬復位(重新上電)后又正常 出現(xiàn)這個問題(問題二)的原因是什么?是否是插拔誤操作引起?我需再做類似的測試

6. 能否提供你們LIB庫(CH375HF6.LIB)的頭文件以供參考?以便對庫中變量的定義有所了解,最好是能提供源碼了,這樣大家用過一次之后,感覺可以的話,還有可能用第二次第n次,完全掌控程序的所有資源對我們放心大膽的使用你們的芯片是有幫助的,如果芯片沒什么BUG,工程師們會喜歡使用這個芯片的


首先需要明確的是你的地址完全取決于你的硬件電路,你如果出現(xiàn)地址問題的話,那可能是你的譯碼電路有關系,同時,你在插拔U盤的時候要注意你的U盤插拔之間的時間不能太短,太短的話可能有影響。


地址的定義,譯碼電路的設計我是比較有把握的,如果真是地址的問題,我會用示波器再來仔細觀察各關鍵信號的波形,我一直沒有懷疑到地址硬件譯碼這塊去,再說我的譯碼電路的地址也很簡單,0x8000 - 0x800F為外圍器件地址。譯碼電路的設計,0x8001與0xBCF1對外部器件的操作地址是一樣的,0x8000與0xBCF0對外部器件的操作地址是一樣的。今天我并沒有對CPLD做任何修改,只是改了那兩個我從未懷疑過的CH375端口地址(例子程序中的0xBCF1與0xBCF0),對這四個地址的操作我晚上用示波器做仔細比對。

至少有些進展了! :)


測試中……

U盤插拔120次沒有出現(xiàn)問題。晚上繼續(xù),我會仔細檢察我的譯碼電路(CPLD)。前幾天因ISE7.1的BUG害我在這上面花了差不多兩個晚上,后安裝SP4后基本解決問題,如果再不行我用ISE6.3來做,希望我寫的一些東西對正在做CH375的朋友有一些參考價格,多謝hcn!

為便于分析問題,能否提供LIB庫(CH375HF6.LIB)的頭文件以供參考?


頭文件就是CH375HF6.H啊


知道了,所有的定義都在里面么(應當有些頭文件只包含在庫中吧,我做過庫并有包含庫的項目,程序也有50K左右)

最好能給份LIB庫的源代碼,也許你們的源碼也不完全由自己開發(fā)的吧,也有來自網上的東西吧

今后使用過程中還有可能會出現(xiàn)一些問題,無源碼解決問題太慢了,而且還要不停的來麻煩你們。


昨天晚上又測了一個晚上,用泰克100M的示波器測的

我的硬件,地址譯碼上是使用了A15,A3,A2,A1,A0 也就是說 0x8000 - 0x8010 - 0x8020 - 0x8030 …… 0xFFE0 - 0xFFF0 是一樣的 DATA_Addr 0x8001 - 0x8011 - 0x8021 - 0x8031 …… 0xFFE1 - 0xFFF1 是一樣的 CMD_Addr 0x8002 - 0x8012 - 0x8022 - 0x8032 …… 0xFFE2 - 0xFFF2 是一樣的 0x8003 - 0x8013 - 0x8023 - 0x8033 …… 0xFFE3 - 0xFFF3 是一樣的 …… 0x800E - 0x801E - 0x802E - 0x803E …… 0xFFEE - 0xFFFE 是一樣的 0x800F - 0x801F - 0x802F - 0x803F …… 0xFFEF - 0xFFFF 是一樣的

比較了地址0x8000與0xBCF0,0x8001與0xBDF1這兩對地址對CH375操作的波形是完全一樣,為什么我定義端口地址為0xBCF0,0XBDF1或0xFFF0,0xFFF1都沒有題,而定義為0x8000,0x8001就會死于庫中呢(可能還有些地址不能用),并且對于這種情況,怎么分析調試下去?如果有源碼就可跟蹤下去,從而找出問題所在(不排除是我的軟硬件問題)

我希望今天能找到問題的根本原因,并繼續(xù)做下去,要不就算用你們提供的地址來做,做出來的東西有可能會存在BUG的


800X和BXXX地址是否效果相同,要看你如果產生CH375的CS以及A0 如果是用P2.7反相產生CS、用P2.0作為A0則一樣(除非還有其它外圍使用P2.6-P2.2之間的一根線做片選沖突) 另外,硬件電路如何構成也有關系,如果是臨時搭的電路且連線較長20CM以上,信號線間會有干擾不穩(wěn)定 頻繁測試硬件插拔,要求硬件電路有電流限制措施(實測剛插盤時峰值沖擊電流幾安培),抗干擾措施, 還有連接和斷開的時間不要短于1秒(要考慮插拔時的抖動、上電延時、有的USB插座還偶你接觸不良...)


[Emot]27[/Emot]0


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频