日日行,不怕千万里;时时学,不怕千万卷
分类:
2008-01-18 16:54:47
DDS函数信号发生器中有波形存储器,而其中数据的产生要根据具体的应用,先就常用的正弦波、三角波、方波以及锯齿波的波形表用Matlab来实现产生
% function wave_rom
%% 产生函数信号发生器的数据
clear all
clc
close all
N=512;
a(1:1:N)=0; %%存储8位的波形数据(0~~255)
%% 正弦波
for b=1:128
a(b)=round(127*sin(2*pi*(b-1)/127))+127;
end
figure(1)
stem(1:128,a(1:128));
%% 锯齿波
for b=1:128
a(b+128)=b;
nd
figure(2)
stem(129:256,a(129:256));
%% 方波
for b=1:64
a(b+256)=255;
a(b+64+258)=0;
nd
figure(3)
stem(257:384,a(257:384));
%% 三角波
for b=1:64
a(b+384)=2*(b-1);
a(b+64+384)=2*(64-b);
end
figure(4)
stem(385:512,a(385:512));
%% 画图
figure(5)
stem(1:512,a);
axis([0 512 0 256]);
产生的波形为:
wangfanlion2009-09-30 14:05:20
Quarturs中支持十六进制hex文件格式还有mif文件格式,网上可以找到怎么用matlab生成mif文件的代码,比较好用,只需要把你产生的波表数组存进去即可
chinaunix网友2009-09-29 22:42:23
我现在也在做波形发生器,能跟您请教一下,matlab制作好的波表是以什么形式,存入rom中,二进制?matlab如何把波表导为二进制的呀!
wangfanlion2008-05-15 19:59:58
谢谢,前些时没什么事情就学学Matlab,感觉很好玩,最近写了很多关于数字下变频的仿真,有时间再贴上来和大家分享,这个是很多毕业设计中用到的东西