bit.h

来自「SPI主机模式进行串行通信」· C头文件 代码 · 共 60 行

H
60
字号
/** ###################################################################
**
**     (c) Freescale Semiconductor
**     2004 All Rights Reserved
**
**
**     (c) Copyright UNIS, spol. s r.o. 1997-2004
**     UNIS, spol. s r.o.
**     Jundrovska 33
**     624 00 Brno
**     Czech Republic
**     http      : www.processorexpert.com
**     mail      : info@processorexpert.com
** ###################################################################*/

/* File: bit.h */

#ifndef __BIT_H
#define __BIT_H

#include "port.h"

#ifdef __cplusplus
extern "C" {
#endif


/*******************************************************
* Bit Manipulation Operations
*******************************************************/

/* void bitSet(Mask, Addr); */
#define bitSet(Mask, Addr)              asm(bfset    Mask,Addr)

/* void bitClear(Mask, Addr); */
#define bitClear(Mask, Addr)            asm(bfclr    Mask,Addr)

/* void bitChange(Mask, Addr); */
#define bitChange(Mask, Addr)           asm(bfchg    Mask,Addr)

/* void bitTestHigh(Mask, Addr); */
#define bitTestHigh(Mask, Addr)         asm(bftsth   Mask,Addr)

/* void bitTestLow(Mask, Addr); */
#define bitTestLow(Mask, Addr)          asm(bftstl   Mask,Addr)


/* void bitWordSet(Mask, Addr); */
#define bitWordSet(Mask, Addr)   (*Addr = Mask | *Addr)

/* void bitWordClear(Mask, Addr); */
#define bitWordClear(Mask, Addr) (*Addr = ~Mask & *Addr)


#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

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