Low level routine
eng -
fr
modpsk_c - M-ary phase shift keying modulator computational routine
- n : size of vectors (scalaire)
- m : number of state (scalaire)
- u : address of symbol number input vector
- i_c : address of I component ouput vector
- q_c : address of Q component ouput vector
/* modpsk_c subroutine
* Phase Shift Keying Modulator
* IRCOM GROUP - Author : A.Layec
*/
/* REVISION HISTORY :
* $Log$
*/
#include "mod_num_lib.h"
/* modpsk_c routine de calcul des composantes I et Q en fonction
* d'un numéro symbole codé par états de phase (psk)
*
* Entrées :
* n : longueur des vecteurs (scalaire)
* m : nombre d'état Attention - ici scalaire
* u : numéro symbole (vecteur d'entrée)
* Sorties :
* i_c : valeur de la composante i (vecteur de sortie 1)
* q_c : valeur de la composante q (vecteur de sortie 2)
*
* Dépendances :
* math.h
*/
void modpsk_c(int *n,int *m,double *u,double *i_c, double *q_c)
{
/*Déclaration des variables compteurs*/
int k,i;
for(i=0;i<(*n);i++)
{
/*récupération de la valeur du port d'entrée*/
k=(int)u[i];
/*Calcul des composantes i et q*/
i_c[i]=cos(M_PI*(2*k+1)/(*m));
q_c[i]=-sin(M_PI*(2*k+1)/(*m));
}
return;
}
IRCOM Group
Alan Layec