📄 lfm.m
字号:
%%%%调频信号的累加器实现
%%%%Grape
clear all;
clc; %清除所有变量,清屏
M = 2^12; %采样的点数
a(1 : 1 : M) = 0; %频率累加器的数值
b(1 : 1 : M) = 0; %相位累加器的数值
y(1 : 1 : M) = 0; %输出的波形数据
K = 400; %调频斜率
Kc = 10; %初始频率控制字
N = 10; %幅度量化位数
L = 24; %相位累加器位数
%下面一段实现频率累加器
a(1) = 0.5 * K; %初始频率步进量
for i = 2 : 1 : M
a(i) = a(i - 1) + K;
end
%下面一段实现相位累加器
b(1) = Kc + a(1); %相位初始值
for i = 2 : 1 : M
b(i) = b(i - 1) + (Kc + a(i));
end
%下面一段实现了查找表ROM以及进行幅度量化
for i = 1 : 1 : M
y(i) = floor(2^(N) * cos(2 * pi/(2^L) * b(i)));
end
%下面一段画出相应的图形
figure(1); plot(y); axis([0 M, - 2^N - 100 2^N + 100]);
figure(2); freqz(y)
%下面一段实现相位累加器
b(1) = Kc + a(1); %相位初始值
for i = 2 : 1 : M
b(i) = b(i - 1) + (Kc + a(i));
end
%下面一段实现了查找表ROM以及进行幅度量化
for i = 1 : 1 : M
y(i) = floor(2^(N) * cos(2 * pi/(2^L) * b(i)));
end
%下面一段画出相应的图形
figure(1); plot(y); axis([0 M, - 2^N - 100 2^N + 100]);
figure(2); freqz(y)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -