rogerberglen
06.10.2006, 12:49
Hallo,
nachdem ich jetzt so einigermassen den Durchblick habe nun eine Frage: Ich möchte an einem Pin einen Schiebeschalter abfragen (ständig 0 oder 1) und
dann entsprechend nur einmal einen Text auf einem Display ausgeben. Habe dazu folgenden Code geschrieben:
Anfang:
Portd.4 = 0 'Led einschalten.
If Pind.1 = 0 Then 'Je nach Schalterstellung wird auf dem
Text1 = " 1 Pe" 'Display die jeweilige Betriebsart an-
Text2 = "rson" 'gezeigt. Diese wird auch zur weiteren
P = 0 'Verarbeitung verwendet.
If Sta = 0 Then T = 15 '15Min. vorgeben (nur bei 1. Durchlauf)
Elseif Pind.1 = 1 Then
Text1 = " 2 Per"
Text2 = "sonen" 'Dazwischen wird der Status des Tas-
P = 1 'ters mehrfach zur weiteren Verarbei-
If Sta = 0 Then T = 10 'tung abgefragt.10Min. vorgeben (nur
End If 'bei 1. Durchlauf)
If P = X Then 'Der Display wird dabei nur neu aufge-
Cls 'baut wenn sich die Schalterstellung
Waitms 300 'ändert.
Locate 1 , 3
Lcd Text1
Locate 2 , 1
Lcd Text2
X = Not X
End If
Goto Anfang
leier hat die Sache einen Haken, denn wenn der Schalter am Anfang schon auf 1 steht, dann wird der Display nicht aufgebaut.
Gibst da eine elegantere Lösung um einen Pin auf eine abfallende oder ansteigende Flanke hin zu prüfen, so dass vom Programm her erst wieder eine Aktion eintritt wenn sich der Zustand ändert??
Eine 2. Frage:
Gibt es eine Lösung wie man trotz dem Wait-Befehl noch nebenher irgendwelche Ports einlesen kann? z.B. einen Taster für einen Abbruch?
nachdem ich jetzt so einigermassen den Durchblick habe nun eine Frage: Ich möchte an einem Pin einen Schiebeschalter abfragen (ständig 0 oder 1) und
dann entsprechend nur einmal einen Text auf einem Display ausgeben. Habe dazu folgenden Code geschrieben:
Anfang:
Portd.4 = 0 'Led einschalten.
If Pind.1 = 0 Then 'Je nach Schalterstellung wird auf dem
Text1 = " 1 Pe" 'Display die jeweilige Betriebsart an-
Text2 = "rson" 'gezeigt. Diese wird auch zur weiteren
P = 0 'Verarbeitung verwendet.
If Sta = 0 Then T = 15 '15Min. vorgeben (nur bei 1. Durchlauf)
Elseif Pind.1 = 1 Then
Text1 = " 2 Per"
Text2 = "sonen" 'Dazwischen wird der Status des Tas-
P = 1 'ters mehrfach zur weiteren Verarbei-
If Sta = 0 Then T = 10 'tung abgefragt.10Min. vorgeben (nur
End If 'bei 1. Durchlauf)
If P = X Then 'Der Display wird dabei nur neu aufge-
Cls 'baut wenn sich die Schalterstellung
Waitms 300 'ändert.
Locate 1 , 3
Lcd Text1
Locate 2 , 1
Lcd Text2
X = Not X
End If
Goto Anfang
leier hat die Sache einen Haken, denn wenn der Schalter am Anfang schon auf 1 steht, dann wird der Display nicht aufgebaut.
Gibst da eine elegantere Lösung um einen Pin auf eine abfallende oder ansteigende Flanke hin zu prüfen, so dass vom Programm her erst wieder eine Aktion eintritt wenn sich der Zustand ändert??
Eine 2. Frage:
Gibt es eine Lösung wie man trotz dem Wait-Befehl noch nebenher irgendwelche Ports einlesen kann? z.B. einen Taster für einen Abbruch?