Hallo Zusammen. Ich habe ein Problem mit einer RS232 Abfrage + Dimmerfunktion(mit Bascom). Mein Programm soll sich über RS232 die Befehle 1-6 geben lassen und danach die Lampen dimmen. CODE: $regfile = "m8def.dat" 'Atmega8 $crystal = 3686400 'Taktfrequenz $baud = 9600 Dim Befehl As Byte Dim A(8) As Byte Dim I As Byte Dim T As Byte On Timer0 Ontimer 'Timer On Urxc Onrxd Ddrd = &B11111111 Tccr0 = &B00000001 'Timergeschwindigkeit Timsk.toie0 = 1 Sreg.7 = 1 Enable Urxc Enable Interrupts Do Loop End Ontimer: 'Dimmvorgang (Interrupt) If I = 32 Then I = 0 For T = 5 To 7 If I < A(t) Then Portd.t = Not Portd.t Next T Return Onrxd: 'UDR-Empfang Befehl = Udr Select Case Befehl Case "1" A(5) = 0 Case "2" A(6) = 0 Case "3" A(7) = 0 Case "4" A(5) = 32 Case "5" A(6) = 32 Case "6" A(7) = 32 Case Else : Print "Error" End Select Befehl = "" Return CODE ENDE: Ich kann soweit Eingaben über RS232 machen und die Werte werden auch richtig zugeordnet und angezeigt wenn ich sie Abfrage. Wenn ich die Befehle 1-3 Nutze klappt alles super. Wenn ich allerdings 4-6 nutze Dimmt sich die gewählte Lampe auf den gewünschten Wert, aber das Porgramm läst keine weiteren Eingaben mehr zu. Erst wenn ich Reset gedrückt habe kann ich wieder neue Befehle übertragen. Es scheint so, als würde sobald der Interrupt für die Dimmerfunktion seine Arbeit antritt die UDR abfrage Still stehen. Bin noch relativ neu hier hoffe einer kann mir Helfen. Gruß Alex
Moin, If I = 32 Then I = 0 For T = 5 To 7 If I < A(t) Then Portd.t = Not Portd.t Next T If I = <- was ist mit diesem I ?? Später zählst du T hoch, aber I finde ich in deinem Code kein 2tes mal Gruß Anselm
Das ist der Zähler für die Helligkeit... Wenn die Lampe 1 z.B. auf Helligkeit 16(50%) gestellt ist, Leuchtet die Lampe nur bis der Wert I = 16 ist. Das läst die Lampe halt nur 50% der Gesammtzeit Leuchten.
Oh ich merke gerade das ich I garnicht erhöhe... Mal schauen ob es jetzt geht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.