ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2025/12/15 20:56:54ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
Ä£¿é»®·Ö
Bpskµ÷ÖÆÄ£¿é Bpsk½âµ÷Ä£¿é ÊäÈëÊä³öÄ£¿é
Ä£¿é¹¦ÄÜÉè¼Æ
Bpskµ÷ÖÆÄ£¿é°üÀ¨£º »ù´øÊý¾Ý²úÉúÄ£¿é µ¥Ë«¼«ÐԱ任ģ¿é FFTÄ£¿é
¹¦ÂÊÐźŷùÖµµ¥Î»×ª»»Ä£¿é ¼ÓÔØ²¨Ä£¿é
Bpsk½âµ÷Ä£¿é°üÀ¨£º ²úÉú¸ß˹°×ÔëÉùÄ£¿é È¥ÔØ²¨Ä£¿é µÍͨÂ˲¨Æ÷Ä£¿é ÅоöÄ£¿é FFTÄ£¿é
ÎóÂëÂʼÆËãÄ£¿é
ÊäÈëÊä³öÄ£¿é°üÀ¨£º Êý¾ÝÊäÈëÄ£¿é Êý¾Ý¶Áȡģ¿é Êý¾ÝÊä³öÄ£¿é
»æÍ¼Ä£¿éOnPaint() ͼÐνçÃæÄ£¿é
¶þ¡¢ ÏêϸÉè¼Æ
£¨Ò»£© ×ÊÔ´ÏîÄ¿
³ÌÐòÎļþ
Í·Îļþ
(¶þ)Bpskµ÷ÖÆÄ£¿é
¡ï»ù´øÊý¾Ý²úÉúÄ£¿é
int* CTools::BaseDataPut(long length) { int* nBaseDataBit; nBaseDataBit = (int*)malloc(length*sizeof(int)); srand((unsigned)time(NULL)); for (long i = 0; i ¡ïµ¥Ë«¼«ÐԱ任ģ¿é int *pnget = NULL;//µ¥Ë«±ä»»ºóÊý¾Ý pnget = (int*)malloc(m_nNumOfBase*sizeof(int)); for (i = 0; i < m_nNumOfBase; i++) { pnget[i] = 1-m_pBaseData[i]*2; }//µ¥Ë«¼«ÐԱ任 ¡ïFFTÄ£¿é float *CTools::fft(float *y, long n, long *len) { //¸µÁ¢Ò¶±ä»»; //len:·µ»Ø²¹0ÒÔºóÊý¾Ý³¤¶ÈµÄÒ»°ë£» //º¯ÊýÊä³ö£ºfft±ä»»ºóµÄÊý¾Ý£¬³¤¶ÈΪlen; //Èôʧ°Ü£¬Ôò·µ»ØÒ»¸ö¿ÕÖ¸Õë(NULL) long i, j, k, m, i1, i2, i3, i4, n1, n2, n4; float a, e, cc, ss, xt, t1, t2; float *x; long temp_n; ////////////////////////////////// //×Ô¶¯²¹Áã temp_n=1; while(temp_n x=(float *)malloc(temp_n*sizeof(float)); if (!x) return NULL; for (i=0;i if(temp_n>n) { for (i=n;i //////////////////////////// //¿ªÊ¼×öfftÔËËã for (j=1, i=1;i<32;i++) { m=i; j=2*j; if(j==temp_n) break; } n1=temp_n-1; for (j=0, i=0;i } k=temp_n/2; while(k<(j+1)) { j=j-k; k=k/2; } j=j+k; } for (i=0;i for (k=2;k<=m;k++) { n4=n2; n2=2*n4; n1=2*n2; e=float(6.283185307179596/n1); for (i=0;i } } } *x=float(fabs(*x)); *(x+temp_n/2)=float(fabs(*(x+temp_n/2))); for (i=1;i x=(float *) realloc(x, (temp_n/2)*sizeof(float)); *len=temp_n/2; if(!x) { free(x); return NULL; } else { return x; } ¡ï¹¦ÂÊÐźŷùÖµµ¥Î»×ª»»Ä£¿é double CTools::TransformUnit(double dRecPower) { double dPower; dPower = pow(10, (dRecPower - 30) / 10); return dPower; } ¡ï¼ÓÔØ²¨Ä£¿é float* pfModData = NULL;//µ÷ÖÆÊý¾Ý pfModData=(float*)malloc(m_nNumOfScan*sizeof(float)); for (i = 0; i < m_nNumOfScan; i++) { j = long(i*m_nNumOfBase/m_nNumOfScan); *(pfModData+i) =*(pnget+j)*dPa*cos(2*PI*m_dSimRf*i/m_dSampleFreq); //A*cos(wc*t)=A*cos(2*Pi*f*t) } £¨¶þ£© Bpsk½âµ÷Ä£¿é ¡ï²úÉú¸ß˹°×ÔëÉùÄ£¿é