Gast
#977753
Hi,
folgender Sachverhalt.
Habe eine Solarzelle die auf einem Drehteller montiert ist welcher von
einem Motor angetrieben wird.
Während des Drehvorgangs soll die Momentanspannung mit der
abgespeicherten Spanung verglichen werden, und wenn diese größert ist
als der wert in der Variablen soll der neue Wert in die Variable
abgespeichert werden!
Der Vergleich soll 8 mal gemacht werden. Jede Sekunde ein mal.
Den wert der Variablen habe ich am anfang = 0 gesetzt.
Letztendlich soll die Solarzelle selbstständig auf die Position fahren
wo die größte Lichtintensität ist.
Das Problem: Mein Programm Speichert nur ein mal den wert der Spannung
(immer beim ersten Vergleich)danach bleibt der Wert Konstant.
Vollständigheits halber habe ich den ganzen code als Angang beigefügt.
Ich arbeite mit einem ATmega32
und programmiere in C
Bin noch recht unerfahren in der Programmierung (erstes etwas größeres
Projekt) hoffe jeband von euch hat nen guten Tip.
Schon mal danke im vorraus.
C-Code:
for(i=1;i<=8;i++)
{
lcd_clear();
set_cursor(2,2);
lcd_string("Bitte warten....");
MOTOR_Links();
DELAY(DELAY_LS_1s);
if(Spannung1>Spannung2)
{
Spannung2 = adcval;
Time =i;
}
}
uint8_t j =(8-Time);
for(i=1;i<=j;i++)
{
lcd_clear();
set_cursor(2,2);
lcd_string("Bitte warten....");
MOTOR_Links();
DELAY(DELAY_LS_1s);
}