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

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

?? stm32f10x_wwdg.c

?? 用于STM32實時時鐘程序,可以代PC8563使用.
?? 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一区二区三区免费野_久草精品视频
日本一区二区视频在线观看| 日本 国产 欧美色综合| 亚洲成人先锋电影| 国产大陆精品国产| 欧美一区二区三区电影| 国产精品免费视频观看| 婷婷开心激情综合| a级精品国产片在线观看| 欧美男人的天堂一二区| 国产精品久久久久精k8| 免费在线看一区| 欧美色大人视频| 亚洲欧洲韩国日本视频| 狠狠色伊人亚洲综合成人| 欧美亚洲国产一区在线观看网站| 欧美精品一区二区三区高清aⅴ| 亚洲影院久久精品| 91色婷婷久久久久合中文| 久久蜜桃一区二区| 麻豆一区二区在线| 在线不卡中文字幕播放| 亚洲欧美另类综合偷拍| 国产酒店精品激情| 2024国产精品| 狂野欧美性猛交blacked| 欧美日韩黄色影视| 亚洲午夜久久久久久久久电影院| 不卡的av中国片| 国产精品色哟哟| 国产传媒日韩欧美成人| xnxx国产精品| 国产精品99久久久久久久女警| 日韩一级片在线播放| 奇米影视一区二区三区| 在线成人av影院| 久久精品国产一区二区三| 51久久夜色精品国产麻豆| 五月激情综合婷婷| 欧美日韩在线观看一区二区 | 香蕉久久一区二区不卡无毒影院| 91尤物视频在线观看| 亚洲桃色在线一区| 91麻豆国产自产在线观看| 亚洲免费在线视频一区 二区| 99在线视频精品| 亚洲小说春色综合另类电影| 欧美日韩在线免费视频| 日本成人在线看| 国产亚洲短视频| 白白色 亚洲乱淫| 亚洲女性喷水在线观看一区| 色噜噜久久综合| 五月天视频一区| 久久久久久久久久看片| av爱爱亚洲一区| 亚洲精品成a人| 宅男噜噜噜66一区二区66| 国产综合色在线视频区| 国产精品女人毛片| 欧美揉bbbbb揉bbbbb| 蜜桃久久av一区| 中日韩免费视频中文字幕| 色哟哟一区二区在线观看| 天天色综合天天| 国产日韩欧美一区二区三区综合| 色综合天天视频在线观看| 天天色天天爱天天射综合| 久久久久成人黄色影片| 色欧美日韩亚洲| 激情综合亚洲精品| 亚洲黄网站在线观看| 精品三级在线看| 一本大道久久精品懂色aⅴ| 日韩国产一二三区| 欧美韩国日本综合| 91.成人天堂一区| 白白色亚洲国产精品| 日本一道高清亚洲日美韩| 中文字幕av不卡| 91麻豆精品国产91久久久久久| 丁香婷婷综合色啪| 视频一区视频二区在线观看| 亚洲国产高清在线观看视频| 91超碰这里只有精品国产| heyzo一本久久综合| 美女性感视频久久| 亚洲精品成人悠悠色影视| 久久久久久9999| 91.麻豆视频| 91久久免费观看| 成人av在线一区二区三区| 奇米888四色在线精品| 一区二区三区国产精品| 日本一区二区综合亚洲| 精品日韩av一区二区| 欧美日韩国产123区| 不卡av在线免费观看| 极品少妇一区二区| 奇米色一区二区| 天天色天天爱天天射综合| 一区二区三区四区乱视频| 欧美激情一区二区三区四区| 久久久蜜桃精品| 久久久久久久久岛国免费| 日韩一区二区三区三四区视频在线观看| 91久久人澡人人添人人爽欧美| 成a人片亚洲日本久久| 国产激情一区二区三区四区| 日韩精品福利网| 视频一区视频二区在线观看| 亚洲午夜羞羞片| 亚洲国产wwwccc36天堂| 亚洲最大的成人av| 亚洲乱码国产乱码精品精98午夜| 国产精品久久久久久久裸模| 久久久高清一区二区三区| 欧美精品一区二区在线播放| 久久青草欧美一区二区三区| 精品国产乱码久久久久久久久 | 精品国产乱码久久久久久牛牛| 制服丝袜av成人在线看| 日韩三级中文字幕| 日韩三级视频在线看| 精品国一区二区三区| ww亚洲ww在线观看国产| 久久久久亚洲蜜桃| 国产精品久久久久久福利一牛影视| 国产亚洲自拍一区| 中文字幕乱码日本亚洲一区二区| 国产午夜精品美女毛片视频| 日本一区二区免费在线观看视频| 国产欧美日韩麻豆91| 综合久久给合久久狠狠狠97色| 亚洲欧美日韩一区二区三区在线观看| 17c精品麻豆一区二区免费| 亚洲少妇最新在线视频| 亚洲专区一二三| 青青草国产精品97视觉盛宴 | 久久久久97国产精华液好用吗| 国产午夜精品一区二区三区四区| 国产精品美女久久久久久2018| 亚洲同性同志一二三专区| 亚洲一区国产视频| 毛片一区二区三区| www.欧美.com| 欧美日韩在线综合| 国产午夜亚洲精品理论片色戒| 亚洲人成网站精品片在线观看 | 91精品国产黑色紧身裤美女| 欧美第一区第二区| 亚洲私人影院在线观看| 日韩中文字幕一区二区三区| 国产一区二区三区免费在线观看 | 极品少妇一区二区| 91免费国产在线| 91精品国产综合久久久蜜臀粉嫩| 国产午夜精品福利| 亚洲国产欧美在线| 国产激情一区二区三区| 欧美日韩视频一区二区| 久久影视一区二区| 夜夜嗨av一区二区三区中文字幕| 国产综合色在线视频区| 91福利在线导航| 久久综合精品国产一区二区三区 | 亚洲色图在线视频| 麻豆高清免费国产一区| 91啪在线观看| 久久久久久久久久久久久女国产乱| 夜夜嗨av一区二区三区| 国产不卡视频一区| 欧美成人女星排名| 亚洲国产欧美在线| 91婷婷韩国欧美一区二区| 精品裸体舞一区二区三区| 夜夜精品浪潮av一区二区三区| 国产成人免费视| 日韩免费电影网站| 午夜精品影院在线观看| 91亚洲男人天堂| 国产日韩欧美一区二区三区乱码 | 久久久久国产精品麻豆| 喷水一区二区三区| 精品视频在线免费观看| 一色屋精品亚洲香蕉网站| 国产综合色在线| 欧美tk—视频vk| 人人爽香蕉精品| 91精品国产综合久久久久久漫画 | 国产麻豆视频一区| 日韩免费看的电影| 裸体歌舞表演一区二区| 欧美日韩精品三区| 亚洲成人动漫精品| 在线视频一区二区免费| 夜夜操天天操亚洲| 欧美性淫爽ww久久久久无| 亚洲老司机在线| 色一情一乱一乱一91av| 亚洲人xxxx|