Hallo
Also vielen dank nochmal für die Hilfe.
Hier der Code:
Code:
$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000
$baud = 9600


Declare Sub Plussekunde()
Declare Sub Plusminute()
Declare Sub Plusstunde()
Declare Sub Clockstart()
Declare Sub Plustag()
Declare Function Tastenabfrage() As Byte
Dim I As Integer
Dim N As Integer
Dim Ton As Integer
Dim Sekunde As Word
Dim Minute As Word
Dim Stunde As Word

Dim Wochentag As String * 12


Dim Tag As Word
Dim Taste As Byte
Config Portc = Output
Portc = 11111111
Config Adc = Single , Prescaler = Auto                      'Für Tastenabfrage und Spannungsmessung
Config Pina.7 = Input                                       'Für Tastenabfrage
Porta.7 = 1

Tag = 1
Do
   Taste = Tastenabfrage()
   If Taste <> 0 Then

      Select Case Taste
         Case 1
            Call Plussekunde
         Case 2
            Call Plusminute
         Case 3
            Call Plusstunde
         Case 4
            Call Clockstart
         Case 5
            Call Plustag
      End Select
      Sound Portd.7 , 400 , 500                             'BEEP
   End If
   Waitms 100

If Sekunde = 60 Then
Sekunde = 0
Minute = Minute + 1
Else
End If

If Minute = 60 Then
Minute = 0
Stunde = Stunde + 1
Else
End If

If Stunde = 24 Then
Stunde = 0
Tag = Tag + 1
End If

If Tag > 7 Then
Tag = 1
End If

'Select Case Tag
'Case 1 Wochentag = "Montag"
'Case 2 Wochentag = "Dienstag"
'Case 3 Wochentag = "Mittwoch"
'Case 4 Wochentag = "Donnerstag"
'Case 5 Wochentag = "Freitag"
'Case 6 Wochentag = "Samstag"
'Case 7 Wochentag = "Sonntag"
'Else Case
'End Select

Select Case Tag
Case 1
Wochentag = "Montag"
Case 2
Wochentag = "Dienstag"
Case 3
Wochentag = "Mittwoch"
Case 4
Wochentag = "Donnerstag"
Case 5
Wochentag = "Freitag"
Case 6
Wochentag = "Samstag"
Case 7
Wochentag = "Sonntag"
End Select




Loop
End








Function Tastenabfrage() As Byte
Local Ws As Word
   Tastenabfrage = 0
   Ton = 600
   Start Adc
   Ws = Getadc(7)

   If Ws < 500 Then
      Select Case Ws
         Case 400 To 450
            Tastenabfrage = 1
            Ton = 550
         Case 330 To 380
            Tastenabfrage = 2
            Ton = 500
         Case 260 To 305
            Tastenabfrage = 3
            Ton = 450
         Case 180 To 220
            Tastenabfrage = 4
            Ton = 400
         Case 90 To 130
            Tastenabfrage = 5
             Ton = 350
      End Select
      Sound Portd.7 , 400 , Ton
   End If
End Function

Sub Plussekunde()
Sekunde = Sekunde + 1
Print Wochentag ; ", " ; Stunde ; ":" ; Minute ; ":" ; Sekunde
End Sub

Sub Plusminute()
Minute = Minute + 1
Print Wochentag ; ", " ; Stunde ; ":" ; Minute ; ":" ; Sekunde
End Sub

Sub Plusstunde()
Stunde = Stunde + 1
Print Wochentag ; ", " ; Stunde ; ":" ; Minute ; ":" ; Sekunde
End Sub
Sub Plustag()
Tag = Tag + 1
Print Wochentag ; ", " ; Stunde ; ":" ; Minute ; ":" ; Sekunde
End Sub




Sub Clockstart()
Config Timer1 = Timer , Prescale = 256                      'Konfiguriere Timer1
Enable Interrupts
Enable Timer1
Sekunde = Sekunde + 1                                       ' + 1Sekunden für Timerausgleich
On Timer1 Isr_von_timer1                                    'verzweige bei Timer1 überlauf zu   Isr_von_Timer1
Enable Interrupts
Timer1 = 68570                                              'Timer1 soll schon von 34285 wegzählen
End Sub








Isr_von_timer1:                                             'ISR von Timer1
Timer1 = 68570
'Sound Portd.7 , 400 , 550
'Print "Stunde" ; Stunde ; "  Minute:" ; Minute ; "  Sekunde:" ; Sekunde
Print Wochentag ; ", " ; Stunde ; ":" ; Minute ; ":" ; Sekunde
Sekunde = Sekunde + 1
Toggle Portc.0
Return

Ich werde mal sehen ob ich das noch besser hinbkomme.
Gibt es ausser der Bascom hilfe noch was wo das beschrieben wird?
Weil ich verstehe es immre besser wen's auf deutsch istt

Gruß Dominik