mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM Wert hochzählen


Autor: Reinhard Schopf (schopfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Samuel C. (dragonsam)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IF sek % 4 = 0 then
 incr pwmwert
endif

Autor: Reinhard Schopf (schopfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Samuel C. (dragonsam)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"%" 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.

Autor: Reinhard Schopf (schopfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen dank für die erklärung ! man lernt nie aus :-)
werd das mal probieren, ja in bascom muß ich "mod" verwenden !
danke !

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.