1. That snippet actually *does* subtract the last iteration value. I've gotten into the habit of using that multi-input arithmetic function, partly due to being expandable to lots of inputs, partly because you can selectively invert any of the inputs. Here I inverted the upper input, causing it to be subtracted. The regular subtract function would have required more crossing of similarly-typed wires, something I like to avoid when I can.
2. You raise a good point about rolling over the 32-bit counter. Eventually, that *will* happen if you run long enough. However, it turns out that the subtraction of u32 integers works correctly even when the counter rolls over between the two values. So you'll be safe. Furthermore,...
3. Your method of taking only the last array element is more correct and will work properly when you reach rollover. The "Max" method I posted would introduce errors around the rollover point.
-Kevin P
ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.