实验1 DDS信号源实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
班级通信1403 学号 201409732 姓名裴振启指导教师邵军花日期
实验1 DDS信号源实验
一、实验目的
1.了解DDS信号源的组成及工作原理;
2.掌握DDS信号源使用方法;
3.掌握DDS信号源各种输出信号的测试。
二、实验仪器
1.DDS信号源(位于大底板左侧,实物图片如下)
2.频率计1台
3. 20M双踪示波器1台
4.低频信号发生器 1台
三、实验原理
直接数字频率合成(DDS—Digital Direct Frequency Synthesis),是一种全数字化的频率合成器,由相位累加器、波形ROM、D/A转换器和低通滤波器构成。时钟频率给定后,输出信号的频率取决于频率控制字,频率分辨率取决于累加器位数,相位分辨率取决于ROM 的地址线位数,幅度量化噪声取决于ROM的数据位字长和D/A转换器位数。
DDS信号源模块硬件上由cortex-m3内核的ARM芯片(STM32)和外围电路构成。在该模块中,我们用到STM32芯片的一路AD采集(对应插孔调制输入)和两路DAC输出(分别对应插孔P03、P04)。PWM信号由STM32时钟配置PWM模式输出,调幅、调频信号通过向STM32 写入相应的采样点数组,由时钟触发两路DAC同步循环分别输出其已调信号与载波信号。对于外加信号的AM调制,由STM32的AD对外加音频信号进行采样,在时钟触发下当前采样值与载波信号数组的相应值进行相应算法处理,并将该值保存输出到DAC,然后循环进行这个过程,就实现了对外部音频信号的AM调制。
RZ8681 D实验箱的DDS信号源能够输出脉宽调制波(PWM)、正弦波、三角波、方波、扫频信号、调幅波(AM)、双边带(DSB)、调频波(FM)及对外部输入信号进行AM调制输出。
四、各测量点的作用
调制输入:外部调制信号输入铆孔(注意铆孔下面标注的箭头方向。若箭头背离铆孔,说明此铆孔点为信号输出孔;若箭头指向铆孔,说明此铆孔点为信号输入孔)。
P03:DDS各种信号输出铆孔。
P04:20KHZ载波输出铆孔。
P09:抽样脉冲输出铆孔。
SS01:复合式按键旋纽,按键用来选择输出信号状态;旋纽用来改变信号频率。
LCD:显示输出信号的频率。
五、实验内容及步骤
1)加电:打开系统电源开关,底板的电源指示灯正常显示。若电源指示灯显示不正常,请立即关闭电源,查找异常原因。
2)信号输出状态设置
信号输出状态分为: 1.《PWM波》、2.备用、3.《正弦波》、4.《三角波》、5.《方波》、6.《扫频信号》、7.《调幅信号》、8.《双边带信号》、9.《调频波》、10.《外输入AM波》等十种状态
初始时输出序号为1,对应《PWM波》输出状态。按下复合式按键旋纽SS01,可切换不同的信号输出状态,按一次输出序号递增,最大序号为10,正好与l0种输出信号状态对应。序号为10后,继续按复合按键旋纽,则返回初始序号1。D0l、D02、D03、D04四个指示灯将显示输出的序号状态。
3)信号频率调节
旋转复合式按键旋纽SS01,在《PWM波》、《正弦波》、《三角波》、《方波》等输出状态时,可步进式调节输出信号的频率,顺时针旋转频率每步增加100HZ,逆时针减小
100HZ;在其它序号,旋转复合式按键旋纽SS01无操作。
4)输出信号幅度调节
调节调幅旋钮W01,可改变P03、P04输出的各种信号幅度。
5)实验结束,通常DDS信号源常置于正弦波输出状态,频率为2KHZ。因为正弦波是最常使用的模拟信号源,以便后面实验使用。
输出序号调制输入P03(输出)
P04(输
出)
P09(输出)
LED
1:亮 0:灭
D4 D3 D2 D1
1 × × 载波20K
PWM波(频率
0.1-20KHZ可调)
0 0 0 1
2 × 备用载波20K
PWM(频率锁定于初始
状
态10KHZ或最新
《PWM波》设定
的频率)0 0 1 0
3 × 正弦波载波20K 0 0 1 1
4 × 三角波载波20K 0 1 0 0
5 × 方波载波20K 0 1 0 1
6 × 扫频载波20K 0 1 1 0
7 × 调幅载波20K 0 1 1 1
8 × 双边带载波20K 1 0 0 0
9 × 调频载波20K 1 0 0 1
10 外部调制
信号
外输入信号
AM调制
载波20K 1 0 1 0
备注:1.对于调幅、调频信号,载波频率固定为20KHz,内部产生调制波频率固定为1KHz,由外部“调制输入”的调制信号频率由外部输入信号决定。2.扫频信号的扫频范围是300Hz —50KHz。
实验结果分析
1.观察DDS信号源各种输出信号的波形,并说明其幅度、频率等调节方法。(报告书写要求:采用MATLAB仿真实验中各种的波形,并与示波器所观察波形进行对比。)
Matlab程序
function [y,t]=dds(fout,N,Fs,Delta_f,N_sig,fai)
% [y,t]=dds(fout,N,Fs,N_sig,fai)
% 按输入参数要求,输出相应的DDS数字信号
% fout 需要产生的频率
% N 信号字长
% Fs 采样频率
% Delta_f 频谱分辨率
% N_sig 输出信号样点个数
% fai 输出信号的初始相位
% y 输出信号的波形
% t 输出信号时间
%%%%%%%%%%%%%% 对输入数据进行判
断 %%%%%%%%%%%%%%%%%%%
if nargin == 5
fai = 0;
end
if nargin == 4
fai = 0;
N_sig = Fs;
end
%%%%%%%%%%%%%%%%%%% 计算部
分 %%%%%%%%%%%%%%%%%%%%%
N_period = 2^N; %产生一个周期的样点信号
Delta_f = Fs/N_period;
n = 0:N_period - 1; %基准频率信号的地址
S_root = floor(sin(2*pi*n/N_period)*2^(N_period-1))-1; %产生基准频率信号
S_root = S_root/max(S_root); %对基准信号幅值进行归一化
A_max = ceil(Fs/Delta_f); %求最大地址值,为保证
A_max为整数; %对计算结果进行四舍五入运算A_base_max = A_max / N_period; %基准地址最大值
Delta_A = floor(fout / Delta_f); %相邻输出样点值之间的地址增量
Delta_fai = 2*pi/A_max; %输出信号所能分辨的最小相位
A_phase = floor(fai/Delta_fai); %输出信号所能分辨的最小相位所对应的地址增量
n = 0:N_sig - 1;
A = mod(n*Delta_A + A_phase , A_max); %求解输出信号的地址
A_sin_sel = mod(floor(A / A_base_max) , N_period); %正弦基准频率信号选择地址
n = length(A_sin_sel);
y = zeros(1,n); %输出信号初始化
y = S_root(A_sin_sel+1); %从求出的地址取数
Ts = 1/Fs; %采样频率
t = (0:N_sig-1)*Ts; %根据需要输出的信号点数,取得时间值
plot(t,y);
xlabel('t/s');ylabel('A');title('时域图');
grid on;
F_sig = abs(fft(y,2*N_sig)); %对信号做傅里叶变换
Len_F_sig = length(F_sig);
f = (0:Len_F_sig-1)/Len_F_sig*Fs; %输出信号频率figure
plot(f(1:Len_F_sig/2),F_sig(1:Len_F_sig/2));
grid on;
xlabel('f/Hz');ylabel('A');title('频谱图');