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

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

?? misc.c

?? Cortex-M3 CAN源代碼
?? C
字號:
/**
  ******************************************************************************
  * @file    misc.c
  * @author  MCD Application Team
  * @version V3.1.0
  * @date    06/19/2009
  * @brief   This file provides all the miscellaneous firmware functions (add-on
  *          to CMSIS functions).
  ******************************************************************************
  * @copy
  *
  * 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.
  *
  * <h2><center>&copy; COPYRIGHT 2009 STMicroelectronics</center></h2>
  */ 

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

/** @addtogroup STM32F10x_StdPeriph_Driver
  * @{
  */

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

/** @defgroup MISC_Private_TypesDefinitions
  * @{
  */

/**
  * @}
  */ 

/** @defgroup MISC_Private_Defines
  * @{
  */

#define AIRCR_VECTKEY_MASK    ((uint32_t)0x05FA0000)
/**
  * @}
  */

/** @defgroup MISC_Private_Macros
  * @{
  */

/**
  * @}
  */

/** @defgroup MISC_Private_Variables
  * @{
  */

/**
  * @}
  */

/** @defgroup MISC_Private_FunctionPrototypes
  * @{
  */

/**
  * @}
  */

/** @defgroup MISC_Private_Functions
  * @{
  */

/**
  * @brief  Configures the priority grouping: pre-emption 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 pre-emption priority
  *                                4 bits for subpriority
  *     @arg NVIC_PriorityGroup_1: 1 bits for pre-emption priority
  *                                3 bits for subpriority
  *     @arg NVIC_PriorityGroup_2: 2 bits for pre-emption priority
  *                                2 bits for subpriority
  *     @arg NVIC_PriorityGroup_3: 3 bits for pre-emption priority
  *                                1 bits for subpriority
  *     @arg NVIC_PriorityGroup_4: 4 bits for pre-emption 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.
  * @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)
{
  uint32_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 |=  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
  *     @arg NVIC_VectTab_FLASH
  * @param  Offset: Vector Table base offset field. This value must be a multiple of 0x100.
  * @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
  *     @arg NVIC_LP_SLEEPDEEP
  *     @arg NVIC_LP_SLEEPONEXIT
  * @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 2009 STMicroelectronics *****END OF FILE****/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美伦理视频网站| 不卡一区二区在线| 亚洲国产精品麻豆| 综合激情成人伊人| 椎名由奈av一区二区三区| 国产精品日韩成人| 最新国产成人在线观看| 中文字幕视频一区| 亚洲日本乱码在线观看| 亚洲精品成人少妇| 一区二区三区精品在线| 亚洲18色成人| 捆绑调教一区二区三区| 国内外成人在线视频| 国产米奇在线777精品观看| 国产一区二区三区日韩| 国产激情精品久久久第一区二区 | 国产一区二区不卡在线| 久久99久久久久| 国产在线视视频有精品| 成av人片一区二区| 色婷婷狠狠综合| 日韩视频免费直播| 国产欧美1区2区3区| 亚洲免费观看高清完整| 奇米影视7777精品一区二区| 国产麻豆精品95视频| 成人v精品蜜桃久久一区| 91亚洲永久精品| 欧美日韩精品福利| 久久久影视传媒| 亚洲精品国久久99热| 日韩精品久久理论片| 国产成人午夜高潮毛片| 99久久精品免费看| 日韩一级在线观看| 亚洲欧洲韩国日本视频| 日本美女一区二区| 不卡在线观看av| 日韩一区二区电影| 亚洲精选视频在线| 国产综合成人久久大片91| 91国产福利在线| 久久久久久久网| 亚洲小说欧美激情另类| 精品一区二区久久久| 在线精品观看国产| 中文字幕欧美国产| 久久99九九99精品| 欧美日韩国产免费| 最新高清无码专区| 国产成人欧美日韩在线电影| 欧美日韩午夜影院| 亚洲人成网站色在线观看 | 国产欧美久久久精品影院| 亚洲午夜在线电影| 丁香亚洲综合激情啪啪综合| 91精品啪在线观看国产60岁| 亚洲激情五月婷婷| 国产成人精品aa毛片| 欧美成人乱码一区二区三区| 亚洲国产成人av网| 欧美中文字幕一区| 亚洲欧洲成人av每日更新| 国精产品一区一区三区mba视频| 欧美日韩美女一区二区| 综合久久一区二区三区| 99re8在线精品视频免费播放| 国产亚洲欧美一级| 精品亚洲欧美一区| 日韩欧美成人一区| 捆绑调教美女网站视频一区| 欧美一区2区视频在线观看| 日精品一区二区| 欧美三级中文字幕在线观看| 亚洲男人的天堂av| 色婷婷久久久综合中文字幕| 国产精品理论片| 91一区二区三区在线观看| 国产精品久久久久久久午夜片| 丁香激情综合五月| 亚洲图片另类小说| 91福利区一区二区三区| 一区二区三区四区不卡视频| 91网站最新网址| 韩国视频一区二区| 亚洲激情在线激情| 亚洲资源在线观看| 奇米在线7777在线精品| 麻豆国产一区二区| 国产99精品视频| 久久91精品久久久久久秒播| 久久国产精品99久久人人澡| 成人av网站免费| 色爱区综合激月婷婷| 日本一区二区电影| 91香蕉视频污在线| 亚洲一区在线播放| 欧美第一区第二区| 成人免费视频一区二区| 亚洲激情六月丁香| 日韩三级.com| 成人丝袜高跟foot| 亚洲成人av资源| 久久久久国产精品麻豆ai换脸| 成人综合日日夜夜| 亚洲123区在线观看| 久久久久久一级片| 欧美午夜精品久久久| 九九精品一区二区| 亚洲欧美日韩国产手机在线| 91.xcao| 风间由美一区二区三区在线观看 | 国产精品久久毛片av大全日韩| 在线看不卡av| 国产成人亚洲综合a∨婷婷图片| 亚洲精品国产品国语在线app| 欧美日韩国产高清一区二区| 国产a精品视频| 亚洲成人av一区二区三区| 久久嫩草精品久久久久| 欧美图区在线视频| 成人综合婷婷国产精品久久蜜臀| 五月激情六月综合| 国产精品日日摸夜夜摸av| 日韩一二三区视频| 欧美伊人精品成人久久综合97| 国产一区二区视频在线| 日韩一区欧美二区| 亚洲精品欧美激情| 欧美国产欧美综合| 精品美女在线播放| 欧美嫩在线观看| 色88888久久久久久影院野外| 经典一区二区三区| 性做久久久久久免费观看欧美| 国产精品网站导航| 26uuuu精品一区二区| 91精品国产综合久久久久久久久久 | 不卡在线视频中文字幕| 国产乱码一区二区三区| 久久电影网站中文字幕 | 日韩一二三区不卡| 777a∨成人精品桃花网| 在线一区二区三区做爰视频网站| 国产九色sp调教91| 国产呦精品一区二区三区网站| 天天亚洲美女在线视频| 亚洲精品美国一| 亚洲精品久久嫩草网站秘色| 亚洲三级在线看| 亚洲天堂免费看| 夜夜精品视频一区二区 | 欧美剧在线免费观看网站| 欧美日韩三级视频| 欧美日韩卡一卡二| 4438x亚洲最大成人网| 91麻豆精品91久久久久同性| 欧美日韩亚洲综合| 日韩一区二区三区三四区视频在线观看 | 久久av老司机精品网站导航| 亚洲成人先锋电影| 亚洲成人午夜影院| 午夜视频在线观看一区二区三区| 亚洲成人在线网站| 日本伊人精品一区二区三区观看方式| 亚洲午夜日本在线观看| 午夜视频一区在线观看| 九九精品一区二区| 不卡一区二区中文字幕| 一本一本久久a久久精品综合麻豆| 日本韩国精品一区二区在线观看| 欧美色图一区二区三区| 91精品国产综合久久久蜜臀图片| 欧美mv和日韩mv国产网站| 国产亚洲成av人在线观看导航| 中文字幕在线不卡一区二区三区| 亚洲激情在线播放| 久久激情综合网| a4yy欧美一区二区三区| 欧美视频一区二区三区在线观看| 日韩一区二区视频在线观看| 久久精品亚洲麻豆av一区二区| 中文字幕日韩精品一区 | 欧美一区二区不卡视频| 国产精品三级av| 视频一区免费在线观看| 韩国av一区二区三区| 色婷婷综合久色| 欧美成va人片在线观看| ●精品国产综合乱码久久久久 | 国产精品久久久久久久第一福利| 亚洲精品ww久久久久久p站| 日韩不卡在线观看日韩不卡视频| 激情亚洲综合在线| 色偷偷久久一区二区三区| 久久久不卡影院| 天天av天天翘天天综合网| 国产成人综合在线播放| 在线成人av网站|