Xmega Application Note


pmic_driver.h

Go to the documentation of this file.
00001 /* This file has been prepared for Doxygen automatic documentation generation.*/
00061 #ifndef PMIC_DRIVER
00062 #define PMIC_DRIVER
00063 
00064 #include "avr_compiler.h"
00065 
00066 /* Definitions of macros. */
00067 
00069 #define PMIC_EnableLowLevel() (PMIC.CTRL |= PMIC_LOLVLEN_bm)
00070 
00071 
00073 #define PMIC_DisableLowLevel() (PMIC.CTRL &= ~PMIC_LOLVLEN_bm)
00074 
00075 
00077 #define PMIC_EnableMediumLevel() (PMIC.CTRL |= PMIC_MEDLVLEN_bm)
00078 
00079 
00081 #define PMIC_DisableMediumLevel() (PMIC.CTRL &= ~PMIC_MEDLVLEN_bm)
00082 
00083 
00085 #define PMIC_EnableHighLevel() (PMIC.CTRL |= PMIC_HILVLEN_bm)
00086 
00087 
00089 #define PMIC_DisableHighLevel() (PMIC.CTRL &= ~PMIC_HILVLEN_bm)
00090 
00091 
00093 #define PMIC_EnableRoundRobin() (PMIC.CTRL |= PMIC_RREN_bm)
00094 
00095 
00097 #define PMIC_DisableRoundRobin() (PMIC.CTRL &= ~PMIC_RREN_bm)
00098 
00099 
00100 
00112 #define PMIC_SetNextRoundRobinInterrupt(_vectorAddress) (PMIC.INTPRI = (_vectorAddress >> 2) - 1)
00113 
00114 
00115 
00120 #define PMIC_IsHighLevelExecuting() (PMIC.STATUS & PMIC_HILVLEX_bm)
00121 
00122 
00123 
00128 #define PMIC_IsMediumLevelExecuting() (PMIC.STATUS & PMIC_MEDLVLEX_bm)
00129 
00130 
00131 
00136 #define PMIC_IsLowLevelExecuting() (PMIC.STATUS & PMIC_LOLVLEX_bm)
00137 
00138 
00139 
00144 #define PMIC_IsNMIExecuting() (PMIC.STATUS & PMIC_NMIEX_bm)
00145 
00146 
00147 
00148 /* Prototype of functions. */
00149 
00150 void PMIC_SetVectorLocationToBoot( void );
00151 void PMIC_SetVectorLocationToApplication( void );
00152 
00153 #endif
@DOC_TITLE@
Generated on Wed Apr 23 07:41:39 2008 for AVR1305 XMEGA Interrupts and the Programmable Multi-level Interrupt Controller by doxygen 1.5.5