⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcu.h

📁 freemodbus-v1-1-1-0.zip v1.1.1版本的代码 支持多个平台
💻 H
字号:
/******************** (C) COPYRIGHT 2003 STMicroelectronics ********************* File Name          : pcu.h* Author             : MCD Application Team* Date First Issued  : 30/05/2003* Description        : This file contains all the functions prototypes for the*                      PCU software library.********************************************************************************* History:*  13/01/2006 : V3.1*  24/05/2005 : V3.0*  30/11/2004 : V2.0*  14/07/2004 : V1.3*  01/01/2004 : V1.2******************************************************************************* 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.*******************************************************************************/#ifndef __PCU_H#define __PCU_H#include "71x_map.h"typedef enum{  PCU_WREN = 0x8000,  PCU_VROK = 0x1000} PCU_Flags;typedef enum{  PCU_STABLE,  PCU_UNSTABLE} PCU_VR_Status;typedef enum{  PCU_MVR = 0x0008,  PCU_LPR = 0x0010} PCU_VR;typedef enum{  WFI_CLOCK2_16,  WFI_EXTERNAL} WFI_CLOCKS;typedef enum{  PCU_SLOW,  PCU_STOP,  PCU_STANDBY} LPM_MODES;/*  VR_OK  : Voltage Regulator OK */#define PCU_VROK_Mask       0x1000/*  Main Voltage Regulator */#define PCU_MVR_Mask        0x0008/*  Low Power Voltage Regulator */#define PCU_LPR_Mask        0x0010/*  PCU register Write Enable Bit */#define PCU_WREN_Mask       0x8000/*  PCU register Backup logic Busy ( programming ongoing) Bit */#define PCU_BUSY_Mask       0x4000/*  Low Voltage Detector */#define PCU_LVD_Mask        0x0100/*  Power Down Flag */#define PCU_PWRDWN_Mask     0x0040/*  WFI Mode Clock Selection Bit */#define PCU_WFI_CKSEL_Mask  0x00000002/*  Halt Mode Enable Bit */#define PCU_EN_HALT_Mask    0x00000800/*  Halt Mode Flag */#define PCU_HALT_Mask       0x0002/*  Stop Mode Enable Bit */#define PCU_STOP_EN_Mask    0x00000400/*  Low Power Regulator in Wait For interrupt Mode */#define PCU_LPRWFI_Mask     0x0020/*  Low Power Mode in Wait For interrupt Mode */#define PCU_LPOWFI_Mask     0x00000001/*  Software Reset Enable */#define PCU_SRESEN_Mask     0x00000001/******************************************************************************** Function Name  : PCU_MVRStatus* Description    : This routine is used to check the Main Voltage Regulator*                : NewState.* Input          : None* Return         : STABLE, UNSTABLE*******************************************************************************/inline PCU_VR_Status PCU_MVRStatus ( void ){	return (PCU->PWRCR & PCU_VROK_Mask) == 0x00 ? PCU_UNSTABLE : PCU_STABLE;}/******************************************************************************** Function Name  : PCU_FlagStatus* Description    : This routine is used to return the PCU register flag* Input 1        : The flag to get* Return         : RESET, SET*******************************************************************************/inline FlagStatus PCU_FlagStatus ( PCU_Flags Xflag ){	return ( PCU->PWRCR & Xflag ) == 0x00 ? RESET : SET;}/******************************************************************************** Function Name  : PCU_VRConfig* Description    : This routine is used to configure PCU voltage regultors* Input 1        : MVR : Main voltage Regulator                   LPR : Low Power Regulator* Input 2        : ENABLE : Enable the Voltage Regulator                   DISABLE: Disable ( ByPass ) the VR* Return         : None*******************************************************************************/void PCU_VRConfig ( PCU_VR xVR, FunctionalState NewState );/******************************************************************************** Function Name  : PCU_VRStatus* Description    : This routine is used to get the PCU voltage regultors status* Input          : MVR : Main voltage Regulator                   LPR : Low Power Regulator* Return         : ENABLE : Enable the Voltage Regulator                   DISABLE: Disable ( ByPass ) the VR*******************************************************************************/inline FunctionalState PCU_VRStatus ( PCU_VR xVR ){	return ( PCU->PWRCR & xVR ) == 0  ? ENABLE : DISABLE;}/******************************************************************************** Function Name  : PCU_LVDDisable* Description    : This routine is used to disable the Low Voltage Detector.* Input          : None* Return         : None*******************************************************************************/inline void PCU_LVDDisable ( void ){        /*  Wait until the previous write operation will be completed */        while (( PCU->PWRCR & PCU_BUSY_Mask ) == 1);        /*  Unlock Power Control Register */	PCU->PWRCR |= PCU_WREN_Mask;        /*  Set the LVD DIS Flag */	PCU->PWRCR |= PCU_LVD_Mask;}/******************************************************************************** Function Name  : PCU_LVDStatus* Description    : This routine is used to get the LVD NewState.* Input          : None* Return         : ENABLE, DISABLE*******************************************************************************/inline FunctionalState PCU_LVDStatus ( void ){	return ( PCU->PWRCR & PCU_LVD_Mask ) == 0 ? ENABLE : DISABLE;}/******************************************************************************** Function Name  : PCU_WFIEnter* Description    : This routine is used to force the Device to enter in WFI mode* Input 1        : CLOCK2_16 : Clock2_16 as system clock for WFI mode*                  EXTERNAL  : external clock as system clock for WFI mode* Input 2        : ENABLE : Enable Low Power Regulator during Wait For Interrupt Mode*                  DISABLE: Disable Low Power Regulator during Wait For Interrupt Mode* Input 3        : ENABLE : Enable Low Power Mode during Wait For Interrupt Mode*                  DISABLE: Disable Low Power Mode during Wait For Interrupt Mode* Return         : None*******************************************************************************/void PCU_WFIEnter ( WFI_CLOCKS Xclock, FunctionalState Xlpr, FunctionalState Xlpm );/******************************************************************************** Function Name  : PCU_LPMEnter* Description    : This routine is used to force the Device to enter low*                  power mode* Input          : SLOW : Slow Mode                   STOP : Stop Mode                   HALT : Halt Mode* Return         : None*******************************************************************************/void PCU_LPMEnter ( LPM_MODES Xmode);#endif	/*  __PCU_H *//******************* (C) COPYRIGHT 2003 STMicroelectronics *****END OF FILE****/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -