Для удобства работы как с отдельными битами так и целиком с байтом или скажем словом, удобно использовать вот такую конструкцию:
typedef struct {
union {
unsigned char BYTE;
struct{
unsigned char DUMMY: 5;
unsigned char FLAGFORFUTURE: 1;
unsigned char ADCBUSY: 1;
unsigned char UARTBUSY : 1;
}BIT;
}DATA;
}_GLOBAL_FLAGS;
Затем мы создаем эту структуру:
_GLOBAL_FLAGS GLOBAL_FLAGS;
Ну и теперь с ней можно работать например так (побайтно):
GLOBAL_FLAGS.DATA.BYTE = 0;
или так (побитно):
GLOBAL_FLAGS.DATA.BIT.UARTBUSY = 1;
typedef struct {
union {
unsigned char BYTE;
struct{
unsigned char DUMMY: 5;
unsigned char FLAGFORFUTURE: 1;
unsigned char ADCBUSY: 1;
unsigned char UARTBUSY : 1;
}BIT;
}DATA;
}_GLOBAL_FLAGS;
Затем мы создаем эту структуру:
_GLOBAL_FLAGS GLOBAL_FLAGS;
Ну и теперь с ней можно работать например так (побайтно):
GLOBAL_FLAGS.DATA.BYTE = 0;
или так (побитно):
GLOBAL_FLAGS.DATA.BIT.UARTBUSY = 1;
Комментариев нет:
Отправить комментарий