2 **********************************************************************************
3 * © 2013 Microchip Technology Inc. and its subsidiaries.
4 * You may use this software and any derivatives exclusively with
6 * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS".
7 * NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
8 * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
9 * AND FITNESS FOR A PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP
10 * PRODUCTS, COMBINATION WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION.
11 * IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE,
12 * INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND
13 * WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS
14 * BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.
15 * TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL
16 * CLAIMS IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF
17 * FEES, IF ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
18 * MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE
20 **********************************************************************************
22 * This is the definition header file for generic usages
23 **********************************************************************************
25 **********************************************************************************
26 * $File: //depot_pcs/FWEng/Release/projects/CEC1302_PLIB_CLIB/release5/Source/hw_blks/common/include/defs.h $
30 /*********************************************************************************/
31 /** @defgroup defs defs
36 * \brief definition header file for generic usages
37 * \author App Firmware Team
39 **********************************************************************************/
43 /* bit operation MACRO, xvar could be byte, word or dword */
44 #define mSET_BIT(x, xvar) ( xvar |= x )
45 #define mCLR_BIT(x, xvar) ( xvar &= ~x )
46 #define mGET_BIT(x, xvar) ( xvar & x )
47 #define mCLR_SRC_BIT(x, xvar) ( xvar = x )
48 #define mTOGGLE_BIT(x, xvar) {if(mGET_BIT(x, xvar)){mCLR_BIT(x, xvar);}else{mSET_BIT(x, xvar);}}