导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[求助]单片机读写U盘的问题[gongjie01]

 *第30405篇: [求助]单片机读写U盘的问题

  
楼 主:gongjie01 2005年3月18日13:29
 [求助]单片机读写U盘的问题
我们的单片机在读写U盘的时候遇到了问题,主要是,U盘里的数据单片机可以读,在写U盘的时候能够成功的写入文件名 
用计算机打开文件以后,里面却时空的,没有数据,有能帮忙解决的朋友我请吃饭呀 
附程序源码如下: 
printf( "Wait Udisk\n" ); 
while ( CH375DiskStatus != DISK_CONNECT ) xQueryInterrupt( ); 
mDelay100mS( ); 
mDelay100mS( ); 


for ( i = 0; i   < 10; i ++ ) { 
mDelay100mS( ); 
printf( "Ready ?\n" ); 
if ( CH375DiskReady( ) == ERR_SUCCESS ) break; 

printf( "Open\n" ); 
mCopyCodeStringToIRAM( mCmdParam.Open.mPathName, "/MY_ADC.TXT" ); 
i = CH375FileOpen( ); 
if ( i == ERR_SUCCESS ) { 
printf( "File size = %ld\n", CH375vFileSize ); 
printf( "Locate tail\n" ); 
mCmdParam.ByteLocate.mByteOffset = 0xffffffff; 
i = CH375ByteLocate( ); 
mStopIfError( i ); 

else if ( i == ERR_MISS_FILE ) { 
printf( "Create\n" ); 
i = CH375FileCreate( ); 
mStopIfError( i ); 

else mStopIfError( i ); /* 打开文件时出错 */ 
printf( "Write begin\n" ); 
i = sprintf( mCmdParam.ByteWrite.mByteBuffer, "此前文件长度= %ld 字节\xd\xa", CH375vFileSize ); 
mCmdParam.ByteWrite.mByteCount = i; 
i = CH375ByteWrite( ); 
mStopIfError( i ); 
printf( "Write ADC data\n" ); 
TR0=1; 
for ( hour = 8; hour != 20; hour ++ ) { 
month = 5; 
date = TL1 & 0x1F; 
adc = get_adc_data( ); 
adc = ( (UINT16)TH0   <  < 8 ) | TL0; 
len = sprintf( mCmdParam.ByteWrite.mByteBuffer, "%02d.%02d.%02d ADC=%u\xd\xa", (UINT16)month, date, (UINT16)hour, adc ); 
mCmdParam.ByteWrite.mByteCount = (unsigned char)len; 
i = CH375ByteWrite( ); 
mStopIfError( i ); 
printf( "Current offset ( file point ) is %ld\n", CH375vCurrentOffset ); 

mCmdParam.ByteWrite.mByteCount = 0; 
printf( "Write end\n" ); 
i = mCopyCodeStringToIRAM( mCmdParam.ByteWrite.mByteBuffer, "数据到此结束\xd\xa" ); 
mCmdParam.ByteWrite.mByteCount = i; 
i = CH375ByteWrite( ); 
printf( "Close\n" ); 
mCmdParam.Close.mUpdateLen = 1; 
i = CH375FileClose( ); 
mStopIfError( i ); 
printf( "Take out\n" ); 
while ( CH375DiskStatus != DISK_DISCONNECT ) xQueryInterrupt( ); 
mDelay100mS( ); 
mDelay100mS( ); 

}

  
2楼:gongjie01 2005年3月18日14:34
 怎么没人理呀
怎么没人理呀

>>>>>>对该主题发表你的看法

本主题贴数2,分页: [第1页]


[上一篇主题]:EBD9200提供更多的图形界面库存。

[下一篇主题]:求助、:  我用philips的51驱动A/D,D/A转换器,用伟福仿真器跑很正