Halllo
Habe jetzt probiert... aber ganz so wie ich mir das gedacht hatte, läuft es leider nicht.
(regelt nicht so recht)
Irgendwie bräuchte ich da zwei 16-Bit Timer...
Hier mal der Code zum begutachten
Code:
'--------Drehlicht-----V1.07---------------
' 8MHz RC Intern
$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 200
$swstack = 200
$framesize = 200
'---Config Port's -----------------
Config Portb = Output
Portb = 255
Config Portd = Input
Portd = 255
'---config Int0------
Config Int0 = Falling
Enable Int0
On Int0 Kontakt
'--- Config Timer1 ----
Config Timer1 = Timer , Prescale = 1024
Enable Timer1
'--- Config Timer0 ------
Config Timer0 = Timer , Prescale = 1
Enable Timer0
Enable Interrupts
Load Timer0 , 255
Dim Drehzeit As Word
Dim Spaltenzeit As Byte
Dim Auftrag As Word
Auftrag = 0
'--------------------Hauptprogramm--------------------------
Do
Loop
End
'==============================Unterprogramme===================================
'--------------ISR von Int0--------------------
Kontakt:
Drehzeit = Timer1
Timer1 = 0
Spaltenzeit = Drehzeit / 360
Auftrag = 0
Return
'------------ISR von Timer0 --------------------
Spalten:
Load Timer0 , Spaltenzeit
If Auftrag < 50 Then
Toggle Portb
Incr Auftrag
End If
Return
Was meint ihr dazu ?
Drehzahl ist 1000 U/min
Quarz = 8MHz
Lesezeichen