Forum: Mikrocontroller und Digitale Elektronik Zeitmessen, Rundenmessen


von Fabian (Gast)


Lesenswert?

Hallo zusammen ich habe zwei probleme ich will eine zeit angezeigt 
bekommen wenn die lichtschranke durchbrochen wird und wenn noch Sie nach 
paar runden noch mal unterbrochen wird dann stoppt.

In das Listing unten muss noch ein Interrupt rein ich weis ;)

Habe die Zeit soweit, möchte nur noch die 1/10, 1/100 und 1/1000 
sekunden angezeigt bekommen,

und ich habe das Problem das ich die runden nicht eingeben kann, 
vielleicht kann mir einer weiterhelfen.

HIER DAS LSITING:


$regfile = "m8def.dat"
$crystal = 8000000

Config Lcd = 20 * 4 , Chipset = KS077
Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , _
Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.0 , Rs = Portd.6

Config Timer0 = Timer , Prescale = 64
On Timer0 Timer1int

S1 Alias Pind.3
S2 Alias Pind.4
S3 Alias Pind.7
S4 Alias Pind.2

Dim Millisekunden As Word
Dim Sekunde As Byte
Dim Minute As Byte
Dim Stunde As Byte
Dim Flag As Byte
Enable Interrupts

Stunde = 0
Minute = 0

Enable Timer0

Main:

Initlcd
Cls
Cursor Off
Do

  Debounce S1 , 0 , Tast1 , Sub
  Debounce S2 , 0 , Tast2 , Sub
  Debounce S3 , 0 , Tast3 , Sub
  Debounce S4 , 0 , Tast4 , Sub

If Flag = 1 Then
Flag = 0
If Sekunde > 59 Then
Incr Minute
Sekunde = 0
If Minute > 59 Then
Incr Stunde
Minute = 0
If Stunde > 23 Then
Stunde = 0
End If
End If
End If

locate 1,1
  LCD  "Rundezahl: " : LCD I

Locate 3 , 1

If Stunde => 10 Then
Lcd Stunde
else
Lcd "0" ; Stunde
end if

LCD":"

If Minute => 10 Then
LCD Minute
else
Lcd "0" ; Minute
end if

LCD ":"

If sekunde =>10 Then
Lcd sekunde
else
Lcd "0"; sekunde
end if

End If
Loop

Goto Main

Timer1int:
Timer0 = 131
Incr Millisekunden ' Millisekunden hochzählen
if Millisekunden > 999 then
Incr Sekunde
Flag = 1
Millisekunden = 0
End If
Return


Tast1:

I = I + 1

Return

Tast2:

Return

Tast3:

I = 0

cls

Return

Tast4:

Return

ich hoffe Ihr könnt mir weiterhelfen, schon mal im voraus danke ;) 
Einfach ne E-Mail schreiben, thx

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
Noch kein Account? Hier anmelden.