From: Ivan Stefanov Date: Fri, 11 Mar 2022 16:35:18 +0000 (+0200) Subject: Display type pictures LCD VFD E-Ink VFD X-Git-Url: https://kolegite.com/gitweb/?a=commitdiff_plain;h=311cf57ab2570b0400462e2b106ab5beffbe3e6e;p=vmks.git Display type pictures LCD VFD E-Ink VFD Added 40ms POR init delay to all LCD examples --- diff --git a/Examples/LCD_bidirectional_counter/LCD_bidirectional_counter.ino b/Examples/LCD_bidirectional_counter/LCD_bidirectional_counter.ino index 573dff5..1e25c5a 100644 --- a/Examples/LCD_bidirectional_counter/LCD_bidirectional_counter.ino +++ b/Examples/LCD_bidirectional_counter/LCD_bidirectional_counter.ino @@ -21,6 +21,7 @@ volatile uint8_t counter = 0; void setup() { + delay(40); // LCD Power-On Reset (POR) initialization wait lcd.begin(COLUMNS, ROWS); pinMode(UP_PIN, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(UP_PIN), counter_up, FALLING); diff --git a/Examples/LCD_scroll/LCD_scroll.ino b/Examples/LCD_scroll/LCD_scroll.ino index c84426d..5eaa1b1 100644 --- a/Examples/LCD_scroll/LCD_scroll.ino +++ b/Examples/LCD_scroll/LCD_scroll.ino @@ -59,6 +59,7 @@ LiquidCrystal lcd(RS, EN, D4, D5, D6, D7); void setup() { + delay(40); // LCD Power-On Reset (POR) initialization wait // set up the LCD's number of columns and rows: lcd.begin(COLS, ROWS); lcd.print("hello, world!"); diff --git a/Examples/LCD_scroll_multiple/LCD_scroll_multiple.ino b/Examples/LCD_scroll_multiple/LCD_scroll_multiple.ino index 0be4553..21bad7c 100644 --- a/Examples/LCD_scroll_multiple/LCD_scroll_multiple.ino +++ b/Examples/LCD_scroll_multiple/LCD_scroll_multiple.ino @@ -25,6 +25,7 @@ LiquidCrystal LCD_screen(RS, EN, D4, D5, D6, D7); void setup() { + delay(40); // LCD Power-On Reset (POR) initialization wait LCD_screen.begin(COLS, ROWS); LCD_screen.clear(); } diff --git a/Lesson_Plans/Lesson_19.md b/Lesson_Plans/Lesson_19.md index 1b72dde..4841f6b 100644 --- a/Lesson_Plans/Lesson_19.md +++ b/Lesson_Plans/Lesson_19.md @@ -27,8 +27,10 @@ ### Допълнително: Пример за опроводяването в една стандартна Full-HD RGB 8-bit/color матрица: -`1920*1080(pixels) = 2073600px ~ 2M` +`1920*1080(pixels) = 2073600px ~ 2M` пиксела + `1920*1080(pixels) x 3(rgb) x 8(bit/color) x 2(two electrodes per pixel) = 99532800 ~ 100M` извода + Единия електрод може да е общ за всички пиксели или да се свържат в матрица `1920*1080`, като едната от страните ще е с тройно повече изводи за R/G/B каналите. На практика се използват преместващи регистри(преподавани в предния урок), като всеки ред на екрана е един преместващ регистър и може началото(входа) на всеки следващ ред да се свърже към края(изхода) на предния ред в един общ преместващ регистър. По такъв начин се управляват реалните монитори, но има различни оптимизации за по-висока честота на опресняване, като например отделни преместващи регистри за всеки цветови канал. diff --git a/Lesson_Plans/Lesson_20.md b/Lesson_Plans/Lesson_20.md index 918a73b..ba96571 100644 --- a/Lesson_Plans/Lesson_20.md +++ b/Lesson_Plans/Lesson_20.md @@ -34,21 +34,22 @@ ### Допълнително: -[Как работи екрана и пример без използване на библиотека(и въобще без микроконтролер)] (https://www.youtube.com/watch?v=cXpeTxC3_A4) - съветвам ви да го изгледате този +[Как работи екрана и пример без използване на библиотека и въобще без микроконтролер] (https://www.youtube.com/watch?v=cXpeTxC3_A4) - съветвам ви да го изгледате този [Пример за използване с микропроцесор 6502 на асемблер](https://www.youtube.com/watch?v=FY3zTUaykVo) [Допълнително обяснение как работи този екран(https://www.engineersgarage.com/making-custom-characters-on-16x2-lcd/) -Ще кача пример без библиотеката и ще добавя линк към него тук. -Ще сложа картинки за различните видове дисплей с типовете им в папка [Types](https://gitlab.com/tues-embedded/vmks/-/tree/master/Useful%20Pictures/LCD/Types). +[Картинки за различните видове дисплей с типовете им](https://gitlab.com/tues-embedded/vmks/-/tree/master/Useful%20Pictures/LCD/Types) ----- Кодиране на символ - пример с буквата `h`, като активните пиксели са `1`: +``` 1 - bit 1111 - nibble 11110000 - byte / octet +``` Ако кодираме пикселите вертикално от горе-надолу и от ляво на дясно: ```C++ diff --git a/Useful Pictures/E_Ink_Dual_color.jpg b/Useful Pictures/E_Ink_Dual_color.jpg new file mode 100644 index 0000000..a9999b4 Binary files /dev/null and b/Useful Pictures/E_Ink_Dual_color.jpg differ diff --git a/Useful Pictures/E_Ink_Single_color.jpg b/Useful Pictures/E_Ink_Single_color.jpg new file mode 100644 index 0000000..3b2b7f3 Binary files /dev/null and b/Useful Pictures/E_Ink_Single_color.jpg differ diff --git a/Useful Pictures/LCD/Types/7_segment_LCD.png b/Useful Pictures/LCD/Types/7_segment_LCD.png new file mode 100644 index 0000000..fc1e0ac Binary files /dev/null and b/Useful Pictures/LCD/Types/7_segment_LCD.png differ diff --git a/Useful Pictures/LCD/Types/Color_Graphic_TFT_LCD_Display.jpg b/Useful Pictures/LCD/Types/Color_Graphic_TFT_LCD_Display.jpg new file mode 100644 index 0000000..b598ee0 Binary files /dev/null and b/Useful Pictures/LCD/Types/Color_Graphic_TFT_LCD_Display.jpg differ diff --git a/Useful Pictures/LCD/Types/Custom_Multi_Color_LCD.png b/Useful Pictures/LCD/Types/Custom_Multi_Color_LCD.png new file mode 100644 index 0000000..e718ef8 Binary files /dev/null and b/Useful Pictures/LCD/Types/Custom_Multi_Color_LCD.png differ diff --git a/Useful Pictures/LCD/Types/Custom_Single_Color_LCD.png b/Useful Pictures/LCD/Types/Custom_Single_Color_LCD.png new file mode 100644 index 0000000..7782ab8 Binary files /dev/null and b/Useful Pictures/LCD/Types/Custom_Single_Color_LCD.png differ diff --git a/Useful Pictures/LCD/Types/Dot_Matrix_Character_LCD.png b/Useful Pictures/LCD/Types/Dot_Matrix_Character_LCD.png new file mode 100644 index 0000000..edab02d Binary files /dev/null and b/Useful Pictures/LCD/Types/Dot_Matrix_Character_LCD.png differ diff --git a/Useful Pictures/LCD/Types/Dot_Matrix_Graphic_LCD.png b/Useful Pictures/LCD/Types/Dot_Matrix_Graphic_LCD.png new file mode 100644 index 0000000..871c7ce Binary files /dev/null and b/Useful Pictures/LCD/Types/Dot_Matrix_Graphic_LCD.png differ diff --git a/Useful Pictures/LCD/Types/Matrix_LCD.jpg b/Useful Pictures/LCD/Types/Matrix_LCD.jpg new file mode 100644 index 0000000..1f6e0ad Binary files /dev/null and b/Useful Pictures/LCD/Types/Matrix_LCD.jpg differ diff --git a/Useful Pictures/LCD/Types/VA_IPS_TN_visual_difference.png b/Useful Pictures/LCD/Types/VA_IPS_TN_visual_difference.png new file mode 100644 index 0000000..5c3670e Binary files /dev/null and b/Useful Pictures/LCD/Types/VA_IPS_TN_visual_difference.png differ diff --git a/Useful Pictures/OLED_Screen.png b/Useful Pictures/OLED_Screen.png new file mode 100644 index 0000000..488e2e0 Binary files /dev/null and b/Useful Pictures/OLED_Screen.png differ diff --git a/Useful Pictures/VFD Display/7_segment_VFD.png b/Useful Pictures/VFD Display/7_segment_VFD.png new file mode 100644 index 0000000..697eaef Binary files /dev/null and b/Useful Pictures/VFD Display/7_segment_VFD.png differ diff --git a/Useful Pictures/VFD Display/Big_Dot_Matrix_Character_VFD.png b/Useful Pictures/VFD Display/Big_Dot_Matrix_Character_VFD.png new file mode 100644 index 0000000..04d0a50 Binary files /dev/null and b/Useful Pictures/VFD Display/Big_Dot_Matrix_Character_VFD.png differ diff --git a/Useful Pictures/VFD Display/Custom_Color_VFD.jpg b/Useful Pictures/VFD Display/Custom_Color_VFD.jpg new file mode 100644 index 0000000..5eb353b Binary files /dev/null and b/Useful Pictures/VFD Display/Custom_Color_VFD.jpg differ diff --git a/Useful Pictures/VFD Display/Custom_VFD.png b/Useful Pictures/VFD Display/Custom_VFD.png new file mode 100644 index 0000000..00bbc06 Binary files /dev/null and b/Useful Pictures/VFD Display/Custom_VFD.png differ diff --git a/Useful Pictures/VFD Display/Dot_Matrix_Character_VFD.png b/Useful Pictures/VFD Display/Dot_Matrix_Character_VFD.png new file mode 100644 index 0000000..1a7c005 Binary files /dev/null and b/Useful Pictures/VFD Display/Dot_Matrix_Character_VFD.png differ diff --git a/Useful Pictures/VFD Display/Dot_Matrix_Graphic_VFD.png b/Useful Pictures/VFD Display/Dot_Matrix_Graphic_VFD.png new file mode 100644 index 0000000..7a20d44 Binary files /dev/null and b/Useful Pictures/VFD Display/Dot_Matrix_Graphic_VFD.png differ