#pragma once #ifndef _MAIN_H #define _MAIN_H /** * Битовые макросы */ #define SetBit(x,y) x |= (1 << (y)) #define ClrBit(x,y) x &= ~(1 << (y)) #define InvBit(x,y) (x)^= (1 << (y)) #define IsBit(x,y) (x & (1 << (y))) #define ResBit(reg,bit) (reg &= ~_BV(bit)) /* Автоматически включается avr/sfr_defs.h, кторый содержит: _BV(bit) === (1<<(bit)) bit_is_set(sfr, bit) bit_is_clear(sfr, bit) loop_until_bit_is_set(sfr, bit) loop_until_bit_is_clear(sfr, bit) */ #endif // _MAIN_H