Hallo ! Ich stehe gerade ein Wenig auf der Leitung ! Ich habe einen Mega8 programmiert auf dem eine Uhr mittels Timer 1 läuft und die bei einer bestimmten Uhrzeit eine Led Leiste mit Timer2 PWM aufdimmt und abends wieder abdimmt. Geht ja alles Super. Da ich in der Timer1_isr eine Variable im Sekundentakt hochzähle und an die PWM übergebe dauert das aufdimmen der LED´s etwas mehr wie 4 Minuten. Ich möchte das aber etwa an die 16 Minuten bringen also ca. alle 4 Sekunden einen Wert höher. Nur weiß ich grad nicht wie ich das programmieren soll das nur alle 4 Sekunden ein wert hochgezählt wird ?? Programmiert in Bascom ! So siehts ein Teil der Timer1_isr aus : Incr Sek If Sek = 60 then sek = 0 Incr Min endif usw... ...geht das denn etwa so .... IF sek = sek + 4 then incr pwmwert endif usw.... komm da grad irgendwie nicht weiter, bitte um ein paar denkanstösse.. danke sehr ! lg
aha ! das funktioniert so ? wieso sek % 4 = 0 ? kannst du mir das mal erklären ? kenn ich so gar nicht. ich möchte das der wert jede 4. sek hochgezählt wird, also nach 4,8,12,16...usw
"%" steht für Modulo, es kann sein, dass du statt dem "%" auch "MOD" schreiben musst. Ein Modulo teilt eine Zahl und gibt als Ergebnis den Rest der Teilung aus. Jede vierte Zahl ist durch 4 teilbar, somit ist der Rest der Teilung 0.
vielen dank für die erklärung ! man lernt nie aus :-) werd das mal probieren, ja in bascom muß ich "mod" verwenden ! danke !
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.