A
Size: a a a
A
AK
A
L
#define GROUP_SHIFT 4
#define BIT_MASK 0xF
#define MAP(grp, bit) ((grp << GROUP_SHIFT) | bit)
#define IGNORE (1 << 7)
static const uint8_t alarm_mappings[] = {
MAP(0, 0),
MAP(0, 1),
IGNORE,
MAP(1, 5),
...
};
uint8_t alarm_num;
if (alarm_num < sizeof(alarm_mappings)) {
uint8_t mapping = alarm_mappings[alarm_num];
if (mapping != IGNORE) {
group = mapping >> GROUP_SHIFT;
bit_num = mapping & BIT_MASK;
}
}
A
#define GROUP_SHIFT 4
#define BIT_MASK 0xF
#define MAP(grp, bit) ((grp << GROUP_SHIFT) | bit)
#define IGNORE (1 << 7)
static const uint8_t alarm_mappings[] = {
MAP(0, 0),
MAP(0, 1),
IGNORE,
MAP(1, 5),
...
};
uint8_t alarm_num;
if (alarm_num < sizeof(alarm_mappings)) {
uint8_t mapping = alarm_mappings[alarm_num];
if (mapping != IGNORE) {
group = mapping >> GROUP_SHIFT;
bit_num = mapping & BIT_MASK;
}
}
E
#define GROUP_SHIFT 4
#define BIT_MASK 0xF
#define MAP(grp, bit) ((grp << GROUP_SHIFT) | bit)
#define IGNORE (1 << 7)
static const uint8_t alarm_mappings[] = {
MAP(0, 0),
MAP(0, 1),
IGNORE,
MAP(1, 5),
...
};
uint8_t alarm_num;
if (alarm_num < sizeof(alarm_mappings)) {
uint8_t mapping = alarm_mappings[alarm_num];
if (mapping != IGNORE) {
group = mapping >> GROUP_SHIFT;
bit_num = mapping & BIT_MASK;
}
}
L
A
E
E
#define GROUP_SHIFT 4
#define BIT_MASK 0xF
#define MAP(grp, bit) ((grp << GROUP_SHIFT) | bit)
#define IGNORE (1 << 7)
static const uint8_t alarm_mappings[] = {
MAP(0, 0),
MAP(0, 1),
IGNORE,
MAP(1, 5),
...
};
uint8_t alarm_num;
if (alarm_num < sizeof(alarm_mappings)) {
uint8_t mapping = alarm_mappings[alarm_num];
if (mapping != IGNORE) {
group = mapping >> GROUP_SHIFT;
bit_num = mapping & BIT_MASK;
}
}
L
E
L
E
VB
VB
VB
СС
ЛГ
A