1 Reply Latest reply on Jun 27, 2017 6:33 AM by samp

    Sinusoidal signal generation with the "sinf" fonction

    guillaume.laborie

      I want to generate a sinusoidal signal with its 3 parameters (Amplitude, Frequency, Phase) controlled with 3 potentiometers.  So i have 3 PGA, a TRIADC and a DAC9.

         

      Firstly, in the C program, i have forced the 3 parameters to generate a 440Hz sinusoide (Amplitude=0.5 and Phase=0). I use the math function "sinf" to compute samples in real time. Each sample is computed before the data is written by the DAC9 at a frequency of 125kspls / s. I check the 3 parameters every 50 ms which correspond to one periode of the lowest frequency i want to generate (20Hz)

         

      I have tried a lot of things (also in the C program the data format is set to offsetbinary althought i will use the 2 bytes signed and magnitude format for the DAC9) and i don't make it work.

         

      You'll find in attachment my project. Thank you to have a look and comments.

         

      With best regards

        • 1. Re: Sinusoidal signal generation with the "sinf" fonction
          samp

          Hello Laborie,

             

           

             

          I suggest you try to get the three ADCs working first. Use 3 DACs which will accept the codes got from the ADC. This way you would be able to check by turning the potentiometers, and looking into the DAC outputs. 3 DAC6 UMs should be fine for the three ADCs. 

             

          Also, using a timer to time the sinusoidal samples would be better, otherwise the sinusoid would be jittery.

             

          125Khz sample rate is too high to be able to compute sine.Have you considered using a look-up table instead?

             

          Sampath