Hi all,
I have been working on personal project that involves counting the frequency of a sine wave around 4000Hz. My problems begin with the fact that the original sine wave I am detecting is very small (500nV pp). I am currently using a combination of an in-amp followed by an op-amp to amplify the signal with a total gain of around 1 million. As you might guess the sine wave is pretty noisy! I have experimented around with capacitor-resistor filters and I can certainly clean the signal up quite a bit, enough to clearly see it with my scope.
Yet still I am still unable to count the frequency with my PIC microcontroller. I tried using the Zero Cross Detection module and failed. I also tried creating a schmitt trigger circuit to convert the sine to a square wave and also failed. In both cases I believe I failed because the sine wave was not clean enough yet.
I recently got some advise to use DSP to clean up the signal. DSP would certainly cost more but I believe this is good advise. The only issue is that I have no idea where to start with DSP. I am already using a PIC microcontroller so perhaps there may be models that include some DSP functions but I am also interested in learning how to use a dedicated DSP chip alongside my PIC microcontroller if necessary.
If a DSP chip can clean up my sine wave I am totally confident I can use my PIC's functions (such as the Zero Cross Module) to detect the actual frequency, so I am specifically looking for advise on how to filter my sine wave with DSP. Any advise is greatly appreciated!!
I have been working on personal project that involves counting the frequency of a sine wave around 4000Hz. My problems begin with the fact that the original sine wave I am detecting is very small (500nV pp). I am currently using a combination of an in-amp followed by an op-amp to amplify the signal with a total gain of around 1 million. As you might guess the sine wave is pretty noisy! I have experimented around with capacitor-resistor filters and I can certainly clean the signal up quite a bit, enough to clearly see it with my scope.
Yet still I am still unable to count the frequency with my PIC microcontroller. I tried using the Zero Cross Detection module and failed. I also tried creating a schmitt trigger circuit to convert the sine to a square wave and also failed. In both cases I believe I failed because the sine wave was not clean enough yet.
I recently got some advise to use DSP to clean up the signal. DSP would certainly cost more but I believe this is good advise. The only issue is that I have no idea where to start with DSP. I am already using a PIC microcontroller so perhaps there may be models that include some DSP functions but I am also interested in learning how to use a dedicated DSP chip alongside my PIC microcontroller if necessary.
If a DSP chip can clean up my sine wave I am totally confident I can use my PIC's functions (such as the Zero Cross Module) to detect the actual frequency, so I am specifically looking for advise on how to filter my sine wave with DSP. Any advise is greatly appreciated!!