Re: benötige hinweise beim programmieren Kategorie: Programmierung (von André H. - 31.10.2004 18:47) | ||
Als Antwort auf benötige hinweise beim programmieren von armelle - 31.10.2004 17:55 | ||
| ||
Hallo armelle, Wie Rene schon schreibt, mache bitte ein Update der Software, indem Du das aktuelle ServicePack installierst und das neueste Betriebssystem auf die CC2 lädst. (Ist im aktuellen ServicePack enthalten.) Nun zu Deinem Programm: (Auch von mir die Bitte, die code-Tags zu benutzen.) > thread main > { > int i; > long x; > x=0; > loop > { > if ports.getcount(0) > { > x=x+ports.getcount(0); Hier ist schon der erste Fehler. Wenn Du die Counterports abfragst, wird der Zähler mit der Abfrage gelöscht. Somit wirst Du, au�er bei höheren Frequenzen am Eingang, bei der zweiten Abfrage immer eine "0" zurückbekommen. Das nächste wäre das Problem des Tastenprellens von normalen Tastern. D.h. bei einmal Drücken erhälst Du nicht einen Zählerwert, sondern viele. (Es können u.U. über 50 sein.) Um Taster abzufragen empfiehlt es sich nicht unbedingt, die Counter-Funktion zu benutzen. Eine Abfrage der Ports mit anschlie�ender Softwareentprellung wäre besser. z.B. so: byte cnt; thread main { cnt=0; loop { wait not ports.get(8); cnt=cnt+1; sleep 100; // Wartezeit zum Entprellen wait ports.get(8); //Warten bis Taste losgelassen wurde if cnt>=3 cnt=0; ports.set( 9, cnt and 0b01); ports.set(10, cnt and 0b10); } } MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: Re: benötige hinweise beim programmieren (von armelle - 1.11.2004 0:04) Re: benötige hinweise beim programmieren (von armelle - 31.10.2004 21:27) Verständnissfrage (von reneforster - 31.10.2004 19:14) Re: Verständnissfrage@Rene (von armelle - 1.11.2004 0:15) |