声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 889|回复: 1

[编程技巧] 乐音信号发生器的程序总是有错误

[复制链接]
发表于 2007-11-28 21:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
一个乐音信号发生器的程序,总是有错误,请高人指点
程序如下:

function []=audio(tempo,nbit);
%
% Usage:audio(tempo);
if nargin<1;tempo=140;end;
if nargin<2;nbit=8;end;
v=version;
if strcmp(v(1),'5');
    Ns=['stereo,' int2str(nbit) 'bits'];
else;
    Ns='mono';
end;
Ns=['Musetto(a french song)                    BBI2000' blanks(20) Ns];
figure('Name',Ns,'Num','Off');
fa=440;fs=fa*10;
fb=493.88;fc=523.25;
fd=587.33;fe=659.26;
ff=698.45;
T=60/tempo; dt=1/fs; t1=0: dt: T-dt; n=length(t1);
t2=linspace(0,2*T,2*n);t3=linspace(0,3*T,3*n);
La=sin(pi*fa*t1).*exp(-t1);La3=sin(pi*fa*t3).*exp(-3*t3);
Do=.6*sin(pi*fc*t1).*exp(-t1);
Re=.6*sin(pi*fd*t1).*exp(-t1);
Mi=.6*sin(pi*fe*t1).*exp(-t1);
Fa=.6*sin(pi*ff*t1).*exp(-t1);
la=sin(2*pi*fa*t1).*exp(-t1); la3=sin(2*pi*fa*t3) .*exp(-t3);
si=sin(2*pi*fb*t1).*exp(-t1);
do=sin(2*pi*fc*t1).*exp(-t1);
do2=sin(2*pi*fc*t2).*exp(-t2);do3=sin(2*pi*fc*t3).*exp(-t3);
re=sin(2*pi*fd*t1).*exp(-t1);
si=sin(2*pi*fb*t1).*exp(-t1);
mi=sin(2*pi*fe*t1).*exp(-t1);mi2=sin(2*pi*fe*t2).*exp(-t2);
fa=sin(2*pi*ff*t1).*exp(-t1);
y1=[la la do2 do mi2 re do3 re mi re do2 si la3];
y1=[y1 la3 * exp (-3 *t3)]; t=dt*(0: length(y1) -1);
y2=[La Do Mi];y2=[y2 y2 y2 y2 La Re Fa La Re Mi y2 La3];
if strcmp(v(1),'5');
    ym=max(abs(y1));y1=y1/ym;
    ym=max(abs(y2));y2=y2/ym;
    y=[y1 '.75*y2'];sound(y,fs,nbit);
    wavwrite(y*.99,fs,nbit,'d:\audio');
    ubplot(211),plot(t,y1,'b');
    title('left channel');xlable('t(s)');
elseif strcmp(v(1),'4');
    y=y1+.75*y2;ym=min(y);y=y-ym;
    ym=max(y);k=fix(y/ym*255);
    sound(k,fs);whitebg('w');
    wavwrite(k,fs,'d:\audio');
    plot(t,k,'b');grid;zoom xon;xlable('t(s)');
end;
回复
分享到:

使用道具 举报

发表于 2007-11-28 22:18 | 显示全部楼层

新手请先认真阅读所有置顶帖,然后再审视一下你的帖子
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-23 19:29 , Processed in 0.050738 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表