mydef.h

来自「Mega16 + MCP3208 12bit A/D >> C」· C头文件 代码 · 共 36 行

H
36
字号
#ifndef __MYDEF_H_#define __MYDEF_H_
#define TRUE    1
#define FALSE   0

#define Output  1
#define Input   0

#define outp(val,port)                      (port) = (val)
#define invoutp(val,port)                   (port) = ~(val)
#define inp(port)                           (port)
#define sbi(port,bit)                       (port) |= (1<<(bit))
#define cbi(port,bit)                       (port) &= ~(1<<(bit))
#define chkbit(pin,bit)                     (pin & (0x00 | (1 << (bit))))
#define bit_write(Dregister,pinNr,value)    (value ? (Dregister |= 1<<pinNr) : (Dregister &= ~(1<<pinNr)))
#define outbit(port,bit,value)              (port) |= (value << (bit))

#define bit_toggle(Port,Bit)                {if(Port&(1<<Bit)) {Port &= ~(1<<Bit);} else {Port |=(1<<Bit);}}
#define bit_is_hi(Port,Bit)                 ((Port&(1<<Bit)) != 0)
#define bit_is_lo(Port,Bit)                 ((Port&(1<<Bit)) == 0)

#define loop_until_bit_is_hi(Port,Bit)      while(bit_is_lo(Port,Bit)) {;}
#define loop_until_bit_is_lo(Port,Bit)      while(bit_is_hi(Port,Bit)) {;}
#define array_length(Array)		            (sizeof(Array)/sizeof((Array)[0]))
   
typedef unsigned char byte;
typedef unsigned int  word;


#define NOP() asm volatile ("nop" ::)
 
volatile unsigned char c;

#endif

⌨️ 快捷键说明

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