亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hid_mouse.c

?? STM32F RFID通訊源代碼(支持雙向發送接收)
?? C
字號:
/*************************************************************************
 *
 *    Used with ICCARM and AARM.
 *
 *    (c) Copyright IAR Systems 2005
 *
 *    File name      : hid_mouse.c
 *    Description    : HID module
 *
 *    History :
 *    1. Data        : December 19, 2005
 *       Author      : Stanimir Bonev
 *       Description : Create
 *
 *    $Revision: 1.1.2.1 $
**************************************************************************/
#include "hid_mouse.h"

#pragma data_alignment=4
Int8U DataBuffer[sizeof(UsbHidDescriptor_t)];
#pragma data_alignment=4
MouseReport_t MouseReport = {0,0,0};


/*************************************************************************
 * Function Name: HidInit
 * Parameters: none
 *
 * Return: none
 *
 * Description: Init HID Mouse
 *
 *************************************************************************/
void HidInit (void)
{
  MouseReport.Buttons = 0;
  MouseReport.X = 0;
  MouseReport.Y = 0;
  USB_UserFuncRegistered(UsbClassHidDescriptor,UsbUserGetDescriptor);
  USB_UserFuncRegistered(UsbClassHidRequest,UsbUserClass);
}

/*************************************************************************
 * Function Name: UsbClassHidConfigure
 * Parameters:  void * pArg
 *
 * Return: void *
 *
 * Description: USB Class HID configure
 *
 *************************************************************************/
void * UsbClassHidConfigure (void * pArg)
{
  if((Int32U)pArg == 0)
  {
    if(UsbCoreReq(UsbCoreReqConfiquration) != 0)
    {
      // disable all class EPs
      USB_RealizeEp((USB_Endpoint_t)ReportEp ,
                     0,
                     EP_INTERRUPT,
                     EP_SLOT1);
      USB_UserFuncRegistered(NULL,ReportEp);
    }
  }
  else
  {
    // Realize Class EPs
    USB_RealizeEp((USB_Endpoint_t)ReportEp,
                   ReportEpMaxSize,
                   EP_INTERRUPT,
                   EP_SLOT1);
  }
  return(NULL);
}

/*************************************************************************
 * Function Name: UsbClassHidDescriptor
 * Parameters:  void * pArg
 *
 * Return: void *
 *
 * Description: Implement GET DESCRIPTOR
 *
 *************************************************************************/
void * UsbClassHidDescriptor (void * pArg)
{
UsbEpCtrl_t * UsbEp = (UsbEpCtrl_t *) pArg;
UsbSetupPacket_t * pData = (UsbSetupPacket_t *) UsbEp->pData;
  if (pData->wIndex.Word == 0)
  {
    switch (pData->wValue.Hi)
    {
    case Hid:
      UsbEp->Counter = SIZE_OF_HID_DESC;
      UsbEp->pData = (pInt8U)UsbHidDescriptor;
      return((void *)UsbPass);
    case HidReport:
      UsbEp->Counter = SIZE_OF_HID_MOUSE_DESC;
      UsbEp->pData = (pInt8U)mouseDescriptor;
      return((void *)UsbPass);
    }
  }
  return((void *)UsbFault);
}

/*************************************************************************
 * Function Name: UsbClassHidRequest
 * Parameters:  void * pArg
 *
 * Return: void *
 *
 * Description: Implement USB Class Hid requests
 *
 *************************************************************************/
void * UsbClassHidRequest (void * pArg)
{
UsbEpCtrl_t * UsbEp = (UsbEpCtrl_t *) pArg;
UsbSetupPacket_t *pData = (UsbSetupPacket_t *)UsbEp->pData;
  switch (pData->bRequest)
  {
  case HID_GET_REPORT:
    if((pData->wValue.Hi == 1) &&
       (pData->wIndex.Word == 1))
    {
      // Send report
      UsbEp->pData = (Int8U *)&MouseReport;
      UsbEp->Counter = ReportEpMaxSize;
      return((void *)UsbPass);
    }
    break;
  }
  return((void *)UsbFault);
}

/*************************************************************************
 * Function Name: HidSendReport
 * Parameters:  Int8U Buttons, Int8S X Int8S Y
 *
 * Return: Boolean
 *
 * Description: USB HID report send
 *
 *************************************************************************/
Boolean HidSendReport (Int8U Buttons, Int8S X, Int8S Y)
{
Int32U ReportEpSize;
  MouseReport.Buttons = Buttons;
  MouseReport.X = X;
  MouseReport.Y = Y;
  ReportEpSize = ReportEpMaxSize;
  return (USB_EpWrite((USB_Endpoint_t)ReportEp,(pInt8U)&MouseReport,&ReportEpSize) == USB_OK);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区国产| 日本不卡免费在线视频| 日韩成人一级片| 丁香五精品蜜臀久久久久99网站| 欧美三级电影在线看| 欧美国产一区在线| 日本aⅴ精品一区二区三区| 99riav久久精品riav| 久久综合九色综合欧美就去吻| 亚洲乱码精品一二三四区日韩在线 | 日韩美女主播在线视频一区二区三区| 国产精品―色哟哟| 国产在线乱码一区二区三区| 欧美午夜免费电影| 一区二区三区 在线观看视频| 成人永久免费视频| 337p日本欧洲亚洲大胆色噜噜| 亚洲一区二区av在线| 色综合亚洲欧洲| 国产成人久久精品77777最新版本| 色婷婷国产精品| 欧美国产精品中文字幕| 国产成人在线电影| 久久久久久久网| 国产综合色视频| 26uuu国产日韩综合| 久88久久88久久久| 精品欧美一区二区三区精品久久| 亚洲午夜三级在线| 精品视频一区三区九区| 亚洲国产精品久久艾草纯爱| 欧美在线短视频| 亚洲一区二区三区四区在线免费观看| 91在线播放网址| 亚洲精选视频在线| 欧美在线一二三四区| 亚洲电影中文字幕在线观看| 欧美日韩亚洲另类| 首页国产丝袜综合| 欧美大片一区二区三区| 精品午夜一区二区三区在线观看| 日韩精品自拍偷拍| 国产麻豆日韩欧美久久| 日本一区二区三区四区| 99热国产精品| 亚洲综合激情网| 欧美一区二视频| 国内外成人在线视频| 亚洲国产成人自拍| 99久久久免费精品国产一区二区| 亚洲乱码国产乱码精品精98午夜| 欧美午夜一区二区三区免费大片| 香蕉乱码成人久久天堂爱免费| 欧美一区二区在线不卡| 国产伦精品一区二区三区视频青涩| 久久精品亚洲一区二区三区浴池| 成人免费黄色在线| 亚洲一区二区三区三| 日韩欧美高清一区| 不卡的电影网站| 日韩精品1区2区3区| 久久精品亚洲麻豆av一区二区| 91麻豆福利精品推荐| 日本成人在线网站| 国产精品第一页第二页第三页| 欧美视频一区二区三区四区| 久久aⅴ国产欧美74aaa| 亚洲美腿欧美偷拍| 欧美一区二区视频免费观看| 成人综合在线观看| 奇米影视7777精品一区二区| 日本一区二区免费在线 | 日韩av在线发布| 日韩精品一级二级| 国产欧美精品一区二区色综合| 在线免费观看不卡av| 国产精一品亚洲二区在线视频| 亚洲欧美另类在线| www日韩大片| 欧美高清激情brazzers| 99久久久久久| 国产毛片精品国产一区二区三区| 一区二区高清免费观看影视大全| 久久亚洲一级片| 91.com在线观看| 日本久久一区二区| 丁香桃色午夜亚洲一区二区三区| 天堂久久久久va久久久久| 国产精品久久久久婷婷| 久久先锋影音av鲁色资源网| 制服视频三区第一页精品| 色婷婷一区二区| 成人一级片在线观看| 国内精品国产三级国产a久久| 亚洲一区电影777| 亚洲人成伊人成综合网小说| 国产日韩亚洲欧美综合| 日韩欧美一级片| 9191久久久久久久久久久| 色综合中文字幕国产 | 日韩国产高清在线| 亚洲免费av网站| 中文字幕五月欧美| 国产欧美日韩精品在线| 精品99999| 精品精品欲导航| 日韩午夜电影av| 日韩欧美精品三级| 日韩限制级电影在线观看| 欧美狂野另类xxxxoooo| 欧美色网站导航| 欧美色成人综合| 欧美情侣在线播放| 6080亚洲精品一区二区| 在线不卡中文字幕| 91精品午夜视频| 91精品国产乱| 精品欧美乱码久久久久久1区2区| 欧美一二三区在线| 精品少妇一区二区三区视频免付费| 91 com成人网| 日韩精品一区二区三区视频在线观看 | 欧美一区二区三区男人的天堂| 欧美精品视频www在线观看 | 99re视频精品| 色综合久久天天| 欧美视频第二页| 69堂精品视频| 精品免费视频一区二区| 久久久久国产精品厨房| 国产精品久久久久精k8| 亚洲一区二区三区免费视频| 日韩av中文字幕一区二区三区| 青青草一区二区三区| 国内不卡的二区三区中文字幕 | 国产日产欧美一区二区视频| 国产精品第五页| 亚洲最大成人网4388xx| 视频一区二区中文字幕| 精品一区二区免费在线观看| eeuss鲁一区二区三区| 欧美色爱综合网| 精品国产一区二区亚洲人成毛片 | 日韩欧美区一区二| 精品国产乱码久久久久久闺蜜| 国产精品天美传媒沈樵| 一区二区三区久久久| 久久aⅴ国产欧美74aaa| av一区二区久久| 欧美一级黄色录像| 中文字幕国产精品一区二区| 亚洲午夜激情av| 国产精品一区二区黑丝| 欧美伊人久久大香线蕉综合69 | 777午夜精品视频在线播放| 久久综合久久综合亚洲| 一区二区三区在线免费| 久久电影网电视剧免费观看| 一本色道a无线码一区v| 精品国产91洋老外米糕| 一区二区三区欧美| 国产精品综合av一区二区国产馆| 一本色道**综合亚洲精品蜜桃冫| 91精品麻豆日日躁夜夜躁| 欧美国产日本韩| 麻豆一区二区在线| 91激情五月电影| 欧美国产精品v| 麻豆91在线观看| 欧美日韩性生活| 国产精品久久久久9999吃药| 九色综合狠狠综合久久| 色欧美乱欧美15图片| 国产欧美日韩麻豆91| 老司机精品视频导航| 欧美美女bb生活片| 亚洲欧美一区二区三区国产精品 | 懂色av一区二区三区蜜臀 | 视频在线观看91| 日本精品一区二区三区高清| 欧美激情一区二区三区蜜桃视频| 日本成人在线看| 欧美视频第二页| 一区二区三区高清不卡| 91在线精品一区二区三区| 欧美激情综合网| 国产传媒久久文化传媒| 精品国产91亚洲一区二区三区婷婷| 日韩精品1区2区3区| 欧美日韩国产中文| 一区二区三区不卡视频| 91网站在线观看视频| 亚洲视频一区二区在线| 99久久久精品| 亚洲精品乱码久久久久久| 91片在线免费观看| 亚洲女人的天堂| 91麻豆精品在线观看| 亚洲一区二区在线观看视频| 欧洲日韩一区二区三区|