自定义信号的抽样与恢复并在LCD上显示结果实现

LEDs

360人已加入

描述

实验原理

抽样定理

抽样定理,又称采样定理,香农采样定理,奈奎斯特采样定理,只要采样频率大于或等于有效信号最高频率的两倍,采样值就可以包含原始信号的所有信息,被采样的信号就可以不失真地还原成原始信号。抽样定理是通信理论中的一个重要定理,是模拟信号数字化的理论依据。
时域采样定理:
(1)频带为F的连续信号f(t)可用一系列离散的采样值f(t1),f(t1±Δt),f(t1±2Δt),...来表示,只要这些采样点的时间间隔Δt≤F/2,便可根据各采样值完全恢复原来的信号f(t)。
(2)当时间信号函数f(t)的最高频率分量为f_M时,f(t)的值可由一系列采样间隔小于或等于f_M/2的采样值来确定,即采样点的重复频率f≥2f_M。
对连续时间正弦信号考虑下面的表达式:

LCD显示

可以按抽样频率f_s=1/Ts对x(t)抽样来获得离散时间信号:

LCD显示

如果不能满足抽样定理,抽样后信号的频率就会重叠,即高于采样频率一半的频率成分将被重建成低于采样频率一半的信号。这种频谱的重叠导致的失真称为混叠,就不能恢复成原始信号。以下两种措施可避免混叠的发生:
(1)提高采样频率,使之达到最高信号频率的两倍以上(本实验使用的方法);
(2)引入低通滤波器或提高低通滤波器的参数;该低通滤波器通常称为抗混叠滤波器,抗混叠滤波器可限制信号的带宽,使之满足采样定理的条件。

数字信号处理库

DSPLIB 包含优化的、C语言可调用的通用信号处理例程,用于计算密集型实时应用程序。 调用这些例程的运行速度比直接用C语言编写的等效代码快得多。使用DSPLIB可以缩短应用程序开发时间。
DSPLIB 3_4_0_0包括适用于 C64x+ 或 C66x 或 C674x 处理器的 Windows 或 Linux 安装可执行文件。 每个可执行文件安装一个组件包存储库、一个文档目录、一个 Eclipse 插件目录和一个扩展的组件目录结构,其中包含组件库、头文件和测试示例。

TMS320C6748处理器使用的是dsplib_c674x_3_4_0_0。

LCD显示

函数源码

程序使用 DSPLIB 的库来进行FFT运算,调用的程序源码和使用说明可以安装DSPLIB后查看。调用的FFT函数中,第一个参数是样本中 FFT 的长度,第二个参数是指向数据输入的指针。第三个参数是指向复杂旋转因子的指针。第四个参数是指向复杂输出数据的指针。第五个参数是指向包含 64 个条目的位反转表的指针。如果样本的FFT长度可以表示为 4 的幂,第六个参数是4,否则 第六个参数是 2 。第七个参数是从主FFT开始的样本中的子 FFT偏移索引 。 第八个参数是样本中主FFT的大小。

LCD显示

程序使用 DSPLIB 的库来进行FFT逆变换,调用的程序源码和使用说明可以安装DSPLIB后查看。调用的IFFT函数中,第一个参数是样本中 FFT 的长度。第二个参数是指向数据输入的指针。第三个参数是指向复杂旋转因子的指针。第四个参数是指向复杂输出数据的指针。第五个参数是指向包含 64 个条目的位反转表的指针 。如果样本的FFT长度可以表示为 4 的幂,第六个参数是4,否则第六个参数是2 。第七个参数是从主FFT开始的复杂样本中的子FFT偏移索引 。第八个参数是样本中主FFT的大小。

LCD显示

操作现象

导入工程,选择Demo文件夹下的对应工程
编译工程,生成可执行文件
将CCS连接实验箱并加载程序
程序加载完成后点击运行程序
运行程序后,LCD会显示抽样的离散信号波形,上半幅图为离散抽样信号,横坐标X为时间,采样点的时间间隔为1ms。下半幅图为离散抽样信号的频谱图,频谱约为50。

LCD显示

LCD显示

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分