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

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

?? misc.c

?? VS1003_MP3_SPI_SDHC_FAT32
?? C
字號:
/**
  ******************************************************************************
  * @file    misc.c
  * @author  MCD Application Team
  * @version V1.1.0
  * @date    24-January-2012
  * @brief   This file provides all the miscellaneous firmware functions (add-on
  *          to CMSIS functions).
  ******************************************************************************
  * @attention
  *
  * 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.
  *
  * FOR MORE INFORMATION PLEASE READ CAREFULLY THE LICENSE AGREEMENT FILE
  * LOCATED IN THE ROOT DIRECTORY OF THIS FIRMWARE PACKAGE.
  *
  * <h2><center>&copy; COPYRIGHT 2012 STMicroelectronics</center></h2>
  ******************************************************************************
  */

/* Includes ------------------------------------------------------------------*/
#include "misc.h"

/** @addtogroup STM32L1xx_StdPeriph_Driver
  * @{
  */

/** @defgroup MISC 
  * @brief MISC driver modules
  * @{
  */

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
#define AIRCR_VECTKEY_MASK    ((uint32_t)0x05FA0000)

/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/

/** @defgroup MISC_Private_Functions
  * @{
  */
/**
  *
@verbatim
 *******************************************************************************
                   ##### Interrupts configuration functions #####
 *******************************************************************************
    [..] This section provide functions allowing to configure the NVIC interrupts 
         (IRQ).The Cortex-M3 exceptions are managed by CMSIS functions.
         (#) Configure the NVIC Priority Grouping using NVIC_PriorityGroupConfig() 
             function according to the following table.
             The table below gives the allowed values of the preemption priority 
             and subpriority according to the Priority Grouping configuration 
             performed by NVIC_PriorityGroupConfig function.
  ============================================================================================================================
    NVIC_PriorityGroup   | NVIC_IRQChannelPreemptionPriority | NVIC_IRQChannelSubPriority  | Description
  ============================================================================================================================
   NVIC_PriorityGroup_0  |                0                  |            0-15             |   0 bits for preemption priority
                         |                                   |                             |   4 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------
   NVIC_PriorityGroup_1  |                0-1                |            0-7              |   1 bits for preemption priority
                         |                                   |                             |   3 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------
   NVIC_PriorityGroup_2  |                0-3                |            0-3              |   2 bits for preemption priority
                         |                                   |                             |   2 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------
   NVIC_PriorityGroup_3  |                0-7                |            0-1              |   3 bits for preemption priority
                         |                                   |                             |   1 bits for subpriority
  ----------------------------------------------------------------------------------------------------------------------------
   NVIC_PriorityGroup_4  |                0-15               |            0                |   4 bits for preemption priority
                         |                                   |                             |   0 bits for subpriority
  ============================================================================================================================


         (#) Enable and Configure the priority of the selected IRQ Channels.  

        -@- When the NVIC_PriorityGroup_0 is selected, it will no any nested interrupt,
            the IRQ priority will be managed only by subpriority.
            The sub-priority is only used to sort pending exception priorities, 
            and does not affect active exceptions.
        -@- Lower priority values gives higher priority.
        -@- Priority Order:
            (#@) Lowest Preemption priority.
            (#@) Lowest Subpriority.
            (#@) Lowest hardware priority (IRQn position).
  
@endverbatim
*/

/**
  * @brief  Configures the priority grouping: preemption priority and subpriority.
  * @param  NVIC_PriorityGroup: specifies the priority grouping bits length. 
  *   This parameter can be one of the following values:
  *     @arg NVIC_PriorityGroup_0: 0 bits for preemption priority
  *                                4 bits for subpriority.
  *     @note When NVIC_PriorityGroup_0 is selected, it will no be any nested 
  *           interrupt. This interrupts priority is managed only with subpriority.  
  *     @arg NVIC_PriorityGroup_1: 1 bits for preemption priority.
  *                                3 bits for subpriority.
  *     @arg NVIC_PriorityGroup_2: 2 bits for preemption priority.
  *                                2 bits for subpriority.
  *     @arg NVIC_PriorityGroup_3: 3 bits for preemption priority.
  *                                1 bits for subpriority.
  *     @arg NVIC_PriorityGroup_4: 4 bits for preemption priority.
  *                                0 bits for subpriority.
  * @retval None
  */
void NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup)
{
  /* Check the parameters */
  assert_param(IS_NVIC_PRIORITY_GROUP(NVIC_PriorityGroup));
  
  /* Set the PRIGROUP[10:8] bits according to NVIC_PriorityGroup value */
  SCB->AIRCR = AIRCR_VECTKEY_MASK | NVIC_PriorityGroup;
}

/**
  * @brief  Initializes the NVIC peripheral according to the specified
  *         parameters in the NVIC_InitStruct.
  * @note   To configure interrupts priority correctly, the NVIC_PriorityGroupConfig()
  *         function should be called before.
  * @param  NVIC_InitStruct: pointer to a NVIC_InitTypeDef structure that contains
  *         the configuration information for the specified NVIC peripheral.
  * @retval None
  */
void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct)
{
  uint8_t tmppriority = 0x00, tmppre = 0x00, tmpsub = 0x0F;
  
  /* Check the parameters */
  assert_param(IS_FUNCTIONAL_STATE(NVIC_InitStruct->NVIC_IRQChannelCmd));
  assert_param(IS_NVIC_PREEMPTION_PRIORITY(NVIC_InitStruct->NVIC_IRQChannelPreemptionPriority));  
  assert_param(IS_NVIC_SUB_PRIORITY(NVIC_InitStruct->NVIC_IRQChannelSubPriority));
    
  if (NVIC_InitStruct->NVIC_IRQChannelCmd != DISABLE)
  {
    /* Compute the Corresponding IRQ Priority --------------------------------*/    
    tmppriority = (0x700 - ((SCB->AIRCR) & (uint32_t)0x700))>> 0x08;
    tmppre = (0x4 - tmppriority);
    tmpsub = tmpsub >> tmppriority;

    tmppriority = (uint32_t)NVIC_InitStruct->NVIC_IRQChannelPreemptionPriority << tmppre;
    tmppriority |=  (uint8_t)(NVIC_InitStruct->NVIC_IRQChannelSubPriority & tmpsub);
    tmppriority = tmppriority << 0x04;
        
    NVIC->IP[NVIC_InitStruct->NVIC_IRQChannel] = tmppriority;
    
    /* Enable the Selected IRQ Channels --------------------------------------*/
    NVIC->ISER[NVIC_InitStruct->NVIC_IRQChannel >> 0x05] =
      (uint32_t)0x01 << (NVIC_InitStruct->NVIC_IRQChannel & (uint8_t)0x1F);
  }
  else
  {
    /* Disable the Selected IRQ Channels -------------------------------------*/
    NVIC->ICER[NVIC_InitStruct->NVIC_IRQChannel >> 0x05] =
      (uint32_t)0x01 << (NVIC_InitStruct->NVIC_IRQChannel & (uint8_t)0x1F);
  }
}

/**
  * @brief  Sets the vector table location and Offset.
  * @param  NVIC_VectTab: specifies if the vector table is in RAM or FLASH memory.
  *   This parameter can be one of the following values:
  *     @arg NVIC_VectTab_RAM: Vector Table in internal SRAM.
  *     @arg NVIC_VectTab_FLASH: Vector Table in internal FLASH.
  * @param  Offset: Vector Table base offset field. This value must be a multiple of 0x200.
  * @retval None
  */
void NVIC_SetVectorTable(uint32_t NVIC_VectTab, uint32_t Offset)
{ 
  /* Check the parameters */
  assert_param(IS_NVIC_VECTTAB(NVIC_VectTab));
  assert_param(IS_NVIC_OFFSET(Offset));  
   
  SCB->VTOR = NVIC_VectTab | (Offset & (uint32_t)0x1FFFFF80);
}

/**
  * @brief  Selects the condition for the system to enter low power mode.
  * @param  LowPowerMode: Specifies the new mode for the system to enter low power mode.
  *   This parameter can be one of the following values:
  *     @arg NVIC_LP_SEVONPEND: Low Power SEV on Pend.
  *     @arg NVIC_LP_SLEEPDEEP: Low Power DEEPSLEEP request.
  *     @arg NVIC_LP_SLEEPONEXIT: Low Power Sleep on Exit.
  * @param  NewState: new state of LP condition. 
  *         This parameter can be: ENABLE or DISABLE.
  * @retval None
  */
void NVIC_SystemLPConfig(uint8_t LowPowerMode, FunctionalState NewState)
{
  /* Check the parameters */
  assert_param(IS_NVIC_LP(LowPowerMode));
  assert_param(IS_FUNCTIONAL_STATE(NewState));  
  
  if (NewState != DISABLE)
  {
    SCB->SCR |= LowPowerMode;
  }
  else
  {
    SCB->SCR &= (uint32_t)(~(uint32_t)LowPowerMode);
  }
}

/**
  * @brief  Configures the SysTick clock source.
  * @param  SysTick_CLKSource: specifies the SysTick clock source.
  *   This parameter can be one of the following values:
  *     @arg SysTick_CLKSource_HCLK_Div8: AHB clock divided by 8 selected as SysTick clock source.
  *     @arg SysTick_CLKSource_HCLK: AHB clock selected as SysTick clock source.
  * @retval None
  */
void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource)
{
  /* Check the parameters */
  assert_param(IS_SYSTICK_CLK_SOURCE(SysTick_CLKSource));
  
  if (SysTick_CLKSource == SysTick_CLKSource_HCLK)
  {
    SysTick->CTRL |= SysTick_CLKSource_HCLK;
  }
  else
  {
    SysTick->CTRL &= SysTick_CLKSource_HCLK_Div8;
  }
}

/**
  * @}
  */

/**
  * @}
  */

/**
  * @}
  */

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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人成亚洲人成在线观看图片| 精品国产制服丝袜高跟| 欧美xxxxxxxx| 午夜视频在线观看一区二区 | 亚洲伦理在线免费看| 激情另类小说区图片区视频区| 国产在线视视频有精品| 成人激情av网| 欧美亚洲国产bt| 日韩手机在线导航| 日本一区二区三区四区| 久久蜜臀精品av| 亚洲视频电影在线| 国产资源精品在线观看| 99精品视频在线观看免费| 成人晚上爱看视频| 欧美主播一区二区三区美女| 日本丶国产丶欧美色综合| 琪琪久久久久日韩精品| 国产不卡高清在线观看视频| 六月丁香婷婷色狠狠久久| 日本三级亚洲精品| 色欧美乱欧美15图片| 日本一区二区成人| 26uuu亚洲综合色欧美| 欧美精品一区二区三区蜜桃| 日韩伦理电影网| 亚洲gay无套男同| 丁香亚洲综合激情啪啪综合| 99国产一区二区三精品乱码| 日韩欧美亚洲国产另类 | 激情欧美日韩一区二区| 日韩欧美www| 成人av电影免费观看| 久久网这里都是精品| 亚洲成人av一区二区三区| 91久久一区二区| 亚洲一区二区三区激情| 欧美性三三影院| 亚洲国产另类av| 欧美日韩一区三区| 亚洲成a人v欧美综合天堂下载| 成人黄色在线视频| 国产欧美日韩亚州综合| 激情都市一区二区| 国产精品人成在线观看免费| 粉嫩13p一区二区三区| 精品免费国产二区三区| 99精品在线观看视频| 亚洲男女一区二区三区| 91久久国产综合久久| 亚洲欧美日韩中文字幕一区二区三区 | 国产精品理论片| 99精品视频在线观看免费| 亚洲一区二区黄色| 欧美精品少妇一区二区三区| 青草av.久久免费一区| 欧美国产视频在线| 欧美日韩成人一区二区| 国产一区二区三区综合| 一区二区三区 在线观看视频| 欧美综合亚洲图片综合区| 亚洲图片有声小说| 国产黄色91视频| 色综合色狠狠天天综合色| 欧美日韩国产一级| 国产白丝网站精品污在线入口| 日本不卡视频在线| 欧美日韩色一区| 国产亚洲精品aa| 久久国产日韩欧美精品| 精品视频色一区| 亚洲一区影音先锋| av一区二区三区| 国产精品剧情在线亚洲| 蜜桃传媒麻豆第一区在线观看| 欧美在线高清视频| 亚洲另类在线视频| 在线观看亚洲精品视频| 最新国产の精品合集bt伙计| 白白色 亚洲乱淫| 国产精品每日更新| jlzzjlzz亚洲日本少妇| 国产超碰在线一区| 制服丝袜国产精品| 精品动漫一区二区三区在线观看| 日韩av中文字幕一区二区| 欧美三级资源在线| 亚洲1区2区3区4区| 欧美精选午夜久久久乱码6080| 亚洲一区中文在线| 91精品国产色综合久久不卡蜜臀 | 中文字幕av一区二区三区免费看| 精品国产乱码久久久久久免费 | 久久久91精品国产一区二区精品| 日本午夜一本久久久综合| 欧美精品久久天天躁| 久久99在线观看| 亚洲成a人在线观看| 久久精品国产99国产| 欧美精品第一页| 国产一区激情在线| 亚洲伦理在线精品| 欧美一级精品在线| 国产米奇在线777精品观看| 中文字幕在线视频一区| 日本韩国欧美三级| 免费黄网站欧美| 亚洲欧洲韩国日本视频| 欧美三级中文字幕| 国产一二三精品| 一区二区免费看| 久久亚洲捆绑美女| 欧美在线高清视频| 国产成人啪午夜精品网站男同| 亚洲精品一卡二卡| 久久综合999| 91官网在线免费观看| 国产精品资源在线观看| 日韩专区中文字幕一区二区| 国产亚洲人成网站| 91精品欧美久久久久久动漫| 懂色av一区二区三区免费观看 | 欧美性高清videossexo| 国产一区久久久| 久久久国产午夜精品| 欧美日韩五月天| 亚洲电影中文字幕在线观看| 国产亚洲精品aa| 欧美一级欧美三级| 91黄色激情网站| 国产精品99久久久久久久vr| 亚洲第一会所有码转帖| 亚洲人成网站影音先锋播放| 久久久久久亚洲综合影院红桃| 欧美色图天堂网| 97精品久久久久中文字幕| 国产.欧美.日韩| 国产裸体歌舞团一区二区| 丝袜美腿亚洲综合| 亚洲福利视频一区二区| 亚洲精品欧美激情| 国产精品美日韩| 国产人久久人人人人爽| 久久日一线二线三线suv| 欧美一级欧美一级在线播放| 在线播放国产精品二区一二区四区| 99在线热播精品免费| 成人综合激情网| 成人午夜在线播放| 成人免费电影视频| 成人黄色av网站在线| 成人av集中营| 99久精品国产| 色综合一个色综合| 色诱亚洲精品久久久久久| 色诱视频网站一区| 欧美一a一片一级一片| 精品视频在线免费观看| 欧美日韩国产在线观看| 欧美一区在线视频| 精品日韩欧美在线| 国产欧美日韩视频一区二区| 国产精品久久久久久久久果冻传媒| 国产精品美女久久久久久久| 国产精品国产三级国产有无不卡| 中文字幕一区二区三区在线不卡| 亚洲视频资源在线| 亚洲sss视频在线视频| 蜜桃视频一区二区| 成人精品鲁一区一区二区| 色婷婷综合激情| 欧美肥妇毛茸茸| 久久先锋影音av鲁色资源网| 中文字幕不卡在线观看| 一区二区三区精品久久久| 日韩专区一卡二卡| 国产乱子轮精品视频| 一本久久a久久精品亚洲| 欧美疯狂做受xxxx富婆| 国产视频不卡一区| 亚洲专区一二三| 精品中文字幕一区二区小辣椒| 成人美女视频在线观看18| 欧洲人成人精品| 亚洲精品一区二区三区精华液 | 日日摸夜夜添夜夜添精品视频| 久久成人久久爱| 91小宝寻花一区二区三区| 欧美一区二区三区性视频| 国产清纯白嫩初高生在线观看91 | 亚洲青青青在线视频| 日韩高清一区二区| 成人黄色大片在线观看| 在线播放日韩导航| 亚洲欧洲精品一区二区三区 | 91在线免费看| 精品久久久久久久久久久久久久久 | 亚洲成在线观看| 国产大片一区二区|