I'm using a 6220 card for our application, where we need to monitor at least 5 inputs for change detection and take different actions depending on what line cause the change and its state..
I've read a couple of threads regarding change detetcion and the lack of possibility to have the HW to notify the SW of what line caused a change detection, (i.e multiple change detection tasks/unique callbacks). The sample code for change detection suggests to read the port/ports (whatever the change detection is set up to) and from that XOR with previous values to find out the source. This is not feasable in our application since the operation of stopping the task for reading will lead to missed change detection. Reading the port without stopping is not an option. Reading the port is to slow anyway.
What is the alternative to digital change detection if you want to solve this issue. All other threads I've read on the topic just confirm that the "multiple" change detection tasks is not possible, well that doesn't help, there has to be an alternative.