主题:请教个U盘的问题

  共有33463人关注过本帖    
sdfa
1楼


请教个U盘的问题  发帖心情 Post By:2007-10-25 17:10:00   [只看该作者]

我使用的是贵公司的ETR232i V11模块 带USB的,

当我使用access()等FILE相关函数时,如果子盘忘记插上或者没有插好,系统就直接down掉,显示retry了。

请问下 如何在程序中怎样检测子盘是否安装?因为现在我无法通过任何一个文件函数的返回值来检测子盘是否存在

谢谢!

  单帖管理 | 引用 | 回复 回到顶部
sdfa
2楼


  发帖心情 Post By:2007-10-25 17:13:00   [只看该作者]

如果贵公司有自己的检测U盘的函数 麻烦提供一下 再次感谢

  单帖管理 | 引用 | 回复 回到顶部
x10
3楼


  发帖心情 Post By:2007-10-26 11:43:00   [只看该作者]

请告诉你的email,我把检测程序发给你。

  单帖管理 | 引用 | 回复 回到顶部
x10
4楼


  发帖心情 Post By:2007-10-26 18:44:00   [只看该作者]

已发到你的邮箱,请查收。

  单帖管理 | 引用 | 回复 回到顶部
sdfa
5楼


  发帖心情 Post By:2007-10-29 9:19:00   [只看该作者]

还是不行 IsUSBOnline()和ETA608IsOnline()返回始终为0

  单帖管理 | 引用 | 回复 回到顶部
x10
6楼


  发帖心情 Post By:2007-10-29 10:44:00   [只看该作者]

是吗?请告诉模块所配置的LCD屏的型号,我们在这边也测试一下。我们过去反复测试过,代码肯定是工作的。

  单帖管理 | 引用 | 回复 回到顶部
sdfa
7楼


  发帖心情 Post By:2007-10-29 11:03:00   [只看该作者]

etr232i v11模块 LCD是192*64的

  单帖管理 | 引用 | 回复 回到顶部
x10
8楼


  发帖心情 Post By:2007-10-29 11:46:00   [只看该作者]

由于ETR232i运行太快,USB还没来得及反映,所以程序测试结果不完全对,只需加一点延时即可解决这个问题:

#include 
#include 
#include 
#include 

unsigned int PortBaseAddr = 0x300;

unsigned int IsUSBOnline( void )
{
    int           i1;
    unsigned char ub1;

    outportb( PortBaseAddr + 1, 0x0a );
    //delay for a while (2us for ETR232i)
    for( i1=0; i1<10; i1++ );

    outportb( PortBaseAddr, 0x20 );
    //delay for a while (2us for ETR232i)
    for( i1=0; i1<10; i1++ );

    ub1 = inportb( PortBaseAddr );
    if( ub1 & 0x20 ) return 1;
    return 0;
}

unsigned int ETA608IsOnline( )
{
    int           i1;  
    unsigned char ub1, ub2;

    outportb( PortBaseAddr + 1, 0x06 );
    //delay for a while (2us for ETR232i)
    for( i1=0; i1<10; i1++ );

    ub1 = 0x55;
    outportb( PortBaseAddr, ub1 );
    //delay for a while (2us for ETR232i)
    for( i1=0; i1<10; i1++ );
    
    ub2 = inportb( PortBaseAddr );
    if( ub1 == ~ub2 ) return 1;
    return 0;
}

int main(void)
{
   int  i1;

   for(   )
   {
      i1 = IsUSBOnline( );
      if( i1 ) printf( "USB is online\n" );
      else     printf( "USB is not found!\n" );
   }

   return 0;
}




  单帖管理 | 引用 | 回复 回到顶部
sdfa
9楼


  发帖心情 Post By:2007-10-29 16:36:00   [只看该作者]

是这个原因 问题已解决 非常感谢

  单帖管理 | 引用 | 回复 回到顶部

返回首页

请教个U盘的问题

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: