I'm trying to accomplish the following without the use of a microcontroller:
Input: A square wave with a 1 Hz period, duty-cycle of 100 ms (10%), normally low.
Output: A square wave with a 100 Hz period, where every period is triggered by the input wave rise event. Duty-cycle can be anything from 10 to 50%, normally low as well.
I implemented a software solution with an Arduino, but it is not precise enough. In the end, the output frequency stays anywhere from 90 to 95 Hz, instead of the coded 100 Hz. This solution listens for the input signal and triggers a timed loop to output the signal. If the input rises again, it interrupts the loop and starts again.
My question is: Is there any way to implement this with a crystal oscillator, in a way that bypasses a microcontroller solution? Or, alternatively, is there a better way to implement this and reduce latency? The interrupt routine can be neglected if the upsampled signal is precise enough.
I tried to find such a circuit or IC with similar capabilities but had no success.