燕山大学数字通信计算机仿真代码,燕山大学数字通信计算机仿真课程设计模板.doc...

?

?

数字通信计算机课设??程序代码?

//?SigTranmit.cpp:?implementation?of?the?SigTranmit?class.

?//?

//??

#include?"stdafx.h"?

#include?"ASK.h"?

#include?"SigTranmit.h"

?#include???

#ifdef?_DEBUG

?#undef?THIS_FILE?

static?char?THIS_FILE[]=__FILE__;?

#define?new?DEBUG_NEW?

#endif??

//?

//?Construction/Destruction?

//??

SigTranmit::SigTranmit()?

{??c=0;?

/*?S0[16]={0};?

?float?S1[16]={0};

Mod[16*M]={0};?

?Sa[16*M]={0};?

?Sal[16*M]={0};???

?H1[16*M]={0};?

?H2[16*M]={0};?

?No[16*M]={0};??

Hb[N]={0};?

?P[N]={0};?

?Wn[N]={0};*/

?}??

SigTranmit::~SigTranmit()?

{?

?}?

void?SigTranmit::SetDigital(int?ID,int?Intensity)//赋值?

{?

???myID=ID;?

???myIntensity=Intensity;

?}?

void?SigTranmit::Basesignal()//基带信号

?{?

?//ID变成int型数组

int?a[4]?=?{0};?

?int?i=0;??

int?k=15;

??int?temp=0;??

a[0]=myID%10;?

?a[1]=myID/10%10;?

?a[2]=myID/100%10;?

?a[3]=myID/1000;??

for(int?j=0;j<4;j++)??

{???i=0;?

??temp=a[j];?

??for(i;i<4;i++)???{????S0[k]=temp?&?0x1;????temp?=?temp>>1;????k--;???}??}??//采样??k=0;??for(i=0;i<16;i++)??{???for(j=0;j

?

?

void?SigTranmit::Lpf()//低通?{??Conv(Sa,GetH1());??Dft(Sa,16*M);??}?

void?SigTranmit::Dft(float?x[],int?m)//DFT变换?{??for(int?k=0;k

void?SigTranmit::modulate()//调制?{??float?a=0.0;??for(int?i=0;i<16*M;i++)??{???a=2.0*PI*i*0.15;???Mod[i]?=?Sa[i]*cos(a);??}??for(i=0;i<16*M;i++)???Sa[i]?=?Mod[i];??Dft(Sa,16*M);?}?

void?SigTranmit::Channel()//信道?{??Noise(myIntensity);??for(int?i=0;i<16*M;i++)???Sa[i]?=?No[i]?+?Sa[i];??Dft(Sa,16*M);?}?

void?Si

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值