博主大毕设关于数字下变频(DDC)的CUDA实现,预计工期比较长,所以留下一些文字记录。

  主要分为两部分工作,Matlab仿真部分和CUDA实现。

  由于很久没有仿真了,所以先用一个简单的AM调制仿真练手。具体代码如下:

代码都是基础的所以就不解释了(环境matlab2016)

 clc;
fm=; %信号频率
fc=; %载波频率
fs=; %抽样频率
Am=;
A=;
N=;
K=N-;
n=:N-;
t=(:/fs:K/fs);
yt=Am*cos(*pi*fm*t);
figure()
subplot(,,);plot(t,yt);title('频率为100HZ信号时域波形'); y0=A+yt;
y2=y0.*cos(*pi*fc*n/fs);
y3=fft(y2,N);
q1=(:N/-)*fs/N;
mx1=abs(y3(:N/));
figure()
subplot(,,);
plot(t,y2);
title('已调信号时域波形');
subplot(,,);
plot(q1,mx1);
title('已调信号频谱');
yc=cos(*pi*fc*t);
figure();
subplot(,,),plot(t,yc),title('载波fc时域')
n=:N-;
yc1 = Am*cos(*pi*fc*n/fs);
y3=fft(yc1,N)
q=(:N/-)*fs/N
mx=abs(y3(:N/));
figure()
subplot(,,),plot(q,mx),title('载波fc频谱')
N=;
n=:N-;
y4=0.01*randn(,length(t)); %产生高斯噪声
w=y4.^; %噪声功率
figure();
subplot(,,);
plot(t,y4);
title('高斯白噪声时域波形');
y5=fft(y4,N);
q2=(:N/-)*fs/N;
mx2=abs(y5(:N/));
figure();
subplot(,,);
plot(q2,mx2);
title('高斯白噪声频域波形');
y6=y2+y4;
figure();
subplot(,,);
plot(t,y6);
title('加噪声后时域信号')
q3=q1;
mx3=mx1+mx2;
subplot(,,);
plot(q3,mx3);
title('加噪声后频谱') yv=y6.*yc; %乘以载波想干解调
Ws=yv.^;
p1=fc-fm;
[k,Wn,beta,ftype]=kaiserord([p1 fc],[ ],[0.05 0.01],fs);%数字低通过滤波器
window=kaiser(k+,beta);%使用kaiser窗函数
b=fir1(k,Wn,ftype,window,'noscale');%
yt=filter(b,,yv);
yssdb=yt.*-;
figure()
subplot(,,);
plot(t,yssdb);
title('经过低通已调信号时域波形') ;%解调 y9=fft(yssdb,N);
mx=abs(y9(:N/));
subplot(,,);
plot(q,mx);
title('已调信号频域波形')

实现效果如下:

大毕设-matlab-AM调制解调的更多相关文章

  1. matalb 产生信号源 AM调制解调 FM调制解调

    %%%%%%%%%%%%%%%%%%%%%%%%%%% %AM调制解调系统 %%%%%%%%%%%%%%%%%%%%%%%%%%% clear; clf; close all Fs=800000;%采 ...

  2. 大毕设-MATLAB-FFT实现

    引用来自:http://blog.csdn.net/sinwel/article/details/8115673 %仿真参数中的含义 % Ts 表示间隔Ts时间采样,这个越小越接近连续信号,而实际上不 ...

  3. 大毕设-MATLAB-滤波器的实现

    在工程实际中遇到的信号经常伴有噪声,为了消除或减弱噪声,提取有用信号,必须进行滤波,能实现滤波功能的系统称为滤波器.严格地讲,滤波器可以定义为对已知的激励提供规定响应的系统,响应的要求可以在时域或频域 ...

  4. 大毕设-MATLAB-常用知识回顾

    要用到FIR滤波器和抽样器下面研究这两个的Matlab实现: Fir滤波器: matlab上fir滤波器的关键字是fir1 在command窗口输入help fir1出现帮助文档: >> ...

  5. 台大郭彦甫MATLAB教学-个人笔记(一)

    命令和一些特殊的变量 who:查看有哪些变量1. whos:可以查看变量的大小.字节和类型等资料. clear:如果单独使用则是清空所有命令,若后面跟着一个变量名称则为删除此变量. clc:清空命令行 ...

  6. 射频识别技术漫谈(3)——能量、调制【worldsing 笔记】

    无源和免接触是非接触式IC卡相对于接触式IC卡的两大特点.无源是指卡片上没有电源,免接触是指对卡片的读写操作不必和读写器接触.非接触式智能卡也是IC卡,而卡上的IC即集成电路工作时肯定是需要电源的,卡 ...

  7. IQ调制原理

    现代通信中,IQ调制基本上属于是标准配置,因为利用IQ调制可以做出所有的调制方式. 但是IQ调制到底是怎么工作的,为什么需要星座映射,成型滤波又是用来干嘛的.这个呢,讲通信原理的时候倒是都会泛泛的提到 ...

  8. DSP已经英雄迟暮了吗?FPGA才是未来的大杀器?

          DSP技术,在某些人看来,或者已经面临着英雄迟暮的感觉,就我们当前所知道的.Freesacle.ADI.NXP早就停掉了新技术发展,而当前从大的方面说只剩下TI一家扛着Digital Si ...

  9. OFDM通信系统的MATLAB仿真(1)

    由于是第一篇博客,想先说点废话,其实自己早就想把学到的一些东西总结成文章随笔之类的供自己复习时查看的了.但是一是觉得自己学的的不够深入,总结也写不出什么很深刻的东西:二是觉得网上也有海量的资料了,需要 ...

随机推荐

  1. XML编程知识点总结

    DOM和SAX DOM的全称是Document Object Model,也即文档对象模型.基于DOM的XML分析器将一个XML文档转换成一个对象模型的集合,应用程序挣是通过对这个对象模型的操作,来实 ...

  2. SpringMVC使用的几个要点

    1.使用 @RequestParam("username") 来对应参数名的时候,这个参数必须要传入,否则会报错.没加@RequestParam则可传可不传 @RequestMap ...

  3. C#如何获取CPU处理器核心数量 z

    有几条不同的处理器信息,您可以获得有关的信息:物理处理器数量.核心数量和逻辑处理器数量,这些可以不同.两颗双核超线程(启用)处理器的机器情况下有:2个物理处理器.4个核心和8个逻辑处理器. 逻辑处理器 ...

  4. App.Config详解及读写操作

    App.Config详解及读写操作   App.Config详解 应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而 ...

  5. virtualBox 打开旧的ubuntu虚拟机镜像时找不到网卡的解决方法

    一 环境: ubuntu v8.04 virtualbox _v4.3 二 操作 1 按正常创建新的虚拟机, 然后在选择虚拟硬盘界面选择使用旧的ubuntu虚拟机 2 打开虚拟机 删除/etc/ude ...

  6. Oracle数据库监听服务无法启动

    (1) 安装好Oracle后,启动Net Manager,测试orcl失败,报错“ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务”,需要修改监听文件.修改前: # list ...

  7. 安装fast cgi

    1. 下载 在HTTPD主页,找到"mod_fcgid" 下载“mod_fcgid-2.3.9-crlf.zip” 2. 生成so文件 首先,设置APACHE2_HOME系统变量. ...

  8. xampp下创建多个虚拟网站目录

    大家知道,伟大的IIS下面增加多个网站就1分钟搞定.现在换XAMPP下运行多个PHP目录,那我们需要有点探索精神.那么进入正题 首先,下载安装官方最新版本的xampp,地址:点击.记得如果电脑安装有I ...

  9. 慕课网-Java入门第一季-7-4 编程练习

    来源:http://www.imooc.com/code/1634 小伙伴们,请根据所学知识,参考注释,在代码编辑器中将代码补充完整.编写一个 Java 程序,实现输出学生年龄的最大值 要求: 1. ...

  10. OpenSSL漏洞补救办法详解(转)

    CVE-2014-0160漏洞背景 2014年4月7日OpenSSL发布了安全公告,在OpenSSL1.0.1版本中存在严重漏洞(CVE-2014-0160).OpenSSL Heartbleed模块 ...