Zero crossing for FM demodulation?
In principle you need to memorize the vector (RE,IM) and calculate the
angle difference between the memorized vector and the current vector.
This is the integral of your current amplitude of the demodulated
signal. BUT: you need to highpass this (differentiate), because the
average would grow to infinity, when your FM source is not exactly
aligned to the frequency of your local oscillator. The sampling speed
depends on the bandwidth you want to have, so that the angle difference
of the current vector to the memorized vector is small enough not to
become confused by diffs of 180° or more.