基于OHCI的USB主机 —— 批量端口复位代码

简介:
UFI 命令在执行时出现错误,需要对对应的端口进行复位处理,代码如下:
/**

 * ED 数据区数据初始化

 * @param edType ED 的类型,包括 IN OUT 两种情况

 */

short  bulkEDReset( BYTE  edType)

{

     BYTE  toggle;

   

     switch  (edType)

    {

     case  ED_OUT:

        // 复位用于发送数据的 ED

        memset (&bulkEd[0], 0,  sizeof (bulkEd[0]));

        break ;

      

     case  ED_IN:

        // 复位用于接收数据的 ED

       toggle = usbGetEdToggle(bulkEd[1]);

        memset (&bulkEd[1], 0,  sizeof (bulkEd[1]));

        if  (toggle == 0)

           bulkEd[1]. HeadP  |= 0x2;

        break ;

      

     default :

        return  -1;

        break ;

    }

     return  0;

}

 

/**

  批量读端口复位

 */

short  usbClearBulkIn( void )

{

     unsigned   char  port;

 

    bulkEDReset(ED_IN);

 

    port = funUsbGetBulkInPort();

    usbClearFeature(0x02, port | 0x80);

 

     return  0;

}

 

/**

  批量写端口复位

 */

short  usbClearBulkOut( void )

{

     unsigned   char  port;

 

    bulkEDReset(ED_OUT);

 

    port = funUsbGetBulkOutPort();

    usbClearFeature(0x02, port);

     return  0;

}






本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/320848,如需转载请自行联系原作者
目录
相关文章
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
345 0
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
|
4月前
|
安全 Linux 网络安全
Linux【安全 01】云服务器主机安全加固(修改SSHD端口、禁用登陆失败的IP地址、使用密钥登录)
Linux【安全 01】云服务器主机安全加固(修改SSHD端口、禁用登陆失败的IP地址、使用密钥登录)
180 1
|
5月前
|
Python
python 扫描局域网主机、爆破端口
python 扫描局域网主机、爆破端口
45 0
|
8月前
|
网络协议 Shell 网络安全
iOS 逆向编程(九 - 1)通过 USB 连接登录 iPhone 以及端口映射
iOS 逆向编程(九 - 1)通过 USB 连接登录 iPhone 以及端口映射
172 0
|
10月前
|
网络协议 Linux API
Linux 端口复用详解(附有案例代码)
Linux 端口复用详解(附有案例代码)
|
SQL 负载均衡 应用服务中间件
nginx安装 、分发实现多域名访问同一主机不同端口
nginx安装 、分发实现多域名访问同一主机不同端口
821 0
nginx安装 、分发实现多域名访问同一主机不同端口
|
安全 网络协议 网络安全
【工具】nmap的详细利用-主机发现-端口扫描-系统服务识别扫描-脚本利用
本文适合初学者以及想要进阶的小伙伴们,我们将从最简单的出发,一步步实现工具的精通,此外本文配有视频讲解,让您的理解更近一步。
373 0
|
网络协议 安全 Linux
腾讯云主机上部署端口敲门Knock服务
腾讯云主机上部署端口敲门Knock服务
324 0
腾讯云主机上部署端口敲门Knock服务
|
运维 关系型数据库 MySQL
利用腾讯云主机+SSH远程端口转发实现内网穿透
利用腾讯云主机+SSH远程端口转发实现内网穿透
523 0
利用腾讯云主机+SSH远程端口转发实现内网穿透
|
网络协议 Java 数据库连接
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
207 0
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP