diff options
| Commit | 2beeab8a7a5992b2276da5197169dc68e836f6c9 (patch) | |
|---|---|---|
| Author | 2024-05-24 13:00:29 +0300 | |
| Committer | 2024-05-24 13:00:48 +0300 | |
| Files | fbea17bec86a41adcbbb8c5d95b32c50d31cd9ee | |
| uni-projects-2beeab8a7a5992b2276da5197169dc68e836f6c9.tar uni-projects-2beeab8a7a5992b2276da5197169dc68e836f6c9.tar.gz uni-projects-2beeab8a7a5992b2276da5197169dc68e836f6c9.zip | ||
| Parent | 0b083af2d50402a014349dd4ca6eb2d4337aca1e (diff) | |
(iot/goam/display) Added error checks and moved bitpixel letters into bitpixel_chars directly, added custom camera +/- characters
2 files changed, 153 insertions, 145 deletions
| -rw-r--r-- | Year 3/Internet of things/goam/main/display.c | 9 | ||||
| -rw-r--r-- | Year 3/Internet of things/goam/main/ibm-vga-8x16.c | 289 |
diff --git a/Year 3/Internet of things/goam/main/display.c b/Year 3/Internet of things/goam/main/display.c index 5e66984..025c85e 100644 --- a/Year 3/Internet of things/goam/main/display.c +++ b/Year 3/Internet of things/goam/main/display.c @@ -27,8 +27,8 @@ static void i2c_init() { .scl_pullup_en = GPIO_PULLUP_ENABLE, .master.clk_speed = 400000, // 400kHz; has to be at least 385kHz }; - i2c_param_config(I2C_NUM_0, &conf); - i2c_driver_install(I2C_NUM_0, I2C_MODE_MASTER, 0, 0, 0); + ESP_ERROR_CHECK(i2c_param_config(I2C_NUM_0, &conf)); + ESP_ERROR_CHECK(i2c_driver_install(I2C_NUM_0, I2C_MODE_MASTER, 0, 0, 0)); /* i2c_set_start_timing(I2C_NUM_0, 10, 10); */ } @@ -92,11 +92,12 @@ static const unsigned char startup[] = { void display_init() { i2c_init(); send(CMD_STREAM, startup, sizeof(startup)); - ESP_LOGI(TAG, "Initialized display"); + display_output_beginning(); display_println(" "); display_println(" "); display_println(" "); display_println(" "); + ESP_LOGI(TAG, "Initialized display"); } void display_invertion(enum Inversion inv_byte) { @@ -107,7 +108,7 @@ void display_invertion(enum Inversion inv_byte) { // with compile flags extern const unsigned bitpixel_char_height; extern const unsigned bitpixel_char_width; -extern const uint8_t* bitpixel_chars[256]; +extern const uint8_t bitpixel_chars[256][16]; unsigned char out_page_row[LAST_COL + 1]; diff --git a/Year 3/Internet of things/goam/main/ibm-vga-8x16.c b/Year 3/Internet of things/goam/main/ibm-vga-8x16.c index 7c88790..e804225 100644 --- a/Year 3/Internet of things/goam/main/ibm-vga-8x16.c +++ b/Year 3/Internet of things/goam/main/ibm-vga-8x16.c @@ -6,134 +6,168 @@ const unsigned bitpixel_char_height = 16; #define COL(col) (0b ## col) & 0xFF, (0b ## col) >> 8, -const uint8_t space[16] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -}; +const uint8_t bitpixel_chars[256][16] = { + ['0'] = { + COL(0000011111110000) + COL(0000111111111000) + COL(0000100110001000) + COL(0000100011001000) + COL(0000100001101000) + COL(0000111111111000) + COL(0000011111110000) + COL(0000000000000000) + }, + ['1'] = { + COL(0000000000000000) + COL(0000100000100000) + COL(0000100000110000) + COL(0000111111111000) + COL(0000111111111000) + COL(0000100000000000) + COL(0000100000000000) + COL(0000000000000000) + }, -const uint8_t A[16] = { - COL(0000111111100000) - COL(0000111111110000) - COL(0000000010011000) - COL(0000000010001100) - COL(0000000010011000) - COL(0000111111110000) - COL(0000111111100000) - COL(0000000000000000) -}; + ['2'] = { + COL(0000110000010000) + COL(0000111000011000) + COL(0000101100001000) + COL(0000100110001000) + COL(0000100011001000) + COL(0000110001111000) + COL(0000110000110000) + COL(0000000000000000) + }, -const uint8_t n0[16] = { - COL(0000011111110000) - COL(0000111111111000) - COL(0000100110001000) - COL(0000100011001000) - COL(0000100001101000) - COL(0000111111111000) - COL(0000011111110000) - COL(0000000000000000) -}; + ['3'] = { + COL(0000010000010000) + COL(0000110000011000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000111111111000) + COL(0000011101110000) + COL(0000000000000000) + }, -const uint8_t n1[16] = { - COL(0000000000000000) - COL(0000100000100000) - COL(0000100000110000) - COL(0000111111111000) - COL(0000111111111000) - COL(0000100000000000) - COL(0000100000000000) - COL(0000000000000000) -}; + ['4'] = { + COL(0000000110000000) + COL(0000000111000000) + COL(0000000101100000) + COL(0000100100110000) + COL(0000111111111000) + COL(0000111111111000) + COL(0000100100000000) + COL(0000000000000000) + }, -const uint8_t n2[16] = { - COL(0000110000010000) - COL(0000111000011000) - COL(0000101100001000) - COL(0000100110001000) - COL(0000100011001000) - COL(0000110001111000) - COL(0000110000110000) - COL(0000000000000000) -}; + ['5'] = { + COL(0000010011111000) + COL(0000110011111000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000111110001000) + COL(0000011100001000) + COL(0000000000000000) + }, -const uint8_t n3[16] = { - COL(0000010000010000) - COL(0000110000011000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000111111111000) - COL(0000011101110000) - COL(0000000000000000) -}; + ['6'] = { + COL(0000011111100000) + COL(0000111111110000) + COL(0000100010011000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000111110000000) + COL(0000011100000000) + COL(0000000000000000) + }, -const uint8_t n4[16] = { - COL(0000000110000000) - COL(0000000111000000) - COL(0000000101100000) - COL(0000100100110000) - COL(0000111111111000) - COL(0000111111111000) - COL(0000100100000000) - COL(0000000000000000) -}; + ['7'] = { + COL(0000000000011000) + COL(0000000000011000) + COL(0000111100001000) + COL(0000111110001000) + COL(0000000011001000) + COL(0000000001111000) + COL(0000000000111000) + COL(0000000000000000) + }, -const uint8_t n5[16] = { - COL(0000010011111000) - COL(0000110011111000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000111110001000) - COL(0000011100001000) - COL(0000000000000000) -}; + ['8'] = { + COL(0000011101110000) + COL(0000111111111000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000111111111000) + COL(0000011101110000) + COL(0000000000000000) + }, -const uint8_t n6[16] = { - COL(0000011111100000) - COL(0000111111110000) - COL(0000100010011000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000111110000000) - COL(0000011100000000) - COL(0000000000000000) -}; + ['9'] = { + COL(0000000001110000) + COL(0000100011111000) + COL(0000100010001000) + COL(0000100010001000) + COL(0000110010001000) + COL(0000011111111000) + COL(0000001111110000) + COL(0000000000000000) + }, -const uint8_t n7[16] = { - COL(0000000000011000) - COL(0000000000011000) - COL(0000111100001000) - COL(0000111110001000) - COL(0000000011001000) - COL(0000000001111000) - COL(0000000000111000) - COL(0000000000000000) -}; + ['A'] = { + COL(0000111111100000) + COL(0000111111110000) + COL(0000000010011000) + COL(0000000010001100) + COL(0000000010011000) + COL(0000111111110000) + COL(0000111111100000) + COL(0000000000000000) + }, -const uint8_t n8[16] = { - COL(0000011101110000) - COL(0000111111111000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000111111111000) - COL(0000011101110000) - COL(0000000000000000) -}; + [' '] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, -const uint8_t n9[16] = { - COL(0000000001110000) - COL(0000100011111000) - COL(0000100010001000) - COL(0000100010001000) - COL(0000110010001000) - COL(0000011111111000) - COL(0000001111110000) - COL(0000000000000000) + ['.'] = { + COL(0000000000000000) + COL(0000000000000000) + COL(0000000000000000) + COL(0000011000000000) + COL(0000011000000000) + COL(0000000000000000) + COL(0000000000000000) + COL(0000000000000000) + }, + + ['+'] = { + COL(0000011111000000) + COL(0000010001100000) + COL(0000010001100000) + COL(0000010101000000) + COL(0000010001000000) + COL(0000011111000000) + COL(0000000000000000) + COL(0000000000000000) + }, + + ['-'] = { + COL(0011011111000000) + COL(0000110001100000) + COL(0000011001100000) + COL(0000010101000000) + COL(0000010011100000) + COL(0000011111011000) + COL(0000000000000000) + COL(0000000000000000) + }, }; -const uint8_t n10[16] = { +const uint8_t template[16] = { COL(0000000000000000) COL(0000000000000000) COL(0000000000000000) @@ -143,30 +177,3 @@ const uint8_t n10[16] = { COL(0000000000000000) COL(0000000000000000) }; - -/* const uint8_t A[] = { */ -/* 0b11100000, 0b00001111, */ -/* 0b11110000, 0b00001111, */ -/* 0b10011000, 0b00000000, */ -/* 0b10001100, 0b00000000, */ -/* 0b10011000, 0b00000000, */ -/* 0b11110000, 0b00001111, */ -/* 0b11100000, 0b00001111, */ -/* 0b00000000, 0b00000000, */ -/* }; */ - -const uint8_t* bitpixel_chars[256] = { - ['0'] = n0, - ['1'] = n1, - ['2'] = n2, - ['3'] = n3, - ['4'] = n4, - ['5'] = n5, - ['6'] = n6, - ['7'] = n7, - ['8'] = n8, - ['9'] = n9, - ['A'] = A, - [' '] = space, - ['.'] = space, -}; |
