Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Inkrementalgeber Kategorie: Programmierung (von André H. - 20.12.2003 14:41)
Als Antwort auf Inkrementalgeber von Frank - 19.12.2003 16:50

Hallo Frank,

Zuerst eine Frage:
Warum schreibst Du hierfür eine eigene Funktion ?

Du kannst in Deinem Proggie einfach dies
counter = counter + ports.getcount(0);
schreiben.

Jetzt aber zu Deinem Problem:
Die Station hat im Bezug auf die Interruptsensiblen Ports leider einen
massiven Hardwarefehler: Es wurden die Pull-Widerstände an den Ports
P1H.0 bis P1H.3 vergessen.
Das hat auch bei vielen zur Folge, wenn diese Ports unbeschalten sind, daÃ?
Programme sehr langsam laufen können. (z.B. in der Nähe von Leuchtsofflampen)

Da ich davon ausgehe, das Dein Geber ein einfacher Schalter ist, benötigst Du
aber dringend Pull-Ups.
Beschalte diese Ports einfach mit je 10k gegen +5V.

Falls Dein Ink-Geber mechanisch funzt, könnte es ein Kontaktprellen geben.
Dies lieÃ?e sich z.B. mit einem kleinem Konensator reduzieren.
Hänge einfach einmal 10nF zwischen Port und GND.

MfG André H.


> Hallo zusammen,
> Hallo Tom, Hallo Cris!
>
> Für die Abfrage des Pulsgebers spreche ich nur einen Kanal an (A-Kanal), die Richtung verwalte ich
>  software-seitig.
> Hier meine Funktion zum Abfragen des Inkrementalgebers:
>
> function zaehle_Impulse() returns long
> // liest den Zählerstand am Port P0 aus, an diesen ist der A-Kanal
> // des Ink-gebers angeschlossen
> {
>   long counter;
>  
>   counter = ports.getcount(0);
>   sleep 1;
>  
>   return counter;
> }
>
>
> Die erforderliche Aufsummierung erledige ich ebenfalls im weiteren Programm.
>
> Wie bereits in meinem Posting bzgl der Stabilität der CCII-Station beschrieben, liefert mir diese Routine
> unterschiedliche Impulszahlen, obwohl derselbe Winkel abgefahren wird. Ist meine Funktion etwa
>  nicht ganz korrekt?? Hab ich was übersehen??
>
> Viele Grü�e,
> Frank


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten: