Лишние символы в конце строки 1602

cucumber
Offline
Зарегистрирован: 27.10.2019

Доброго времени суток! Я пока зеленый в программировании, потому прошу отнестись с пониманием!)
Думаю над ампервольтметром на ADS1115, NANO и 1602 B. Измеряет все нормально пока, но вылазят левые символы в конце строки, при чем то 2, то 3.
Не у верен в природе происхождения этого феномена, потому решил написать в общую ветку.
Гугл похожих проблем и их решений не нагуглил. 
Может кто сталкивался с таким? Сам пока ума не дам. Питание проверял - все норм, все провода шевелил. Резистор подсветки 300, контрастность 10к. И важный момент, в других проектах дисплей работал без нареканий.
Заранее спасибо!

Скетч на данный момент

#include <Wire.h>
#include <Adafruit_ADS1015.h>
#include <LiquidCrystal.h> 
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);// RS,E,D4,D5,D6,D7

// Адрес микросхемы
//0x48 - ADDR pin connected to GROUND (default)
// 0x49 - ADDR pin connected to VDD
// 0x4A - ADDR pin connected to SDA
// 0x4B - ADDR pin connected to SCL
Adafruit_ADS1115 ads(0x48);

// Настройка входного делителя, в зависимости от максимального входного напряжения
//                                  Vin MAX         ADS1115
//GAIN_TWOTHIRDS  // 2/3x gain +/- 6.144V  1 bit = 0.1875 mV (default)
// GAIN_ONE        // 1x gain   +/- 4.096V  1 bit = 0.125 mV
// GAIN_TWO        // 2x gain   +/- 2.048V  1 bit = 0.0625 mV
// GAIN_FOUR       // 4x gain   +/- 1.024V  1 bit = 0.03125 mV
// GAIN_EIGHT      // 8x gain   +/- 0.512V  1 bit = 0.015625 mV
// GAIN_SIXTEEN    // 16x gain  +/- 0.256V  1 bit = 0.0078125 mV
#define xGAIN GAIN_TWOTHIRDS   // усилитель
#define x1BIT 0.1875      // значение 1 бита


int16_t ADCres;      // переменная для чтения результата 16 бит
float V = 0.0; // переменная для расчета напряжения

void setup(void) 
{
  lcd.begin(16,2);// LCD 16X2
  lcd.clear();
  Serial.begin(9600);
  //lcd.begin(16,2);// LCD 16X2 
  // инициализация библиотеки ADS1115
  ads.begin();
  ads.setGain(xGAIN);
}


void loop(void) 
{
  ADCres = ads.readADC_SingleEnded(1); // читаем результат единичного преобразования
  V = (ADCres * x1BIT * 11)/1000;     // рассчитываем напряжение
  
  Serial.print("ADC: "); 
  Serial.print(ADCres);
  Serial.print(" V:");
  Serial.println(V, 4);
  
  lcd.setCursor(0,0);

  lcd.print("V:");
  lcd.println(V, 3   );

  
  delay(500);
  
}

выглядит это так

 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

lcd.println() замени на lcd.print(), символ CR экран печатает так

cucumber
Offline
Зарегистрирован: 27.10.2019

Спасибо большое! Теперь все ок.