#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[] = {
B11110,
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,
B11110
};
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,
B00011,
B00011,
B00011,
B00011,
B00011,
B00011,
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,6,6,5,0,3,6,3,5,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++;}
}
lcd.clear();
}
void loop() {
lcd.setCursor(0, 0);
lcd.print("(");
lcd.write(165);
lcd.print(")");
lcd.print("(");
lcd.write(165);
lcd.print(")");
lcd.setCursor(1, 1);
lcd.print(") (");
}
///////////////////////
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]);
}
///////////////////////