Hallo,
habe einen Code geschrieben, bei dem man die Frequenz und Duty mit hilfe von timer1 einstellen kann. Jedoch funktioniert es nicht richtig. Kann mir vieleicht jemand sagen, wo mein Fehler liegt?
Code:$regfile = "2313def.dat" $crystal = 10000000 $baud = 9600 Const True = 1 Const False = 0 Dim Hi As Single Dim Lo As Single Dim Freq As Word Dim Phase As Bit Dim Duty As Byte Config Timer1 = Timer , Prescale = 1 On Timer1 Timer1_isr Config Pinb.5 = Output Enable Timer1 Enable Interrupts Do Input "Zeit [0-65535]" , Freq Input "Duty [0-100%]" , Duty Hi = Freq * 0.01 Hi = Duty * Hi Hi = Int(hi) Lo = Freq - Hi Print "High: " ; Hi Print "Low: " ; Lo Loop End Timer1_isr: If Phase = True Then Timer1 = Lo Phase = False Else Timer1 = Hi Phase = True End If Toggle Portb.5 Return







Zitieren

Lesezeichen