LCD 16x2
- Войдите на сайт для отправки комментариев
Пт, 29/04/2016 - 21:48
Понадобилось сделать большие цифры 3x2. Вот 0 и 1
uint8_t nol1[8] = {B00111,B01111,B11110,B11100,B11100,B11100,B11100,B11100}; uint8_t nol2[8] = {B11111,B11111,B00000,B00000,B00000,B00000,B00000,B00000}; uint8_t nol3[8] = {B11100,B11110,B01111,B00111,B00111,B00111,B00111,B00111}; uint8_t nol4[8] = {B11100,B11100,B11100,B11100,B11100,B11110,B01111,B00111}; uint8_t nol5[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B11111,B11111}; uint8_t nol6[8] = {B00111,B00111,B00111,B00111,B00111,B01111,B11110,B11100}; //1 uint8_t odin1[8] = {B00000,B00000,B00001,B00011,B00111,B00000,B00000,B00000}; uint8_t odin2[8] = {B01111,B11111,B11111,B11111,B11111,B11111,B11111,B11111}; uint8_t odin3[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B00000,B00000}; uint8_t odin4[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B00011,B00111}; uint8_t odin5[8] = {B11111,B11111,B11111,B11111,B11111,B11111,B11111,B11111}; uint8_t odin6[8] = {B00000,B00000,B00000,B00000,B00000,B00000,B11000,B11100};
Но проблема в том, что отобразив одну цифру, нельзя отобразить другую, т.к все CreateChar() заняты, что же делать ? как быть?И на табло светится последняя выводимая цифра, если вывести сразу две разных. Использую функцию
void ShowNum(int x,int str){ switch(x){ case 0: lcd.createChar(1, nol1); lcd.createChar(2, nol2); lcd.createChar(3, nol3); lcd.createChar(4, nol4); lcd.createChar(5, nol5); lcd.createChar(6, nol6); lcd.clear(); lcd.setCursor(str,0); lcd.print("\1"); lcd.print("\2"); lcd.print("\3"); lcd.setCursor(str,1); lcd.print("\4"); lcd.print("\5"); lcd.print("\6"); break; case 1: lcd.createChar(1, odin1); lcd.createChar(2, odin2); lcd.createChar(3, odin3); lcd.createChar(4, odin4); lcd.createChar(5, odin5); lcd.createChar(6, odin6); lcd.clear(); lcd.setCursor(str,0); lcd.print("\1"); lcd.print("\2"); lcd.print("\3"); lcd.setCursor(str,1); lcd.print("\4"); lcd.print("\5"); lcd.print("\6"); break; } }
Взять графический дисплей, а не текстовый.
http://arduino.ru/forum/programmirovanie/bolshoi-tekst-na-lcd-1602