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

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

?? usb_istr.c

?? STM32不完全手冊 例程源碼 29個
?? C
字號:
/******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
* File Name          : usb_istr.c
* Author             : MCD Application Team
* Version            : V2.2.0
* Date               : 06/13/2008
* Description        : ISTR events interrupt service routines
********************************************************************************
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

/* Includes ------------------------------------------------------------------*/
#include "usb_type.h"
#include "usb_regs.h"
#include "usb_pwr.h"
#include "usb_istr.h"
#include "usb_init.h"
#include "usb_int.h"

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
volatile u16 wIstr;  /* ISTR register last read value */
volatile u8 bIntPackSOF = 0;  /* SOFs received between 2 consecutive packets */

/* Extern variables ----------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
/* function pointers to non-control endpoints service routines */
void (*pEpInt_IN[7])(void) =
  {
    EP1_IN_Callback,
    EP2_IN_Callback,
    EP3_IN_Callback,
    EP4_IN_Callback,
    EP5_IN_Callback,
    EP6_IN_Callback,
    EP7_IN_Callback,
  };

void (*pEpInt_OUT[7])(void) =
  {
    EP1_OUT_Callback,
    EP2_OUT_Callback,
    EP3_OUT_Callback,
    EP4_OUT_Callback,
    EP5_OUT_Callback,
    EP6_OUT_Callback,
    EP7_OUT_Callback,
  };


/*******************************************************************************
* Function Name  : USB_Istr
* Description    : ISTR events interrupt service routine
* Input          : None.
* Output         : None.
* Return         : None.
*******************************************************************************/
void USB_Istr(void)
{

  wIstr = _GetISTR();

#if (IMR_MSK & ISTR_RESET)
  if (wIstr & ISTR_RESET & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_RESET);
    Device_Property.Reset();
#ifdef RESET_CALLBACK
    RESET_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_DOVR)
  if (wIstr & ISTR_DOVR & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_DOVR);
#ifdef DOVR_CALLBACK
    DOVR_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_ERR)
  if (wIstr & ISTR_ERR & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_ERR);
#ifdef ERR_CALLBACK
    ERR_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_WKUP)
  if (wIstr & ISTR_WKUP & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_WKUP);
    Resume(RESUME_EXTERNAL);
#ifdef WKUP_CALLBACK
    WKUP_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_SUSP)
  if (wIstr & ISTR_SUSP & wInterrupt_Mask)
  {

    /* check if SUSPEND is possible */
    if (fSuspendEnabled)
    {
      Suspend();	  
    }
    else
    {				   
     /* if not possible then resume after xx ms */
      Resume(RESUME_LATER);
    }
    /* clear of the ISTR bit must be done after setting of CNTR_FSUSP */
    _SetISTR((u16)CLR_SUSP);
#ifdef SUSP_CALLBACK
    SUSP_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_SOF)
  if (wIstr & ISTR_SOF & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_SOF);
    bIntPackSOF++;

#ifdef SOF_CALLBACK
    SOF_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_ESOF)
  if (wIstr & ISTR_ESOF & wInterrupt_Mask)
  {
    _SetISTR((u16)CLR_ESOF);
    /* resume handling timing is made with ESOFs */
    Resume(RESUME_ESOF); /* request without change of the machine state */

#ifdef ESOF_CALLBACK
    ESOF_Callback();
#endif
  }
#endif
  /*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
#if (IMR_MSK & ISTR_CTR)
  if (wIstr & ISTR_CTR & wInterrupt_Mask)
  {
    /* servicing of the endpoint correct transfer interrupt */
    /* clear of the CTR flag into the sub */
    CTR_LP();
#ifdef CTR_CALLBACK
    CTR_Callback();
#endif
  }
#endif
} /* USB_Istr */

/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三区免费完整视频在线观看| 久久久久国产精品免费免费搜索| 欧美成人高清电影在线| 国产精品视频一区二区三区不卡| 亚洲成人免费视| 国产一区中文字幕| 欧美日韩在线三区| 日本一区二区三区电影| 午夜精品成人在线视频| 丁香天五香天堂综合| 欧美精品一二三区| 亚洲欧美国产三级| 国产精品资源网| 日韩一区二区麻豆国产| 亚洲精品高清在线观看| 国产成人精品一区二区三区网站观看| 欧美日韩一二区| 一区二区三区在线影院| 成人深夜视频在线观看| 欧美精品一区男女天堂| 人人狠狠综合久久亚洲| 欧美三级日韩三级国产三级| 成人欧美一区二区三区小说| 国产成人午夜高潮毛片| 欧美第一区第二区| 午夜欧美2019年伦理| 欧美在线看片a免费观看| 综合电影一区二区三区 | 337p粉嫩大胆噜噜噜噜噜91av| 亚洲精品久久7777| 99视频超级精品| 中文字幕av一区二区三区高 | 久久久综合网站| 久久精品国内一区二区三区| 欧美日韩高清一区二区三区| 午夜av一区二区三区| 欧美日韩免费视频| 日韩在线一区二区三区| 欧美一区二区久久| 美脚の诱脚舐め脚责91 | 久久久不卡影院| 狠狠色丁香久久婷婷综| 久久一区二区三区四区| 国产成人在线色| 中文字幕电影一区| www.一区二区| 一区二区在线观看免费视频播放 | 国产精品久久久久9999吃药| va亚洲va日韩不卡在线观看| 亚洲欧美在线观看| 欧美午夜电影在线播放| 日日夜夜精品免费视频| 欧美成人三级电影在线| 国产成人精品三级麻豆| 亚洲欧洲一区二区在线播放| 91女厕偷拍女厕偷拍高清| 亚洲一区二区av电影| 欧美自拍丝袜亚洲| 日韩1区2区日韩1区2区| 久久精品亚洲精品国产欧美| 99视频一区二区| 日韩成人免费看| 国产欧美一区二区精品性色| 一本色道久久综合亚洲aⅴ蜜桃 | 日本欧美肥老太交大片| 久久久国产一区二区三区四区小说 | 欧美激情在线看| 欧美无砖砖区免费| 精东粉嫩av免费一区二区三区| 国产精品成人在线观看| 欧美日韩精品综合在线| 国产激情偷乱视频一区二区三区| 亚洲婷婷国产精品电影人久久| 欧美猛男超大videosgay| 国产一区二区日韩精品| 一片黄亚洲嫩模| 久久人人爽人人爽| 欧美性生活一区| 国产精品夜夜嗨| 亚洲国产成人av| 中文字幕不卡一区| 欧美一区二区国产| 色综合久久六月婷婷中文字幕| 美女尤物国产一区| 一级精品视频在线观看宜春院| 精品国产乱码久久久久久老虎| 色屁屁一区二区| 国产福利一区二区| 日韩精品电影一区亚洲| 1区2区3区精品视频| 精品裸体舞一区二区三区| 欧美中文字幕亚洲一区二区va在线| 国产一区二区三区不卡在线观看| 亚洲观看高清完整版在线观看| 欧美国产精品v| 91精品国产欧美一区二区| 色诱亚洲精品久久久久久| 国产高清不卡一区| 美女爽到高潮91| 三级久久三级久久| 亚洲第一福利一区| 亚洲欧美一区二区三区极速播放 | 欧美午夜电影在线播放| 91伊人久久大香线蕉| 国产成人精品1024| 精品写真视频在线观看| 日韩专区欧美专区| 日韩国产在线观看一区| 亚洲国产成人高清精品| 亚洲男女一区二区三区| 国产精品成人免费精品自在线观看 | 成人激情视频网站| 国产自产v一区二区三区c| 奇米影视在线99精品| 日韩制服丝袜av| 日韩激情视频在线观看| 日韩成人免费电影| 日韩成人精品在线| 美脚の诱脚舐め脚责91| 久久狠狠亚洲综合| 美女脱光内衣内裤视频久久网站 | 亚洲精品久久久蜜桃| 亚洲猫色日本管| 亚洲一区二区三区四区中文字幕| 亚洲黄色小视频| 亚洲成人av中文| 免费日本视频一区| 精品一区二区三区免费毛片爱| 国内外精品视频| 粉嫩绯色av一区二区在线观看| 春色校园综合激情亚洲| 99久久99久久久精品齐齐| 91视频国产资源| 欧美日韩午夜精品| 日韩欧美高清一区| 国产日韩v精品一区二区| 国产精品久久毛片| 亚洲午夜免费福利视频| 久久精品国产一区二区三| 国产精品一区二区三区网站| av中文字幕不卡| 欧美日韩一级片网站| 精品国产乱码久久久久久1区2区| 欧美国产1区2区| 亚洲一区在线视频| 国产一区二区中文字幕| 97精品电影院| 日韩一级在线观看| 中文字幕一区二区三区视频| 午夜视频一区二区| 国产白丝网站精品污在线入口| 色综合天天综合网天天看片| 欧美老女人在线| 日本一区二区三区在线不卡| 亚洲午夜电影在线| 国产黄人亚洲片| 欧美午夜精品久久久久久孕妇| 精品久久久久香蕉网| 亚洲天堂a在线| 激情六月婷婷久久| 欧美在线色视频| 国产精品网站在线观看| 天天操天天色综合| 成人激情小说网站| 精品久久国产老人久久综合| 亚洲精品成人a在线观看| 精品一区二区三区免费毛片爱| 欧美综合在线视频| 国产精品免费丝袜| 美女精品一区二区| 欧美亚洲国产怡红院影院| 国产精品女主播av| 免费高清视频精品| 欧美在线一二三四区| 国产精品萝li| 国产成人综合自拍| 日韩精品一区在线| 无码av免费一区二区三区试看| www.日韩av| 久久精品视频一区二区| 蜜臀av国产精品久久久久| 欧美自拍偷拍一区| 亚洲欧美一区二区三区孕妇| 国产一区二区精品久久91| 91精品国产高清一区二区三区蜜臀 | 午夜精品一区在线观看| 91在线观看成人| 国产精品国产自产拍高清av | 日韩电影一二三区| 在线视频国内一区二区| 国产精品丝袜一区| 国产成人综合在线| 国产日韩欧美高清在线| 久久99精品视频| 精品国产在天天线2019| 蜜桃av一区二区在线观看| 欧美日韩mp4| 日本在线不卡一区| 91精品国产欧美日韩| 日韩成人免费在线|