Primer 15 - Generisanje sinusnog signala

U vektor signal[] smestiti 400 odbiraka signala za izbacivanje na DA konvertor. Sampling rate je 10KHz a učestanost sintetizovanog signala treba da bude 50Hz. Odbirci se izbacuju na 12 bitni bipolarni DA konvertor. Amplituda signala treba da bude maksimalna.

Rešenje

#include <math.h>
#include <stdlib.h>

#define DUZINA 400
int signal[DUZINA];

// Obratiti paznju na razliku ove funkcije i iste funkcije iz prethodnog zadatka
void generisi_signal(int s[], int n, int f, int fs, int offset, int ampl ) {
    int i;

    for (i=0; i<n; i++) {
        s[i] = offset + ampl*sin((6.28*f*i)/fs);
    }
}

int main(void) {

    // 12 bita je 2^12 odnosno 4096
    generisi_signal(signal, DUZINA, 50, 10000, 0, 2048);

    while(1);  // mrtva petlja
}

Rezultat u vremenskom domenu

Rezultat u frekventnom domenu

results matching ""

    No results matching ""