打印

STM32 USB Get_report , Set_report 的问题

[复制链接]
4529|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lattice1|  楼主 | 2011-1-19 17:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
参考了些例子,还有些不明白的地方:



1: /*** GET_REPORT ***/
  else if((Type_Recipient == (CLASS_REQUEST | INTERFACE_RECIPIENT))
        && RequestNo == GET_REPORT)
  {
    if (
数据未准备好)
      return USB_NOT_READY;
    CopyRoutine = CustomHID_GetReport;
  }

(数据未准备好) 这个标准在什么地方设置准备好了?



2: 在数据准备好之后执行下述操作:
    pInformation->Ctrl_Info.CopyData = CustomHID_GetReport;
    pInformation->Ctrl_Info.Usb_wOffset = 0;
    CustomHID_GetReport(0);
    pInformation->Ctrl_Info.PacketSize = pProperty->MaxPacketSize;
    DataStageIn();

  在什么地方操作这些?  DataStageIn(); 这个函数是做什么的?库里面没有看见这个函数。

3:Set_report 有什么作用?




沙发
香水城| | 2011-1-19 17:22 | 只看该作者
1)你自己的数据,你自己给标准。
2)在什么地方操作都可以。DataStageIn()在库里,你再仔细找找。
3)请看HID的协议。

使用特权

评论回复
板凳
lattice1|  楼主 | 2011-1-19 18:06 | 只看该作者
1. 我在CustomHID_GetReport里面process_flag = 1;
else if((Type_Recipient == (CLASS_REQUEST | INTERFACE_RECIPIENT))
        && RequestNo == GET_REPORT)
  {
    if (process_flag = 0)
      return USB_NOT_READY;
    CopyRoutine = CustomHID_GetReport;

    下面的操作可以加在这里吧??

    pInformation->Ctrl_Info.CopyData = CustomHID_GetReport;  //
    pInformation->Ctrl_Info.Usb_wOffset = 0;
    CustomHID_GetReport(0);
    pInformation->Ctrl_Info.PacketSize = pProperty->MaxPacketSize;
    DataStageIn();

  }

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

300

帖子

3

粉丝