From 854e8e3c595b41aee5252f1edb6d5d5f3d52a58a Mon Sep 17 00:00:00 2001 From: vl_garistov Date: Tue, 20 Oct 2020 00:16:19 +0300 Subject: [PATCH] added demo code for LED strips --- TUES-LED_strip_1/TUES-LED_strip_1.ino | 132 ++++++++++++++++++++++++++ TUES-LED_strip_1/mona_lisa.ppm | Bin 0 -> 202 bytes TUES-LED_strip_1/nozdra.ppm | 5 + TUES-LED_strip_1/rick_astley.jpg | Bin 0 -> 52686 bytes TUES-LED_strip_1/sako.ppm.txt | 13 +++ 5 files changed, 150 insertions(+) create mode 100644 TUES-LED_strip_1/TUES-LED_strip_1.ino create mode 100644 TUES-LED_strip_1/mona_lisa.ppm create mode 100644 TUES-LED_strip_1/nozdra.ppm create mode 100644 TUES-LED_strip_1/rick_astley.jpg create mode 100644 TUES-LED_strip_1/sako.ppm.txt diff --git a/TUES-LED_strip_1/TUES-LED_strip_1.ino b/TUES-LED_strip_1/TUES-LED_strip_1.ino new file mode 100644 index 0000000..2426e6a --- /dev/null +++ b/TUES-LED_strip_1/TUES-LED_strip_1.ino @@ -0,0 +1,132 @@ +#include +#include + +#define NUM_PIXELS 16 + +#define TOP_ROW 4 +#define MID_ROW 3 +#define BOT_ROW 2 + +#define PPM_HEADER_LENGHT 58 +#define IMAGE_FILE_LENGHT 202 + +/* +typedef enum {RED, GREEN, BLUE, YELLOW, MAGENTA, CYAN} simple_color_t; +int display_enum(simple_color_t buff[]); +*/ + +int render_image(uint8_t buff[3][NUM_PIXELS][3], const uint8_t image[]); +int display_rgb(uint8_t buff[3][NUM_PIXELS][3]); + +const uint8_t image_data_0[IMAGE_FILE_LENGHT] = +{ + 0x50, 0x36, 0x0a, 0x23, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x47, 0x49, 0x4d, 0x50, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x32, 0x2e, 0x31, + 0x30, 0x2e, 0x32, 0x32, 0x20, 0x50, 0x4e, 0x4d, 0x20, 0x70, 0x6c, 0x75, 0x67, 0x2d, 0x69, 0x6e, + 0x0a, 0x31, 0x36, 0x20, 0x33, 0x0a, 0x32, 0x35, 0x35, 0x0a, 0xb9, 0x78, 0x90, 0xbc, 0x7b, 0x93, + 0xbe, 0x7e, 0x98, 0xbe, 0x7e, 0x98, 0xbc, 0x7d, 0x98, 0xba, 0x7b, 0x96, 0xb8, 0x79, 0x96, 0xb4, + 0x75, 0x92, 0xb1, 0x72, 0x8f, 0xaf, 0x70, 0x8d, 0xab, 0x6c, 0x89, 0xa7, 0x68, 0x85, 0xa2, 0x61, + 0x7f, 0x9c, 0x5b, 0x79, 0x9a, 0x57, 0x76, 0x9b, 0x56, 0x75, 0xb8, 0x77, 0x8f, 0xbb, 0x7a, 0x92, + 0xbc, 0x7c, 0x96, 0xbc, 0x7c, 0x96, 0xbb, 0x7b, 0x96, 0xb9, 0x79, 0x94, 0xb5, 0x76, 0x91, 0xb2, + 0x73, 0x8e, 0xae, 0x6f, 0x8c, 0xac, 0x6d, 0x8a, 0xa4, 0x65, 0x82, 0xa0, 0x61, 0x7e, 0x9b, 0x5a, + 0x78, 0x96, 0x55, 0x73, 0x94, 0x51, 0x70, 0x97, 0x52, 0x71, 0xb9, 0x75, 0x8c, 0xba, 0x79, 0x91, + 0xbd, 0x7c, 0x94, 0xbb, 0x7b, 0x95, 0xba, 0x7a, 0x95, 0xb8, 0x78, 0x93, 0xb5, 0x75, 0x90, 0xb0, + 0x71, 0x8c, 0xad, 0x6e, 0x8b, 0xaa, 0x6b, 0x88, 0xa3, 0x64, 0x81, 0xa0, 0x5f, 0x7d, 0x9b, 0x5a, + 0x78, 0x97, 0x54, 0x73, 0x95, 0x52, 0x71, 0x99, 0x53, 0x75 +}; + +const uint8_t image_data_1[IMAGE_FILE_LENGHT] = +{ + 0x50, 0x36, 0x0a, 0x23, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x47, 0x49, 0x4d, 0x50, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x32, 0x2e, 0x31, + 0x30, 0x2e, 0x32, 0x32, 0x20, 0x50, 0x4e, 0x4d, 0x20, 0x70, 0x6c, 0x75, 0x67, 0x2d, 0x69, 0x6e, + 0x0a, 0x31, 0x36, 0x20, 0x33, 0x0a, 0x32, 0x35, 0x35, 0x0a, 0xb9, 0xa9, 0xd6, 0xb8, 0xa7, 0xd4, + 0xba, 0xaa, 0xd7, 0xbd, 0xac, 0xd9, 0xbc, 0xab, 0xd8, 0xbc, 0xab, 0xd7, 0xba, 0xa9, 0xd5, 0xb5, + 0xa4, 0xd0, 0xaf, 0x9e, 0xca, 0x98, 0x89, 0xb2, 0x8d, 0x7e, 0xa5, 0x7c, 0x6d, 0x94, 0x70, 0x62, + 0x86, 0x6b, 0x5d, 0x80, 0x6c, 0x5e, 0x81, 0x6e, 0x60, 0x81, 0xb9, 0xac, 0xd8, 0xc2, 0xb2, 0xdf, + 0xbe, 0xb1, 0xdd, 0xbd, 0xad, 0xda, 0xbb, 0xae, 0xda, 0xba, 0xad, 0xd9, 0xb7, 0xaa, 0xd6, 0xb2, + 0xa5, 0xd1, 0xae, 0xa1, 0xcc, 0x9d, 0x8e, 0xb7, 0x8f, 0x80, 0xa7, 0x80, 0x72, 0x96, 0x77, 0x69, + 0x8d, 0x72, 0x64, 0x87, 0x6e, 0x60, 0x83, 0x6c, 0x5e, 0x7f, 0xbe, 0xb1, 0xdd, 0xc4, 0xb7, 0xe3, + 0xc2, 0xb5, 0xe1, 0xc1, 0xb4, 0xe0, 0xc0, 0xb3, 0xdf, 0xbe, 0xb3, 0xde, 0xbb, 0xb0, 0xdb, 0xb7, + 0xac, 0xd7, 0xb3, 0xa8, 0xd2, 0xa0, 0x91, 0xba, 0x93, 0x84, 0xab, 0x83, 0x75, 0x99, 0x78, 0x6a, + 0x8e, 0x72, 0x64, 0x87, 0x6d, 0x5f, 0x82, 0x6b, 0x5d, 0x7e +}; + +const uint8_t image_data_2[] = +{ + 0x50, 0x36, 0x0a, 0x23, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, + 0x47, 0x49, 0x4d, 0x50, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x32, 0x2e, 0x31, + 0x30, 0x2e, 0x32, 0x32, 0x20, 0x50, 0x4e, 0x4d, 0x20, 0x70, 0x6c, 0x75, 0x67, 0x2d, 0x69, 0x6e, + 0x0a, 0x31, 0x36, 0x20, 0x33, 0x0a, 0x32, 0x35, 0x35, 0x0a, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, 0x1a, + 0x0a, 0xfe, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x1f, 0xee, 0x1d, 0x00, 0x00, + 0x00, 0x1f, 0xee, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x04, 0x04, 0x04, + 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, 0x1a, + 0x0a, 0xfe, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0xdd, 0xfa, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xdd, 0xfa, 0x03, 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, + 0x00, 0x00, 0x00, 0x1a, 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, 0x1a, + 0x0a, 0xfe, 0x1a, 0x0a, 0xfe, 0x00, 0x00, 0x00, 0xdd, 0xfa, 0x03, 0xdd, 0xfa, 0x03, 0xdd, 0xfa, + 0x03, 0xdd, 0xfa, 0x03, 0xdd, 0xfa, 0x03, 0x00, 0x00, 0x00 +}; + +Adafruit_NeoPixel top_row(NUM_PIXELS, TOP_ROW, NEO_GRB); +Adafruit_NeoPixel mid_row(NUM_PIXELS, MID_ROW, NEO_GRB); +Adafruit_NeoPixel bot_row(NUM_PIXELS, BOT_ROW, NEO_GRB); + +void setup() +{ + pinMode(TOP_ROW, OUTPUT); + pinMode(MID_ROW, OUTPUT); + pinMode(BOT_ROW, OUTPUT); + + // LED strip initialization + top_row.begin(); + mid_row.begin(); + bot_row.begin(); +} + +void loop() +{ + uint8_t frame_buffer[3][NUM_PIXELS][3] = {{{0}}}; + + render_image(frame_buffer, image_data_2); + display_rgb(frame_buffer); +} + +int render_image(uint8_t buff[3][NUM_PIXELS][3], const uint8_t image[]) +{ + if (buff == NULL || image == NULL) + return -1; + + for (uint8_t row = 0; row < 3; row++) + { + for (uint8_t col = 0; col < NUM_PIXELS; col++) + { + for (uint8_t i = 0; i < 3; i++) + { + buff[row][col][i] = image[PPM_HEADER_LENGHT + row * NUM_PIXELS * 3 + col * 3 + i]; + } + } + } + + return 0; +} + +int display_rgb(uint8_t buff[3][NUM_PIXELS][3]) +{ + if (buff == NULL) + return -1; + + for (uint8_t col; col < NUM_PIXELS; col++) + { + top_row.setPixelColor(col, top_row.Color(buff[0][col][0], buff[0][col][1], buff[0][col][2])); + mid_row.setPixelColor(col, mid_row.Color(buff[1][col][0], buff[1][col][1], buff[1][col][2])); + bot_row.setPixelColor(col, bot_row.Color(buff[2][col][0], buff[2][col][1], buff[2][col][2])); + } + + top_row.show(); + mid_row.show(); + bot_row.show(); + + return 0; +} diff --git a/TUES-LED_strip_1/mona_lisa.ppm b/TUES-LED_strip_1/mona_lisa.ppm new file mode 100644 index 0000000000000000000000000000000000000000..2be5d2abbe9b84624ceedabca09d4a0eba033ff8 GIT binary patch literal 202 zcmWGA<5E^|E=o--Nlj5ms#I|I^bJrbOD!tS%+FIW(la#BGcr;L@bgtD$SFXRznFni5CCB# Pn~BB-Dg&xPMnDk&f^IQH literal 0 HcmV?d00001 diff --git a/TUES-LED_strip_1/nozdra.ppm b/TUES-LED_strip_1/nozdra.ppm new file mode 100644 index 0000000..dbbd1b3 --- /dev/null +++ b/TUES-LED_strip_1/nozdra.ppm @@ -0,0 +1,5 @@ +P6 +# Created by GIMP version 2.10.22 PNM plug-in +16 3 +255 +¹x¼{“¾~˜¾~˜¼}˜º{–¸y–´u’±r¯p«l‰§h…¢aœ[yšWv›Vu¸w»z’¼|–¼|–»{–¹y”µv‘²sŽ®oŒ¬mŠ¤e‚ a~›Zx–Us”Qp—Rq¹uŒºy‘½|”»{•ºz•¸x“µu°qŒ­n‹ªkˆ£d _}›Zx—Ts•Rq™Su \ No newline at end of file diff --git a/TUES-LED_strip_1/rick_astley.jpg b/TUES-LED_strip_1/rick_astley.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fd8e530f5d0c5b6b16f0d636c6fbf8799c434deb GIT binary patch literal 52686 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 XNL>#bw5hc31g^~ezl%EPe^32Crw&#K literal 0 HcmV?d00001 diff --git a/TUES-LED_strip_1/sako.ppm.txt b/TUES-LED_strip_1/sako.ppm.txt new file mode 100644 index 0000000..c3967d2 --- /dev/null +++ b/TUES-LED_strip_1/sako.ppm.txt @@ -0,0 +1,13 @@ +0x50, 0x36, 0x0a, 0x23, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, +0x47, 0x49, 0x4d, 0x50, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x32, 0x2e, 0x31, +0x30, 0x2e, 0x32, 0x32, 0x20, 0x50, 0x4e, 0x4d, 0x20, 0x70, 0x6c, 0x75, 0x67, 0x2d, 0x69, 0x6e, +0x0a, 0x31, 0x36, 0x20, 0x33, 0x0a, 0x32, 0x35, 0x35, 0x0a, 0xb9, 0xa9, 0xd6, 0xb8, 0xa7, 0xd4, +0xba, 0xaa, 0xd7, 0xbd, 0xac, 0xd9, 0xbc, 0xab, 0xd8, 0xbc, 0xab, 0xd7, 0xba, 0xa9, 0xd5, 0xb5, +0xa4, 0xd0, 0xaf, 0x9e, 0xca, 0x98, 0x89, 0xb2, 0x8d, 0x7e, 0xa5, 0x7c, 0x6d, 0x94, 0x70, 0x62, +0x86, 0x6b, 0x5d, 0x80, 0x6c, 0x5e, 0x81, 0x6e, 0x60, 0x81, 0xb9, 0xac, 0xd8, 0xc2, 0xb2, 0xdf, +0xbe, 0xb1, 0xdd, 0xbd, 0xad, 0xda, 0xbb, 0xae, 0xda, 0xba, 0xad, 0xd9, 0xb7, 0xaa, 0xd6, 0xb2, +0xa5, 0xd1, 0xae, 0xa1, 0xcc, 0x9d, 0x8e, 0xb7, 0x8f, 0x80, 0xa7, 0x80, 0x72, 0x96, 0x77, 0x69, +0x8d, 0x72, 0x64, 0x87, 0x6e, 0x60, 0x83, 0x6c, 0x5e, 0x7f, 0xbe, 0xb1, 0xdd, 0xc4, 0xb7, 0xe3, +0xc2, 0xb5, 0xe1, 0xc1, 0xb4, 0xe0, 0xc0, 0xb3, 0xdf, 0xbe, 0xb3, 0xde, 0xbb, 0xb0, 0xdb, 0xb7, +0xac, 0xd7, 0xb3, 0xa8, 0xd2, 0xa0, 0x91, 0xba, 0x93, 0x84, 0xab, 0x83, 0x75, 0x99, 0x78, 0x6a, +0x8e, 0x72, 0x64, 0x87, 0x6d, 0x5f, 0x82, 0x6b, 0x5d, 0x7e \ No newline at end of file -- 2.39.2