Timer in ms - LED an bei voller Sec

Gast #1048195
Lesenswert?

Hallo,

ich habe in Bascom einen Timer laufen, der mir in jeder ms eine Variable 
hochzählt.(diese Springt bei 65000 wieder auf 0 und geht dort weiter)


Jetzt möchte ich das eine Led angeht, sobald der ms Zähler ne 1000er 
Marke erreicht hat.

Also bei 1000, 2000, 3000, usw.


Wie kann ich das machen, ausser über eine ewig lange If Then 
Anweisung...
#1048205
Lesenswert?

Anfänger :-) wrote:
> Hallo,
>
> ich habe in Bascom einen Timer laufen, der mir in jeder ms eine Variable
> hochzählt.(diese Springt bei 65000 wieder auf 0 und geht dort weiter)
>
>
> Jetzt möchte ich das eine Led angeht, sobald der ms Zähler ne 1000er
> Marke erreicht hat.
>
> Also bei 1000, 2000, 3000, usw.
>
>
> Wie kann ich das machen, ausser über eine ewig lange If Then
> Anweisung...
1
static unsigned char zaehler_variable = 0;
2

3
zaehler_variable += 1;
4
zaehler_variable = zaehler_variable % 1000; 
5
/* Modulo 1000 --> wenn zaehler variable 1000 erreicht wird durch modulo 1000 der wert wieder auf 0 gesetzt*/
6

7
if (zaehler_variable == 0){
8
 /* fuehre deinen Code aus */
9
}


achsooo BASCOM... wie man das in bascom realisiert weiß ich leider 
nicht!
Das war c ...
Gast #1048215
Lesenswert?

1
zaehler_variable += 1;
2
zaehler_variable = zaehler_variable % 1000; 
3
if (zaehler_variable == 0)
4
{
5
 ...

Das ist natürlich sehr gut für die Auslastung.
Sinnvoller wäre das:
1
if ( ++zaehler_variable == 1000 )
2
{
3
  zaehler_variable = 0;
4
  ...

Aber in Bascom musst du das selbst übersetzen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren