ch375已經(jīng)執(zhí)行了 初始化 和測試工作 ,但是u盤只閃了下就沒有反應(yīng)了 ch375支不支持usb2.0的u盤? 串口問題:單片機(jī)已經(jīng)執(zhí)行了串口程序,但計算機(jī)沒接受到,怎么回事?
測試命令是否通過?能不能檢測到U盤的連接? 支持usb2.0的U盤,串口設(shè)置是否正確.
支持. 初始化和測試有沒有通過?CH375工作在并口還是串口模式?檢測到U盤后要對U盤進(jìn)行初始化.
i = CH375LibInit( ); mStopIfError( i ); 來進(jìn)行初始化375 unsigned char c; CH375_WR_CMD_PORT( CMD_CHECK_EXIST ); CH375_WR_DAT_PORT( 0x55 ); c = CH375_RD_DAT_PORT( ); while ( c != 0xaa ) { LED_OUT_ACT( ); mDelaymS(); LED_OUT_INACT( );//出錯燈閃 mDelaymS( ); } //測試375 結(jié)果發(fā)現(xiàn)單片機(jī)都沒進(jìn)入mStopIfError和while循環(huán)中。。。 我用的是并口,U盤初始化,怎么初始化,我是按照CH375HFT.C中程序來運(yùn)行單片機(jī)的
for ( i = 0; i < 5; i ++ ) { mDelaymS( 100 ); if ( CH375DiskReady( ) == ERR_SUCCESS ) break; } 我用led燈來檢測程序進(jìn)度,i = CH375LibInit( ); mStopIfError( i ); 來進(jìn)行初始化375 unsigned char c; CH375_WR_CMD_PORT( CMD_CHECK_EXIST ); CH375_WR_DAT_PORT( 0x55 ); c = CH375_RD_DAT_PORT( ); while ( c != 0xaa ) { LED_OUT_ACT( ); mDelaymS(); LED_OUT_INACT( );//出錯燈閃 mDelaymS( ); } //測試375 結(jié)果發(fā)現(xiàn)單片機(jī)都沒進(jìn)入mStopIfError和while循環(huán)中。。。 我用的是并口,U盤初始化,怎么初始化,我是按照CH375HFT.C中程序來運(yùn)行單片機(jī)的
for ( i = 0; i < 5; i ++ ) { mDelaymS( 100 ); if ( CH375DiskReady( ) == ERR_SUCCESS ) break; } 我用led燈來監(jiān)測程序進(jìn)度,發(fā)現(xiàn)單片機(jī),沒有跳出這個for循環(huán),自己得出結(jié)論是不是因?yàn)镃H375DiskReady( ) 得不到值?。。?!
串口設(shè)置,就是 SCON = 0x50; PCON = 0x80; TMOD = 0x20; TH1 = 0xf3; /* 12MHz晶振, 4800bps */ TR1 = 1; TI = 1; 我得是1212MHz晶振的所以用串口調(diào)試助手設(shè)置4800bps來接收數(shù)據(jù),但是計算機(jī)的串口調(diào)試助手接收不到數(shù)據(jù), 很郁悶沒有串口,測試很難看到出錯原因
CH375DiskReady( ) 正常返回值是0,如果沒有返回值的話,先測試一下你的磁盤數(shù)據(jù)緩沖區(qū)是否可以正常讀寫?順便問一下,你用的是什么單片機(jī)?rom,ram各是多少?
用的是AT29C55,RAM:20K,外擴(kuò)32K62256XRAM
數(shù)據(jù)緩沖區(qū)是否正常讀寫怎么測試呢?
先寫入數(shù)據(jù),再讀出來,比較是否一致
建議還是不要用串口了,太麻煩,要考慮的東西比并口的多。 串口適合有經(jīng)驗(yàn)的用戶使用!