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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? stm32f10x_rtc.c

?? STM32F RFID通訊源代碼(支持雙向發(fā)送接收)
?? C
字號(hào):
/******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
* File Name          : stm32f10x_rtc.c
* Author             : MCD Application Team
* Date First Issued  : 09/29/2006
* Description        : This file provides all the RTC firmware functions.
********************************************************************************
* History:
* 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_rtc.h"

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
#define CRL_CNF_Set      ((u16)0x0010)      /* Configuration Flag Enable Mask */
#define CRL_CNF_Reset    ((u16)0xFFEF)      /* Configuration Flag Disable Mask */
#define RTC_LSB_Mask     ((u32)0x0000FFFF)  /* RTC LSB Mask */
#define RTC_MSB_Mask     ((u32)0xFFFF0000)  /* RTC MSB Mask */
#define PRLH_MSB_Mask    ((u32)0x000F0000)  /* RTC Prescaler MSB Mask */

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

/*******************************************************************************
* Function Name  : RTC_ITConfig
* Description    : Enables or disables the specified RTC interrupts.
* Input          : - RTC_IT: specifies the RTC interrupts sources to be enabled
*                    or disabled.
*                    This parameter can be any combination of the following values:
*                       - RTC_IT_OW: Overflow interrupt
*                       - RTC_IT_ALR: Alarm interrupt
*                       - RTC_IT_SEC: Second interrupt
*                  - NewState: new state of the specified RTC interrupts.
*                    This parameter can be: ENABLE or DISABLE.
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_ITConfig(u16 RTC_IT, FunctionalState NewState)
{
  if (NewState != DISABLE)
  {
    RTC->CRH |= RTC_IT;
  }
  else
  {
    RTC->CRH &= ~RTC_IT;
  }
}

/*******************************************************************************
* Function Name  : RTC_EnterConfigMode
* Description    : Enters the RTC configuration mode.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_EnterConfigMode(void)
{
  /* Set the CNF flag to enter in the Configuration Mode */
  RTC->CRL |= CRL_CNF_Set;
}

/*******************************************************************************
* Function Name  : RTC_ExitConfigMode
* Description    : Exits from the RTC configuration mode.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_ExitConfigMode(void)
{
  /* Reset the CNF flag to exit from the Configuration Mode */
  RTC->CRL &= CRL_CNF_Reset;
}

/*******************************************************************************
* Function Name  : RTC_GetCounter
* Description    : Gets the RTC counter value.
* Input          : None
* Output         : None
* Return         : RTC counter value.
*******************************************************************************/
u32 RTC_GetCounter(void)
{
  u16 tmp = 0;
  tmp = RTC->CNTL;

  return (((u32)RTC->CNTH << 16 ) | tmp) ;
}

/*******************************************************************************
* Function Name  : RTC_SetCounter
* Description    : Sets the RTC counter value.
* Input          : - CounterValue: RTC counter new value.
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_SetCounter(u32 CounterValue)
{
  RTC_EnterConfigMode();

  /* Set RTC COUNTER MSB word */
  RTC->CNTH = (CounterValue & RTC_MSB_Mask) >> 16;
  /* Set RTC COUNTER LSB word */
  RTC->CNTL = (CounterValue & RTC_LSB_Mask);

  RTC_ExitConfigMode();
}

/*******************************************************************************
* Function Name  : RTC_GetPrescaler
* Description    : Gets the RTC prescaler value.
* Input          : None
* Output         : None
* Return         : RTC prescaler value.
*******************************************************************************/
u32 RTC_GetPrescaler(void)
{
  u16 tmp = 0;
  tmp = RTC->PRLL;

  return (((u32)(RTC->PRLH & 0x000F) << 16 ) | tmp);
}

/*******************************************************************************
* Function Name  : RTC_SetPrescaler
* Description    : Sets the RTC prescaler value.
* Input          : - PrescalerValue: RTC prescaler new value.
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_SetPrescaler(u32 PrescalerValue)
{
  RTC_EnterConfigMode();

  /* Set RTC PRESCALER MSB word */
  RTC->PRLH = (PrescalerValue & PRLH_MSB_Mask) >> 16;
  /* Set RTC PRESCALER LSB word */
  RTC->PRLL = (PrescalerValue & RTC_LSB_Mask);

  RTC_ExitConfigMode();
}

/*******************************************************************************
* Function Name  : RTC_SetAlarm
* Description    : Sets the RTC alarm value.
* Input          : - AlarmValue: RTC alarm new value.
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_SetAlarm(u32 AlarmValue)
{
  RTC_EnterConfigMode();

  /* Set the ALARM MSB word */
  RTC->ALRH = (AlarmValue & RTC_MSB_Mask) >> 16;
  /* Set the ALARM LSB word */
  RTC->ALRL = (AlarmValue & RTC_LSB_Mask);

  RTC_ExitConfigMode();
}

/*******************************************************************************
* Function Name  : RTC_GetDivider
* Description    : Gets the RTC divider value.
* Input          : None
* Output         : None
* Return         : RTC Divider value.
*******************************************************************************/
u32 RTC_GetDivider(void)
{
  u16 tmp = 0;
  tmp = RTC->DIVL ;
  return (((u32)(RTC->DIVH & 0x000F) << 16 ) | tmp);
}

/*******************************************************************************
* Function Name  : RTC_WaitForLastTask
* Description    : Waits until last write operation on RTC registers has finished.
*                  This function must be called before any write to RTC registers.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_WaitForLastTask(void)
{
  /* Loop until RTOFF flag is set */
  while ((RTC->CRL & RTC_FLAG_RTOFF) == RESET)
  {}
}

/*******************************************************************************
* Function Name  : RTC_WaitForSynchro
* Description    : Waits until the RTC registers (RTC_CNT, RTC_ALR and RTC_PRL)
*                  are synchronized with RTC APB clock.
*                  This function must be called before any read operation after
*                  an APB reset or an APB clock stop.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_WaitForSynchro(void)
{
  /* Clear RSF flag */
  RTC->CRL &= ~RTC_FLAG_RSF;

  /* Loop until RSF flag is set */
  while ((RTC->CRL & RTC_FLAG_RSF) == RESET)
  {}
}

/*******************************************************************************
* Function Name  : RTC_GetFlagStatus
* Description    : Checks whether the specified RTC flag is set or not.
* Input          : - RTC_FLAG: specifies the flag to check.
*                    This parameter can be one the following values:
*                       - RTC_FLAG_RTOFF: RTC Operation OFF flag
*                       - RTC_FLAG_RSF: Registers Synchronized flag
*                       - RTC_FLAG_OW: Overflow flag
*                       - RTC_FLAG_ALR: Alarm flag
*                       - RTC_FLAG_SEC: Second flag
* Output         : None
* Return         : The new state of RTC_FLAG (SET or RESET).
*******************************************************************************/
FlagStatus RTC_GetFlagStatus(u16 RTC_FLAG)
{
  FlagStatus bitstatus = RESET;

  if ((RTC->CRL & RTC_FLAG) != RESET)
  {
    bitstatus = SET;
  }
  else
  {
    bitstatus = RESET;
  }
  return bitstatus;
}

/*******************************************************************************
* Function Name  : RTC_ClearFlag
* Description    : Clears the RTC抯 pending flags.
* Input          : - RTC_FLAG: specifies the flag to clear.
*                    This parameter can be any combination of the following values:
*                       - RTC_FLAG_RSF: Registers Synchronized flag. This flag
*                         is cleared only after an APB reset or an APB Clock stop.
*                       - RTC_FLAG_OW: Overflow flag
*                       - RTC_FLAG_ALR: Alarm flag
*                       - RTC_FLAG_SEC: Second flag
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_ClearFlag(u16 RTC_FLAG)
{
  /* Clear the coressponding RTC flag */
  RTC->CRL &= ~RTC_FLAG;
}

/*******************************************************************************
* Function Name  : RTC_GetITStatus
* Description    : Checks whether the specified RTC interrupt has occured or not.
* Input          : - RTC_IT: specifies the RTC interrupts sources to check.
*                    This parameter can be one of the following values:
*                       - RTC_IT_OW: Overflow interrupt
*                       - RTC_IT_ALR: Alarm interrupt
*                       - RTC_IT_SEC: Second interrupt
* Output         : None
* Return         : The new state of the RTC_IT (SET or RESET).
*******************************************************************************/
ITStatus RTC_GetITStatus(u16 RTC_IT)
{
  ITStatus bitstatus = RESET;

  bitstatus = (ITStatus)((RTC->CRL & RTC_IT) != RESET);

  if (((RTC->CRH & RTC_IT) != RESET) && bitstatus)
  {
    bitstatus = SET;
  }
  else
  {
    bitstatus = RESET;
  }
  return bitstatus;
}

/*******************************************************************************
* Function Name  : RTC_ClearITPendingBit
* Description    : Clears the RTC抯 interrupt pending bits.
* Input          : - RTC_IT: specifies the interrupt pending bit to clear.
*                    This parameter can be any combination of the following values:
*                       - RTC_IT_OW: Overflow interrupt
*                       - RTC_IT_ALR: Alarm interrupt
*                       - RTC_IT_SEC: Second interrupt
* Output         : None
* Return         : None
*******************************************************************************/
void RTC_ClearITPendingBit(u16 RTC_IT)
{
  /* Clear the coressponding RTC pending bit */
  RTC->CRL &= ~RTC_IT;
}

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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色悠久久久久综合欧美99| 亚洲电影激情视频网站| 国产一区二区三区在线观看精品| 777午夜精品免费视频| 美美哒免费高清在线观看视频一区二区 | 成人黄色小视频| 亚洲女同ⅹxx女同tv| 欧美日韩精品欧美日韩精品一综合| 久久不见久久见免费视频1| 中文字幕不卡在线播放| 色菇凉天天综合网| 国产自产视频一区二区三区| 1000精品久久久久久久久| 91精品国产手机| 91蝌蚪porny| 国产激情91久久精品导航 | 337p亚洲精品色噜噜狠狠| 欧美精品乱人伦久久久久久| 成人18视频在线播放| 久久99久久99小草精品免视看| 成人福利视频在线看| 日韩黄色小视频| 911精品产国品一二三产区| 在线观看网站黄不卡| 九九**精品视频免费播放| 国产激情91久久精品导航| 99精品视频中文字幕| 国内精品在线播放| 99精品久久99久久久久| 欧美日韩成人一区| 久久久久国产精品人| 日韩一区二区免费电影| 精品婷婷伊人一区三区三| 91黄色免费看| 日韩视频免费观看高清完整版在线观看 | 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品乱人伦中文| 日韩三级视频中文字幕| 久久久久九九视频| 亚洲一区二区偷拍精品| 亚洲欧美激情插| 久久99久久久久| 99久久国产免费看| 亚洲国产精品黑人久久久| 亚洲日韩欧美一区二区在线| 国产精品另类一区| 日韩欧美一级二级三级久久久| 69精品人人人人| 国产精品久久久久久久岛一牛影视| 亚洲3atv精品一区二区三区| 丁香五精品蜜臀久久久久99网站 | 大胆欧美人体老妇| 99精品国产99久久久久久白柏| 欧美日韩欧美一区二区| 国产精品嫩草99a| 久久99九九99精品| 91精品综合久久久久久| 玉米视频成人免费看| 午夜视黄欧洲亚洲| 麻豆91精品视频| 欧美视频精品在线| 91精品国产美女浴室洗澡无遮挡| 国产精品乱子久久久久| 国产精品自产自拍| 一本色道久久综合亚洲aⅴ蜜桃| 久久久亚洲午夜电影| 蜜桃传媒麻豆第一区在线观看| 欧美中文字幕一区二区三区| 中文字幕av一区二区三区免费看 | 在线观看视频一区二区欧美日韩| 日本一区二区综合亚洲| 一区二区三区av电影| 日本不卡免费在线视频| 韩国三级中文字幕hd久久精品| 久久久综合视频| 日日摸夜夜添夜夜添国产精品| 欧美在线看片a免费观看| 亚洲欧美色图小说| 色婷婷亚洲一区二区三区| 亚洲三级在线免费| 日本精品一区二区三区四区的功能| 国产精品久久久久毛片软件| 成人va在线观看| 国产精品欧美经典| 99久久伊人网影院| 在线不卡的av| 麻豆视频观看网址久久| 精品国产一区二区三区久久久蜜月| 亚洲国产高清aⅴ视频| 成人激情电影免费在线观看| 中文字幕不卡三区| 一本色道**综合亚洲精品蜜桃冫| 一区二区三区四区蜜桃| 欧美性大战久久久久久久蜜臀 | 天堂在线一区二区| 日韩片之四级片| 国产一区二区看久久| 国产精品久久久久久久裸模| 色播五月激情综合网| 日韩精品高清不卡| 久久女同性恋中文字幕| 97精品久久久午夜一区二区三区| 亚洲女与黑人做爰| 日韩视频一区在线观看| 国产成人亚洲精品青草天美| 亚洲欧美日韩国产综合| 91精品综合久久久久久| 粉嫩绯色av一区二区在线观看| 亚洲人成网站影音先锋播放| 欧美高清你懂得| 国产凹凸在线观看一区二区| 亚洲综合免费观看高清完整版 | 国产美女视频一区| 亚洲乱码中文字幕综合| 日韩欧美精品在线| 色哟哟在线观看一区二区三区| 三级在线观看一区二区| 国产亚洲制服色| 精品亚洲国产成人av制服丝袜| 国产精品网曝门| 欧美一区二区在线不卡| 91亚洲精品乱码久久久久久蜜桃 | 国产欧美日韩激情| 欧美少妇一区二区| 9i在线看片成人免费| 蜜桃一区二区三区在线| 一区二区高清免费观看影视大全| 精品国产在天天线2019| 欧美性一级生活| 成人一区二区三区视频在线观看 | 色激情天天射综合网| 国产精品123区| 免费成人结看片| 亚洲妇女屁股眼交7| 欧美精品在欧美一区二区少妇| 国产成人综合在线| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲制服丝袜av| 国产精品理伦片| 久久精品欧美一区二区三区麻豆| 欧美高清hd18日本| 欧洲一区在线电影| 一本大道av伊人久久综合| 国产91精品久久久久久久网曝门 | 亚洲欧美乱综合| 国产精品久久久久aaaa樱花| 久久久电影一区二区三区| 欧美大片免费久久精品三p| 欧美人与z0zoxxxx视频| 欧美性一二三区| 欧美三级电影在线观看| 欧美吻胸吃奶大尺度电影| 色综合色狠狠综合色| 99久久99久久精品免费看蜜桃| 成人一区在线观看| 99精品视频在线播放观看| 不卡一区二区在线| 99久久久免费精品国产一区二区| 国产精品亚洲一区二区三区在线 | 一个色综合av| 亚洲午夜电影在线| 视频一区欧美日韩| 蜜桃久久精品一区二区| 韩国av一区二区三区四区| 国内不卡的二区三区中文字幕 | 色视频欧美一区二区三区| 91福利视频网站| 欧美色中文字幕| 日韩欧美国产综合| 久久精品在线观看| 亚洲天天做日日做天天谢日日欢 | 黑人精品欧美一区二区蜜桃| 黄色精品一二区| 北条麻妃国产九九精品视频| 91网站在线播放| 91精品国产色综合久久不卡电影| 欧美va亚洲va在线观看蝴蝶网| 欧美熟乱第一页| 日韩欧美激情四射| 中文字幕制服丝袜一区二区三区| 一二三区精品视频| 久久精品国产一区二区三 | 在线一区二区观看| 日韩一级片在线播放| 国产女同性恋一区二区| 亚洲一区二区欧美日韩| 久久99国内精品| 色94色欧美sute亚洲线路一久 | 色呦呦日韩精品| 精品国精品国产尤物美女| 亚洲免费观看视频| 九九久久精品视频| 在线观看视频91| 日本一区二区三区在线观看| 依依成人精品视频| 国产一区二区精品在线观看| 色狠狠一区二区| 中文字幕av资源一区| 免费成人av在线| 色视频成人在线观看免|