Was sind das für Taktscheiben? Wenns welche mit mechanischen Kontakten sind gibt das ein übles Kontaktprellen.
So das der Controller beim öffnen oder schließen des Kontaktes durchaus mehrere Impulse zählen.
Die Lösung wäre eine optische Abtastscheibe zu benutzen, oder die Kontakte über eine Schaltung zu entprellen.
Bei so hohe Zyklenzahlen würde ich von einer Softwaremässigen entprellung absehen.
Zudem sichert und restorde Bascom bei jedem Interruptaufruf alle Register.
Ich würde die Interruptroutine in Assembler proggen und die Zählerwerte dann über einen RAM Speicherplatz übergeben.
Das geht mit Sicherheit fast 10 mal so schnell.
Lesezeichen