|
23 | 23 | #include "bf0_hal_lptim.h" |
24 | 24 | #include "bf0_hal_rtc.h" |
25 | 25 |
|
26 | | -#define BYTE_222_TO_332(data) ((((data) & 0x30) << 2) | (((data) & 0x0c) << 1) | ((data) & 0x03)) |
27 | | -#define BYTE_332_TO_222(data) ((((data) & 0xC0) >> 2) | (((data) & 0x18) >> 1) | ((data) & 0x03)) |
| 26 | +const uint8_t s_222_to_332_lut[256] = { |
| 27 | +0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1a, 0x1b, |
| 28 | +0x40, 0x41, 0x42, 0x43, 0x48, 0x49, 0x4a, 0x4b, 0x50, 0x51, 0x52, 0x53, 0x58, 0x59, 0x5a, 0x5b, |
| 29 | +0x80, 0x81, 0x82, 0x83, 0x88, 0x89, 0x8a, 0x8b, 0x90, 0x91, 0x92, 0x93, 0x98, 0x99, 0x9a, 0x9b, |
| 30 | +0xc0, 0xc1, 0xc2, 0xc3, 0xc8, 0xc9, 0xca, 0xcb, 0xd0, 0xd1, 0xd2, 0xd3, 0xd8, 0xd9, 0xda, 0xdb, |
| 31 | +0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1a, 0x1b, |
| 32 | +0x40, 0x41, 0x42, 0x43, 0x48, 0x49, 0x4a, 0x4b, 0x50, 0x51, 0x52, 0x53, 0x58, 0x59, 0x5a, 0x5b, |
| 33 | +0x80, 0x81, 0x82, 0x83, 0x88, 0x89, 0x8a, 0x8b, 0x90, 0x91, 0x92, 0x93, 0x98, 0x99, 0x9a, 0x9b, |
| 34 | +0xc0, 0xc1, 0xc2, 0xc3, 0xc8, 0xc9, 0xca, 0xcb, 0xd0, 0xd1, 0xd2, 0xd3, 0xd8, 0xd9, 0xda, 0xdb, |
| 35 | +0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1a, 0x1b, |
| 36 | +0x40, 0x41, 0x42, 0x43, 0x48, 0x49, 0x4a, 0x4b, 0x50, 0x51, 0x52, 0x53, 0x58, 0x59, 0x5a, 0x5b, |
| 37 | +0x80, 0x81, 0x82, 0x83, 0x88, 0x89, 0x8a, 0x8b, 0x90, 0x91, 0x92, 0x93, 0x98, 0x99, 0x9a, 0x9b, |
| 38 | +0xc0, 0xc1, 0xc2, 0xc3, 0xc8, 0xc9, 0xca, 0xcb, 0xd0, 0xd1, 0xd2, 0xd3, 0xd8, 0xd9, 0xda, 0xdb, |
| 39 | +0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1a, 0x1b, |
| 40 | +0x40, 0x41, 0x42, 0x43, 0x48, 0x49, 0x4a, 0x4b, 0x50, 0x51, 0x52, 0x53, 0x58, 0x59, 0x5a, 0x5b, |
| 41 | +0x80, 0x81, 0x82, 0x83, 0x88, 0x89, 0x8a, 0x8b, 0x90, 0x91, 0x92, 0x93, 0x98, 0x99, 0x9a, 0x9b, |
| 42 | +0xc0, 0xc1, 0xc2, 0xc3, 0xc8, 0xc9, 0xca, 0xcb, 0xd0, 0xd1, 0xd2, 0xd3, 0xd8, 0xd9, 0xda, 0xdb |
| 43 | +}; |
| 44 | + |
| 45 | +const uint8_t s_332_to_222_lut[256] = { |
| 46 | +0x00, 0x01, 0x02, 0x03, 0x00, 0x01, 0x02, 0x03, 0x00, 0x01, 0x02, 0x03, 0x00, 0x01, 0x02, 0x03, |
| 47 | +0x08, 0x09, 0x0a, 0x0b, 0x08, 0x09, 0x0a, 0x0b, 0x08, 0x09, 0x0a, 0x0b, 0x08, 0x09, 0x0a, 0x0b, |
| 48 | +0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, |
| 49 | +0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, |
| 50 | +0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, |
| 51 | +0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, |
| 52 | +0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, 0x10, 0x11, 0x12, 0x13, |
| 53 | +0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, 0x18, 0x19, 0x1a, 0x1b, |
| 54 | +0x20, 0x21, 0x22, 0x23, 0x20, 0x21, 0x22, 0x23, 0x20, 0x21, 0x22, 0x23, 0x20, 0x21, 0x22, 0x23, |
| 55 | +0x28, 0x29, 0x2a, 0x2b, 0x28, 0x29, 0x2a, 0x2b, 0x28, 0x29, 0x2a, 0x2b, 0x28, 0x29, 0x2a, 0x2b, |
| 56 | +0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, |
| 57 | +0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, |
| 58 | +0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, |
| 59 | +0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, |
| 60 | +0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, |
| 61 | +0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b |
| 62 | +}; |
| 63 | + |
| 64 | +#define BYTE_222_TO_332(data) (s_222_to_332_lut[(data)]) |
| 65 | +#define BYTE_332_TO_222(data) (s_332_to_222_lut[(data)]) |
| 66 | + |
28 | 67 | #define POWER_SEQ_DELAY_TIME (11) |
29 | 68 | #define POWER_RESET_CYCLE_DELAY_TIME (500) |
30 | 69 |
|
|
0 commit comments