
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> > Hallo, > > > > ich möchte einen Taster am Port 3 der Micro abfragen. > > Dazu habe ich Port 3 mit einem 10K Widerstand auf +5V gelegt und beschalte ihn mit einem Taster auf GND. > > Dieselbe Art der Abfrage klappt an anderen Ports einwandfrei. Ich erhalte dann über die serielle Schnittstelle die Werte 255 bzw. 00 über den Port. > > Bei Port 3 erhalte ich nur 255 (Pull up Zustand), bei gedrückter Taste gibt es keinen neuen Wert, die Ausgabe bleibt nur stehen. > > > > Ich wäre für einen Tipp dankbar, da ich nur den Port 3 für diese Abfrage zur Verfügung habe. > > > > Gruß > > Löter > > So, nun habe ich doch noch das Zeugs vorgekramt. Mit 0 und 1 lag ich leider falsch - Sorry. > Also folgender Code: > ---------------------------------------------------------------------------------------------------- > OPTION CCMicro > Baud R9600 > PAUSE 5 > print"Test zur Tastenabfrage" > define Taster as port[3] > define Zustand as byte' - nicht als Bit ! > > DO > Zustand = Taster > print Zustand > if Zustand = 0 then print "gedrückt" > if Zustand > 0 then print "nicht gedrückt" > Pause 100' 2 sek. Pause' zur besseren Sichtung des Ergebnisses > LOOP > --------------------------------------------------------------------------------------------------- > programmiert unter Basic++ liefert mir folgende Ausgabe : > > Taster nicht gedrückt - P3 high - Ausgabe im Terminal : 255 nicht gedrückt > Taster gedrückt - P3 low - Ausgabe im Terminal : 00 gedrückt > > Tipps: > * hast du mal gemessen, was jeweils am P3 wirklich anliegt; > * bei selbstgebauter Platine auf eventuelle Brücken untersuchen; > * bei selbstgebauter Platine bitte den 10k Pullup an P3 nochmal nachmessen; > * kleine Pause zwischen die Abfragen einlegen - mache ich fast generell; > > Sonst fällt mir da ehrlich auch nichts mehr ein, außer den MC austauschen. > Aber es gibt sicher noch wesentlich schlauere Bürschen wie mich hier im Forum. > > Grüße, Robby. Hallo Robby, vielen Dank, dass Du Dir so viel Mühe gemacht hast! Hab Deinen Kot ausprobiert, im Prinzip alles beim alten. Meine Mimik erkennt einfach nicht, wenn der Taster gedrückt ist. Dann stockt die Ausgabe, aber es wird nicht 0 (gedrückt) erkannt. Contoller habe ich schon mehrfach ausgewechselt. Widerstand ist ok. Werde morgen noch messen, was am Port3 wirklich anliegt. Komisch das da... Viele Grüße! Löter |
| Antwort schreiben |