Forum

Einloggen | Registrieren | RSS  

Nano, I2C, LCD geht nicht (Elektronik)

verfasst von RR E-Mail, 25.06.2019, 17:21 Uhr

Hallo!
Nachdem ich im Arduino-Forum gescheitert bin, einen neuen Thread zu erstellen, stelle ich mal meine Frage hier. Ein Nano (China) ist via I2C mit einer DS3231 und einem 16-2 Lcd Display verbunden, die Uhr geht, das Display nicht. Mit UNO funktioniert beides, auch mit dem Chinaclone-UNO. Der Nano geht nur mit dem alten Bootloader.
Hier mal das Programm (Datum und Zeit wird 3 s dargestellt, dann 3s die aktuelle Temperatur sowie die höchste und tiefste seit dem letzten Reset. Das Display ist von der Art, für die es bei YouTube zig Anleitungen gibt...einen Namen hat es nicht.

#include <Wire.h>
#include "RTClib.h"
//#include <LCD.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3,POSITIVE);
RTC_DS3231 rtc;
int T = A0; //Eingang für Temperatur

float TempMin = 100.0;
float TempMax = -50.0;
float Tempi;
float volt;
float TempC;


void setup() {
// put your setup code here, to run once:
pinMode(T, INPUT);
Serial.begin(57600);
lcd.begin(16,2);

delay(3000); // wait for console opening
lcd.clear();
lcd.setCursor(0,0);

if (! rtc.begin()) {
Serial.println("Couldn't find RTC";);
while (1);
}


}

void loop() {
// put your main code here, to run repeatedly:
DateTime now = rtc.now();


Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
//Serial.print(" (";);
//Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
//Serial.print(";) ";);
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
lcd.clear();
lcd.setCursor(2,0);
lcd.print(now.day(), DEC);
lcd.setCursor(5,0);
lcd.print(now.month(), DEC);
lcd.setCursor(8,0);
lcd.print(now.year(), DEC);
lcd.setCursor(3,1);
lcd.print(now.hour(), DEC);
lcd.setCursor(6,1);
lcd.print(now.minute(), DEC);
lcd.setCursor(9,1);
lcd.print(now.second(), DEC);


delay(3000);


Tempi = analogRead(0);
volt = Tempi*5.0/1023.0;
TempC = (volt - 1.375) / 0.0225;
if(TempC <= TempMin)
{
TempMin = TempC;
//TempMin = String(Tempi);
}



if(TempC >= TempMax)
{
TempMax = TempC;
//TempMax = String(Tempi);
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Temp:";);
lcd.setCursor(0,1);
lcd.print("MiMa:";);
lcd.setCursor(7,0);
lcd.print(TempC,1);
lcd.setCursor(5,1);
lcd.print(TempMin,1);
lcd.setCursor(11,1);
lcd.print(TempMax,1);
Serial.print(TempC);
delay(3000);

}
Ich hoffe mal, Bastelix liest mit... Gruß RR



Gesamter Thread:

Nano, I2C, LCD geht nicht - RR, 25.06.2019, 17:21 (Elektronik)
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 18:39
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 18:45
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 19:22
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 19:31
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 20:55
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 20:57
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 21:06
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 21:07
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 21:14
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 21:32
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 21:57
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 22:32
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 21:02
Nano, I2C, LCD geht nicht - finni(R), 25.06.2019, 21:53
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 23:03
Nano, I2C, LCD geht nicht - Gast, 25.06.2019, 19:14
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 19:25
Nano, I2C, LCD geht nicht - gast, 25.06.2019, 21:44
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 21:48
Nano, I2C, LCD geht nicht - RR, 25.06.2019, 23:07
Nano, I2C, LCD geht nicht - xy(R), 25.06.2019, 23:16
Nano, I2C, LCD geht nicht - Nils, 26.06.2019, 09:35
Schlußbemerkung - RR, 26.06.2019, 13:16