Bilder Upload
Follow Me!
#1

Arduino Uhr Programmieren?

in Einsteiger 01.01.2015 22:48
von Jessicajessi
avatar

Hey leute :D

Ich habe das problem, dass ich für die schule eine uhr mit einem arduino uno und einem lcd display programmieren muss. Es soll alles ziemlich simpel gehalten werden. Es ist ein einzeiliges Display auf welchem links die uhrzeit und rechts die Temperatur angezeigt werden soll. Ebenso soll man die uhrzeit per knopfdruck eines knopfes in einem steckbrett einstellen können. Jetzt habe ich nur ein paar Probleme dabei: - Ich habe zwar schon ein Programm für die Uhr und für das Thermometer geschrieben, einzeln klappt alles super, jedoch bekomme ich es nicht hin, die beiden sachen auf dem display nebeneinander anzeigen zu lassen. - Auch ist es so, dass meine zeitanzeige zwar theoretisch klappt, es jedoch nicht funktioniert, dass die sobald sie die zahl 60 erreicht (bei den minute, sekunden klappt es) nicht wieder auf null springt sondern weiterläuft bis über hundert usw -auch klappt alles super wenn ich die uhrzeit so einstellen möchte dass sie wenn ich den knopf drücke die minutenanzahl um eins höher wird, jetzt wollte ich genau das gleiche verfahren für die stunden machen, jedoch klappt das nicht :((

Es tut mir leid, wenn ich hier so lange texte schreibe, doch ich bin einfach am verzweifeln und komme seit tagen nicht mehr weiter, weder mithilfe von google, da dort alles auf einem sehr hohen level im bereich programmieren ist, und dass hier eben nur "anfängerzeug", als auch von anderen personen.

Ich würde mich sehr freuen wenn mir vll geholfen werden könnte :) lg Jessi

PS. Im Anhang is die Programmdatei

nach oben springen

#2

RE: Arduino Uhr Programmieren?

in Einsteiger 01.01.2015 22:50
von Jessicajessi
avatar

da es mit dem Anhang anscheinend nicht geklappt hat, ist hier nocheinmal der Programmtext.:
#include <LiquidCrystal.h> //Bibliothek
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Pins

int KnopfPin = A1;
int buttonState = 0;
int x=0;
int KnopfPin2 = A2;
int buttonState2 = 0;
int o = 0;

String St,M,S;
int SEK = 0;
int MIN = 0;
int STU = 0;

int a = 0;


void setup (){
lcd.begin(16, 1);

pinMode (A0, INPUT);
pinMode (A1, INPUT_PULLUP);
pinMode (A2, INPUT_PULLUP);

a = analogRead (A0);



}

void loop()
{
lcd.setCursor(0, 2);

int a = analogRead (A0); //Zahlvariable auf A0 festlegen
delay (1000); //Verzögerung zum einfacheren Ablesen
double t = 0.244680851*a-119.89; //Variable für Temperatur (Rechnung extern)
lcd.print (t); // Temperatur auf Arduino anzeigen
lcd.print ("C");

lcd.setCursor(0, 0);

buttonState = digitalRead (KnopfPin);
if (buttonState == LOW)
{
x= x+1;
if (x==59)
{
x=0;
}
buttonState2 = digitalRead (KnopfPin2); // funzt noch ned
if (buttonState2 == LOW)
{
o= o+1;
if (o==23)
{
o=0;
}
}
}

S = String (SEK);
M = String (MIN);
St = String (STU);

if (SEK==60) //wenn Sekunde = 60 dann setze S 0 und erhöhe M um 1
{SEK=0;
MIN=MIN+1;}

if (MIN==60)
{MIN=0;
STU=STU+1;}

if (STU==24)
{STU=0;
MIN=0;
SEK=0;}


St=String(millis()/3600000+o*3600000); //funzt noch ned
if (St.length ()<2){St="0"+St;}
M=String(millis()/60000+x);
if (M.length()<2){M="0"+M;}
S=String((millis()/1000%60));
if (S.length()<2){S="0"+S;}


lcd.print(St+":"+M+":"+S+"");



}

nach oben springen


Besucher
0 Mitglieder und 2 Gäste sind Online

Wir begrüßen unser neuestes Mitglied: hobbit23
Forum Statistiken
Das Forum hat 139 Themen und 222 Beiträge.

Xobor Forum Software von Xobor.de
Einfach ein Forum erstellen