• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >嵌入式开发 > 在download固件程序的时候出现的问题[driverstudio开发]

在download固件程序的时候出现的问题[driverstudio开发]

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了driver download,dell driver download,hp driver download,download obs studio,r studio download等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 在download固件程序的时候出现的问题[driverstudio开发]
描述:

我用ds生成了一个驱动,然后根据ds提供的ezusb的例子,添加了一些代码。
在downloadfirmware这个函数中,先当下去了loader这个程序,然后再当一个dev_io程序(有cypress提供的例子),用drivermonitor察看,发现loader成功当下去,但当dev_io的时候就没反应了。然后,再拔出设备,才会出现“failed to  download dev_io”的信息。
NTSTATUS USBDRMDevice::DownloadFirmware(void)
{
t << "Entering DownloadFirmware\n";
NTSTATUS status = STATUS_SUCCESS;
Reset8051(1);
status = DownloadIntelHex(loader);
if( !NT_SUCCESS(status) )
return status;
t<<"Download loader OK!\n";
Reset8051(0);
status = DownloadIntelHex(dev_io);
if( !NT_SUCCESS(status) )
{
t << "Fail to Download dev_io\n";
return status;
}
else
{
t << "Download dev_io OK!\n";
}
Reset8051(1);
Reset8051(0);
return status;
}
downloadintelhex调用了下面的函数
NTSTATUS USBDRMDevice::DownloadRAM(PINTEL_HEX_RECORD pHexRecord, bool fExternal)
{
t << "Entering DownloadRAM\n";
NTSTATUS status = STATUS_SUCCESS;
URB Urb;
while( 0 == pHexRecord->Type )
{
if( fExternal ? 
                      (! INTERNAL_R(pHexRecord>Address )) : 
                      (INTERNAL_RAM( pHexRecord->Address ))  
  )
{
   m_Lower.BuildVendorRequest(
pHexRecord->Data,
pHexRecord->Length,
0,
static_cast<UCHAR>( 
fExternal ?
                                              ANCHOR_LOAD_EXTERNAL : 
                                              ANCHOR_LOAD_INTERNAL),
pHexRecord->Address,
FALSE, //default
         FALSE, //default
NULL, //default
0, //default
URB_FUNCTION_VENDOR_DEVICE,//default
&Urb
);
   status = m_Lower.SubmitUrb(&Urb);
   if( !NT_SUCCESS(status) )
    {
      t << " SubmitUrb Failed ! \n";
      break;
     }
   else
    {
      t << " SubmitUrb OK! \n";
      break;
     }
    }
    pHexRecord++;
}
return status;
}
SubmitUrb这个函数既没返回成功,也没返回失败?
它将irp传到底层的驱动,但我如何知道irp处理的情况?
irp到底是如何进行工作的?
这个问题已经搞了很久了,一直没搞定,还请各位指点指点!急啊!


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 在download固件程序的时候出现的问题[driverstudio开发]

相关文章

  • 2017-06-05 关于vxworks的两个问题
  • 2017-06-05 请教下串口的问题
  • 2017-06-05 mirror问题
  • 2017-06-05 代码运行问题
  • 2017-06-05 请教openwrt系统gpio控制问题
  • 2017-06-05 WINCE60设备唯一码的写入和读取NANDFLASH
  • 2017-06-05 AD8642第二级运放工作不正常
  • 2017-06-05 GSM模块如何接电话,打电话
  • 2017-06-05 WINCE20读写数据库怪问题
  • 2017-06-05 串口通信下的50V电平跟33V电平如何简单地进行转换?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 看看下面的程序哪里的语法错误
    • OK6410+摄像头采集图像+wifi传入电脑
    • STM32F407+USB3300使用微雪HID例程计算机识别为unknowndevice
    • ARM裸机开发,这么写eeprom的初始化程序是否合理?
    • linux下重定向标准输出的函数??
    • 三星4412,如何让Android禁止锁屏幕,求解答?
    • 这个答案是不是错了!!!!!!!!!
    • 求推荐串口电压转33V的芯片
    • rs232收发文件和命令
    • ARM处理器系列

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有