Hallo Forum melde mich auch mal wieder nach langerzeit
ich brauche mal hilfe, wie macht man das das der 7Segment Zähler statt 0-99Zählt , andersrum
von 99 nach 0?
CodeBox BascomAVR
Ich brauch auch die hilfe für das was ich gern möchte
einnen Coundown Zähler von
30Min
20Min
10Min
10 - 0 Sekunden
3x tasten:
taste 1 ( zeit einstelllen )
taste 2 ( Vohr Zählen oder zurück )
taste 3 ( Go )
Ich bitte um Hilfe Bitte
ich brauche mal hilfe, wie macht man das das der 7Segment Zähler statt 0-99Zählt , andersrum
von 99 nach 0?
CodeBox BascomAVR
$regfile = "attiny2313.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 Config Portb = Output 'Siebensegmentanzeige Siebensegment_anoden Alias Portb ' Anoden Config Portd = Output 'Siebensegmentanzeige 2 Siebensegment_kathoden Alias Portd ' Kathoden ' Timer fuer Multiplex Config Timer0 = Timer , Prescale = 256 On Timer0 Anzeige Const Timervorgabe_0 = 237 ' 200 Hz / 4 Anzeigen = 50 Hz pro Anzeige ' Timer fuer Sekunden-Takt Config Timer1 = Timer , Prescale = 64 On Timer1 Sekundentimer Const Timervorgabe_1 = 49911 '1 Hz Enable Timer0 Enable Timer1 Enable Interrupts Dim Ziffer As Byte Dim Dezimalpunkt As Byte Dim Zahl As Word Dim Zahl_temp As Word Dim Einer As Byte Dim Zehner As Byte Dim Hunderter As Byte Dim Tausender As Byte Dim Stelle As Byte Do 'Zahl wird durch Timer0 im Sekundenrhytmus gezählt Loop End Anzeige: Timer0 = Timervorgabe_0 'Zahl zerlegen in Zehner und Einer: Beispiel Zahl_temp = Zahl '1234 Einer = Zahl_temp Mod 10 '4 Zahl_temp = Zahl_temp - Einer '1230 Zahl_temp = Zahl_temp / 10 '123 Zehner = Zahl_temp Mod 10 '3 Zahl_temp = Zahl_temp - Zehner '120 Zahl_temp = Zahl_temp / 10 '12 Hunderter = Zahl_temp Mod 10 '2 Zahl_temp = Zahl_temp - Hunderter '10 Zahl_temp = Zahl_temp / 10 '1 Tausender = Zahl_temp Mod 10 '1 If Stelle < 4 Then Incr Stelle Else Stelle = 1 End If If Stelle = 1 Then Ziffer = Einer If Stelle = 2 Then Ziffer = Zehner If Stelle = 3 Then Ziffer = Hunderter If Stelle = 4 Then Ziffer = Tausender Siebensegment_kathoden = &B11111111 'Kathoden aus Select Case Ziffer Case 0 : Siebensegment_anoden = &B11101110 '0 Case 1 : Siebensegment_anoden = &B00000110 '1 hier fängt er an 1 Case 2 : Siebensegment_anoden = &B10111100 '2 dann hier 2 Case 3 : Siebensegment_anoden = &B00111110 '3 Case 4 : Siebensegment_anoden = &B01010110 '4 Case 5 : Siebensegment_anoden = &B01111010 '5 Case 6 : Siebensegment_anoden = &B11110010 '6 Case 7 : Siebensegment_anoden = &B00001110 '7 Case 8 : Siebensegment_anoden = &B11111110 '8 Case 9 : Siebensegment_anoden = &B01011110 '9 End Select If Stelle = 2 And Zahl < 10 Then Siebensegment_anoden = &B00000000 'fuehrende Null dunkel If Stelle = 3 And Zahl < 100 Then Siebensegment_anoden = &B00000000 'fuehrende Null dunkel If Stelle = 4 And Zahl < 1000 Then Siebensegment_anoden = &B00000000 'fuehrende Null dunkel If Dezimalpunkt = Stelle Then Siebensegment_anoden = Siebensegment_anoden Or &B00000001 Portd.stelle = 0 Return Sekundentimer: Timer1 = Timervorgabe_1 If Zahl <= 100 Then Incr Zahl Else Zahl = 99 >= 0 End If Return End
Ich brauch auch die hilfe für das was ich gern möchte
einnen Coundown Zähler von
30Min
20Min
10Min
10 - 0 Sekunden
3x tasten:
taste 1 ( zeit einstelllen )
taste 2 ( Vohr Zählen oder zurück )
taste 3 ( Go )
Ich bitte um Hilfe Bitte