Hi,

Ich benutze als externe taktquelle einen 16MHZ Quarz. Darauf muss ich mich verlassen, dass der genau ist...

Ich habe mal meinen bisherigen Code reingestellt:

Code:
$regfile = "m8def.dat"
$crystal = 16000000



Declare Sub Fuenf()
Declare Function Tastenabfrage() As Byte




Dim A As Byte
Dim B As Byte
Dim Taste As Byte
Dim Ws As Word
Dim Adc_ohne_taste As Word


Motorport Alias Portd




Config Adc = Single , Prescaler = Auto , Reference = Off

Ddrd = &B10100110
Ddrc = &B00000000
Portc.0 = 1
Portd.1 = 0                                                 'Enable
Portd.7 = 0                                                 'CW
Portd.5 = 1                                                 'Halbschritt

start adc


Adc_ohne_taste = Getadc(0)                      'Messe Spannung wenn keine Taste gedrückt ist
Adc_ohne_taste = Adc_ohne_taste - 2

 Do

   Taste = Tastenabfrage()


   If Taste <> 0 Then

      Select Case Taste
         Case 1
             Call Fuenf
             End Select
             End If
             Waitms 100

             Loop

             End

 Function Tastenabfrage() As Byte
 Tastenabfrage = 0
 Ws = Getadc(0)

 If Ws < Adc_ohne_taste Then
      Select Case Ws
         Case 330 To 370
            Tastenabfrage = 1
            End Select
            End If
            End Function




Sub Fuenf()

 For B = 1 To 5
For A = 1 To 96
Portd.1 = 1
Portd.2 = 1
Waitms 10
Portd.2 = 0

Next A
Waitms 500
Next B



Motorport = 0
End Sub
Kann man das so durchgehen lassen?

Timo