Код
...
#define bOne 0x01;
uint8_t Bfield;
int main (void)
{
...
Bfield |= (1<<bOne); // установка в 1 бита
...
Bfield &= ~(1<<bOne); // установка в 0 бита
...
if ( Bfield & bOne ) // проверка на 1
{ ... }
}
#define bOne 0x01;
uint8_t Bfield;
int main (void)
{
...
Bfield |= (1<<bOne); // установка в 1 бита
...
Bfield &= ~(1<<bOne); // установка в 0 бита
...
if ( Bfield & bOne ) // проверка на 1
{ ... }
}
Есть ли возможность с помощью определения структуры и задания полей задавать битовые области ?
Сейчас к сожалению нет возможности попробывать работоспособность этого в железе поэтому привожу пример:
Код
...
struct Bfield
{
bit bOne:1;
bit bTwo:1;
bit bFree:1;
};
int main (void)
{
...
Bfield.bOne=1; // установка в 1 бита
...
Bfield.bTwo=0; // установка в 0 бита
...
if ( Bfield.bFree==1 ) // проверка на 1
{ ... }
struct Bfield
{
bit bOne:1;
bit bTwo:1;
bit bFree:1;
};
int main (void)
{
...
Bfield.bOne=1; // установка в 1 бита
...
Bfield.bTwo=0; // установка в 0 бита
...
if ( Bfield.bFree==1 ) // проверка на 1
{ ... }