LCD1602 большие цифры

Не, может быть страшным, но, хотя бы читабельным! Вон @v258 предложил из 6-и, и у Гайвера похожий, а с доработкой даже симпатишний(для меня)

А как он выглядит?

если так делать, тогда всегда 4 символа будет выводить… тоесть мы печатаем пустоту как символ… и их всегда 4… можно еще палку из единицы вставлять, но все равно вроде не то
и ваш вариант вроде лучше)))

Не надо печатать пустоту :slight_smile:
Желательно иметь набор красивых цифр на размер 2,4,6 знакоместа из расчёта 8 фрагментов-сегментов
…про буквы русские молчу, уже был проект на старом форуме у товарища :slight_smile:
(Технолаб вроде позывной)

Мой - так.

У Гайвера так.

Квадратиш практиш гуд!

Красиво смотрится.

:slight_smile: А тут экономно.

Сделал в симуляторе, не знаю, мне читабельно и с метра и с двух :slight_smile:


…если есть вариант красивее укажите, просто с 6 знакоместным легче, чем с двух.

Кстати, а нет в продаже таких же дисплеев с программируемыми в большем количестве знакоместами?

Есть и графические дисплеи такого типа – всякое добро есть.

С четырёх.

Так уже симпатишней и читабельней.


Вот этот упитанный вариант мне больше нравится. И 6 от 9 отделить удалось :slight_smile:
Опять же, почему-то нет цифр на 2 знакоместа в горизонталь.

На ка кой они нужны? Читабельней точно не будет.
Скетч последний выложите.

Спойлер
#include <Wire.h>
#include "LiquidCrystal_I2C.h"

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

byte fragm_1[] = {
  B00011,
  B00011,
  B00011,
  B00011,
  B00011,
  B00011,
  B00011,
  B00011 
};
byte fragm_2[] = {
  B11000,
  B11000,
  B11000,
  B11000,
  B11000,
  B11000,
  B11111,
  B01111
};
byte fragm_3[] = {
  B11110,
  B11111,
  B00011,
  B00011,
  B00011,
  B00011,
  B00011,
  B00011
};
byte fragm_4[] = {
  B01111,
  B11111,
  B11000,
  B11000,
  B11000,
  B11000,
  B11000,
  B11000
};
byte fragm_5[] = {
  B01110,
  B11111,
  B11011,
  B11011,
  B11011,
  B11011,
  B11011,
  B11011
};
byte fragm_6[] = {
  B11011,
  B11011,
  B11011,
  B11011,
  B11011,
  B11011,
  B11111,
  B01110
};
byte fragm_7[] = {
  B11110,
  B11111,
  B00011,
  B00011,
  B00011,
  B00011,
  B11111,
  B11110
};
byte fragm_8[] = {
  B01110,
  B11111,
  B11011,
  B11011,
  B11011,
  B11011,
  B11111,
  B01110
};
 struct { 
    byte *bitmap;
  }
 fragm_1_8[]={fragm_1,fragm_2,
              fragm_3,fragm_4,
              fragm_5,fragm_6,
              fragm_7,fragm_8,
              };
  byte perehodnik[]={4,5,0,0,6,1,2,6,5,0,3,6,3,7,2,0,7,7,4,6};             
///
void setup() {
  lcd.init();
  lcd.backlight();
 for(byte i=0;i<8;i++){
 lcd.createChar(i,fragm_1_8[i].bitmap );
  }
  byte k=0;
 for(byte i=0;i<10;i++){
zifra(i,k+1);
k++;if(i%2==1){k++;}  
}
}

void loop() {
  
  } 

///////////////////////
void zifra(byte zif,byte poz){// функция вывода цифры по позиции
lcd.setCursor(poz, 0);
lcd.write(perehodnik[2*zif]);
lcd.setCursor(poz, 1);
lcd.write(perehodnik[2*zif+1]);  
}
///////////////////////

Он без прогмем и с файлами библиотеки внутри папки скетча.

Как говорил мой покойный сосед - Ну а вдруг !?

Не!
Так симпотишней?

Да, гораздо лучше. Выкладывайте скетч.

Это если дисплей боком не поставить :slight_smile: