Hi Sancta,
There are several methods to connect single ended encoders to KFLOP with Kanalog.
One is to disconnect KFLOP's JP5 connector from Kanalog and feed in single ended encoder signals to KFLOP there. Everthing on Kanalog will still function except differential inputs on Kanalog JP2. KFLOP's JP5 inputs are 5V Tolerant with no termination resistance.
A second Option is to multiplex the Encoder inputs to KFLOP JP4 and/or JP6 by setting a multiplex option in KFLOP's FPGA. This method is usually preferred because KFLOP's JP4 and JP6 have 150 Ohm Termination resistance (to reduce cable ringing) and also because these connectors have +5 and GND connections available. However the inputs on KFLOP JP4 and JP5 are not 5V tolerant and will be damaged if hard driven above 3.85V. This is usually not a problem as most +5V TTL outputs do not drive above 3.85V. They are only guaranteed to go above 2.8V. You can check your encoder signals with a voltmeter under a 150 ohm load. Or add a series 50 ohm resistor.
Here is the description taken from KMotionDef.h:
Code:
// addr to r/w encoder noise rejection filter value (0..255),
// Bit8 switches Encoders Ch4-7 from JP5 to JP6,
// Bit9 switches Encoders Ch0-3 from JP7 to JP4
#define ENC_NOISE_FILTER_ADD 0x05
#define ENC_0_3_JP4 0x200
#define ENC_4_7_JP6 0x100
#define ENC_NOISE_FILTER_DEFAULT_VAL 7 // noise rejection filter default value (100MHz/3/7/2 = 2MHz)
Also see the MuxEncoders.c Example
Code:
#include "KMotionDef.h"
main()
{
// Mux encoder inputs from KFLOP JP7 & JP5 to JP4 aand JP6
FPGAW(ENC_NOISE_FILTER_ADD) = ENC_0_3_JP4 + ENC_4_7_JP6 + ENC_NOISE_FILTER_DEFAULT_VAL;
}
HTH
Regards