Jak Ci szkoda czasu na próbowanie z układem przedłużania impulsu to zrób sztuczkę taką że mechanicznie masz zamontowane dwa enkodery, z fabrycznego puszczasz A, B, a z samoróbki indeks. Na 90% będzie działało dlatego że okienko będzie dłuższe, więc indeks zostanie zauważony.
Trochę wyrwane z kontekstu (aczkolwiek zbliżonego do postawionego tu problemu):
"There is hardware in the encoder counter that can watch for index and clear the encoder
counter when its detected. This in the normal way homing to index is done with hardware counters.
This has the advantage that you can't miss the index pulse no matter how fast the homing
sequence is or how high the encoder resolution is (index is normally only one count wide)"
Inna ważna informacja:
2. Maximum encoder read rate with software is 1/(BTP+BTJ) for perfect quadrature. If we allow 30% quadrature distortion this becomes .7/(BTP+BTJ), where BTP is base thread period and BTJ is maximum base thread jitter.
So for example if you can manage a 50 KHz base thread with 5 usec of jitter you get a maximum count rate of 28 KHz. Note that this may be quite limiting, for example with a 500 line encoder (2000 counts per turn) this limits you to 880 RPM. Sofware encoder counting works fine with low resolution encoders such as would be useful on a spindle