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

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

?? stm32f10x_wwdg.c

?? STM32F RFID通訊源代碼(支持雙向發送接收)
?? C
字號:
/******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
* File Name          : stm32f10x_wwdg.c
* Author             : MCD Application Team
* Date First Issued  : 09/29/2006
* Description        : This file provides all the WWDG firmware functions.
********************************************************************************
* History:
* 05/21/2007: V0.3
* 04/02/2007: V0.2
* 02/05/2007: V0.1
* 09/29/2006: V0.01
********************************************************************************
* THE PRESENT SOFTWARE 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 SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

/* Includes ------------------------------------------------------------------*/
#include "stm32f10x_wwdg.h"
#include "stm32f10x_rcc.h"

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* ----------- WWDG registers bit address in the alias region ----------- */
#define WWDG_OFFSET       (WWDG_BASE - PERIPH_BASE)

/* Alias word address of EWI bit */
#define CFR_OFFSET        (WWDG_OFFSET + 0x04)
#define EWI_BitNumber     0x09
#define CFR_EWI_BB        (PERIPH_BB_BASE + (CFR_OFFSET * 32) + (EWI_BitNumber * 4))

/* Alias word address of EWIF bit */
#define SR_OFFSET         (WWDG_OFFSET + 0x08)
#define EWIF_BitNumber    0x00
#define SR_EWIF_BB        (PERIPH_BB_BASE + (SR_OFFSET * 32) + (EWIF_BitNumber * 4))

/* --------------------- WWDG registers bit mask ------------------------ */
/* CR register bit mask */
#define CR_WDGA_Set       ((u32)0x00000080)

/* CFR register bit mask */
#define CFR_WDGTB_Mask    ((u32)0xFFFFFE7F)
#define CFR_W_Mask        ((u32)0xFFFFFF80)

#define BIT_Mask          ((u8)0x7F)

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

/*******************************************************************************
* Function Name  : WWDG_DeInit
* Description    : Deinitializes the WWDG  peripheral registers to their default
*                  reset values.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_DeInit(void)
{
  RCC_APB1PeriphResetCmd(RCC_APB1Periph_WWDG, ENABLE);
  RCC_APB1PeriphResetCmd(RCC_APB1Periph_WWDG, DISABLE);
}

/*******************************************************************************
* Function Name  : WWDG_SetPrescaler
* Description    : Sets the WWDG Prescaler.
* Input          : - WWDG_Prescaler: specifies the WWDG Prescaler.
*                    This parameter can be one of the following values:
*                       - WWDG_Prescaler_1: WWDG counter clock = (PCLK1/4096)/1
*                       - WWDG_Prescaler_2: WWDG counter clock = (PCLK1/4096)/2
*                       - WWDG_Prescaler_4: WWDG counter clock = (PCLK1/4096)/4
*                       - WWDG_Prescaler_8: WWDG counter clock = (PCLK1/4096)/8
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_SetPrescaler(u32 WWDG_Prescaler)
{
  u32 tmpreg = 0;

  /* Check the parameters */
  assert(IS_WWDG_PRESCALER(WWDG_Prescaler));

  /* Clear WDGTB[8:7] bits */
  tmpreg = WWDG->CFR & CFR_WDGTB_Mask;

  /* Set WDGTB[8:7] bits according to WWDG_Prescaler value */
  tmpreg |= WWDG_Prescaler;

  /* Store the new value */
  WWDG->CFR = tmpreg;
}

/*******************************************************************************
* Function Name  : WWDG_SetWindowValue
* Description    : Sets the WWDG window value.
* Input          : - WindowValue: specifies the window value to be compared to
*                    the downcounter.
*                    This parameter value must be lower than 0x80.
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_SetWindowValue(u8 WindowValue)
{
  u32 tmpreg = 0;

  /* Check the parameters */
  assert(IS_WWDG_WINDOW_VALUE(WindowValue));

  /* Clear W[6:0] bits */
  tmpreg = WWDG->CFR & CFR_W_Mask;

  /* Set W[6:0] bits according to WindowValue value */
  tmpreg |= WindowValue & BIT_Mask;

  /* Store the new value */
  WWDG->CFR = tmpreg;
}

/*******************************************************************************
* Function Name  : WWDG_EnableIT
* Description    : Enables the WWDG Early Wakeup interrupt(EWI).
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_EnableIT(void)
{
  *(vu32 *) CFR_EWI_BB = (u32)ENABLE;
}

/*******************************************************************************
* Function Name  : WWDG_SetCounter
* Description    : Sets the WWDG counter value.
* Input          : - Counter: specifies the watchdog counter value.
*                    This parameter must be a number between 0x40 and 0x7F.
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_SetCounter(u8 Counter)
{
  /* Check the parameters */
  assert(IS_WWDG_COUNTER(Counter));

  /* Write to T[6:0] bits to configure the counter value, no need to do
     a read-modify-write; writing a 0 to WDGA bit does nothing */
  WWDG->CR = Counter & BIT_Mask;
}

/*******************************************************************************
* Function Name  : WWDG_Enable
* Description    : Enables WWDG and load the counter value.
*                  - Counter: specifies the watchdog counter value.
*                    This parameter must be a number between 0x40 and 0x7F.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_Enable(u8 Counter)
{
  /* Check the parameters */
  assert(IS_WWDG_COUNTER(Counter));

  WWDG->CR = CR_WDGA_Set | Counter;
}

/*******************************************************************************
* Function Name  : WWDG_GetFlagStatus
* Description    : Checks whether the Early Wakeup interrupt flag is set or not.
* Input          : None
* Output         : None
* Return         : The new state of the Early Wakeup interrupt flag (SET or RESET)
*******************************************************************************/
FlagStatus WWDG_GetFlagStatus(void)
{
  return (FlagStatus)(*(vu32 *) SR_EWIF_BB);
}

/*******************************************************************************
* Function Name  : WWDG_ClearFlag
* Description    : Clears Early Wakeup interrupt flag.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void WWDG_ClearFlag(void)
{
  WWDG->SR = (u32)RESET;
}

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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜欧美在线一二页| 亚洲精品一区二区三区99| 国产成人亚洲综合a∨婷婷图片 | 91精品欧美久久久久久动漫| 色婷婷久久久久swag精品 | 中文字幕亚洲综合久久菠萝蜜| 欧美一区二区三区小说| 欧美年轻男男videosbes| bt7086福利一区国产| 不卡高清视频专区| 99精品视频在线观看| 91小视频在线观看| 91免费看片在线观看| 色国产综合视频| 欧美视频一区二区三区| 欧美日韩一区二区在线视频| 欧美日韩国产天堂| 日韩欧美亚洲国产另类| 久久综合色8888| 久久精品夜色噜噜亚洲a∨| 日本一区二区三区在线不卡| 中文字幕一区在线| 亚洲国产视频在线| 免费人成在线不卡| 国产精品一卡二卡| 91免费视频观看| 日韩欧美一级特黄在线播放| 久久久久久久久久久久久夜| 中文字幕在线不卡国产视频| 亚洲伦理在线精品| 日本aⅴ亚洲精品中文乱码| 国产一区免费电影| 一本色道亚洲精品aⅴ| 欧美日韩成人一区二区| 国产女同互慰高潮91漫画| 亚洲欧洲制服丝袜| 久久99精品网久久| 97精品久久久久中文字幕| 在线不卡中文字幕| 国产精品毛片高清在线完整版| 亚洲一区二区四区蜜桃| 国产美女在线观看一区| 91黄色激情网站| 精品第一国产综合精品aⅴ| 日韩美女久久久| 久草中文综合在线| 在线免费观看日韩欧美| 久久免费电影网| 性久久久久久久| www.66久久| 精品久久五月天| 亚洲国产日日夜夜| 风间由美一区二区三区在线观看 | 美女诱惑一区二区| 97久久超碰国产精品| 精品国产乱码久久久久久蜜臀| 亚洲日本电影在线| 国产成人鲁色资源国产91色综 | 91色porny| 久久久综合九色合综国产精品| 亚洲bt欧美bt精品| 91久久国产最好的精华液| 国产午夜精品一区二区三区嫩草 | 精品一区免费av| 欧美日韩一区三区| 亚洲欧美日韩系列| caoporm超碰国产精品| 26uuu另类欧美| 另类综合日韩欧美亚洲| 欧美日韩亚州综合| 亚洲啪啪综合av一区二区三区| 国产精品亚洲午夜一区二区三区| 欧美一区二区免费视频| 亚洲成人资源网| 精品视频全国免费看| 亚洲精品免费电影| 99视频精品在线| 国产精品久久久久久久第一福利 | 日韩av中文字幕一区二区| 日本久久一区二区| 一区二区三区四区在线播放| 91老师片黄在线观看| 亚洲丝袜精品丝袜在线| 91色乱码一区二区三区| 亚洲精品写真福利| 一本一道久久a久久精品| 亚洲欧美日韩国产综合| 91免费看视频| 亚洲综合一区二区| 欧美日韩一区 二区 三区 久久精品| 一区二区三区在线观看欧美| 一本大道久久a久久综合婷婷| 亚洲日本在线看| 欧美三级韩国三级日本一级| 视频在线在亚洲| 日韩视频在线你懂得| 国产一区二区三区蝌蚪| 中文字幕免费不卡| 在线视频亚洲一区| 日本vs亚洲vs韩国一区三区二区 | 亚洲欧美一区二区不卡| 91黄视频在线| 九色porny丨国产精品| 日韩欧美aaaaaa| 成人午夜激情在线| 夜夜嗨av一区二区三区四季av| 欧美日韩精品一区二区天天拍小说 | 亚洲女女做受ⅹxx高潮| 欧美日韩亚洲综合一区| 麻豆成人在线观看| 中文字幕不卡三区| 精品视频色一区| 国产成人精品免费在线| 日韩一区在线看| 69精品人人人人| 成人在线综合网站| 日韩专区一卡二卡| 国产精品亲子乱子伦xxxx裸| 欧美日韩国产首页| 国产91在线|亚洲| 亚洲成人免费在线观看| 久久久久久久久久看片| 欧美图区在线视频| 国产剧情av麻豆香蕉精品| 一区二区三区在线观看欧美| 精品国产一区二区亚洲人成毛片 | 毛片av中文字幕一区二区| 欧美α欧美αv大片| 亚洲靠逼com| 首页国产欧美日韩丝袜| 亚洲精品高清在线| 国产成人午夜视频| 一区二区三区高清| 日本一区免费视频| 欧美一区二区精品在线| av午夜一区麻豆| 国产一区二三区| 日韩中文字幕av电影| 亚洲欧洲另类国产综合| 26uuu欧美日本| 337p亚洲精品色噜噜狠狠| 色综合一个色综合亚洲| 99re这里都是精品| 精品亚洲欧美一区| 日韩av网站在线观看| 亚洲婷婷在线视频| 中文字幕中文在线不卡住| 精品不卡在线视频| 欧美v亚洲v综合ⅴ国产v| 欧美日韩亚洲国产综合| 在线看不卡av| 91在线精品一区二区| 成人成人成人在线视频| 国产成人av影院| 国产乱色国产精品免费视频| 麻豆国产精品一区二区三区 | 国产精品一区二区三区99| 日韩精品免费视频人成| 亚洲一二三区在线观看| 夜夜嗨av一区二区三区中文字幕 | 精品黑人一区二区三区久久| 欧美高清视频一二三区| 欧美日韩国产免费| 欧美美女bb生活片| 91精品中文字幕一区二区三区| 欧美日韩精品一区二区三区| 欧美三区在线观看| 欧美乱妇15p| 欧美www视频| 国产精品视频麻豆| 亚洲少妇30p| 亚洲mv在线观看| 青青草国产成人99久久| 韩国欧美国产一区| www.日韩精品| 91精品国产综合久久久久久| 8x福利精品第一导航| 久久久亚洲精品一区二区三区| 国产三级一区二区| 亚洲精品欧美激情| 蜜臀av一级做a爰片久久| 国产精品99久久久| 在线观看网站黄不卡| 欧美一二三区在线观看| 国产日韩欧美精品一区| 亚洲精品精品亚洲| 久久99国产精品免费网站| av资源网一区| 欧美一区二区三区啪啪| 国产精品无码永久免费888| 亚洲午夜一区二区| 国产高清精品久久久久| 色999日韩国产欧美一区二区| 日韩欧美在线影院| 亚洲精品久久7777| 日本成人在线视频网站| 99久久精品国产导航| 欧美成人国产一区二区| 一区二区三区中文字幕| 国产盗摄女厕一区二区三区 |