% generation d'un signal triangulaire
% parametre par a : si periode = 1,
% passe par (0,-1) (a,1) (1,-1)
%-----------------------------------

clear all; close all;

Fe = 22050;
t =  2;
a = .8; f = 440;

n = floor(t*Fe)+1;
T = 1/f;
nt = floor(T*Fe)+1;

% echantillons sur une periode
tr = T*[0 a 1]; yr = [-1 1 -1];
tri = envelop(tr,yr,Fe);

% duplication de ces periodes
y = zeros(1,n);
y(1:nt:n) = 1;
y = filter(tri,1,y);

% petite enveloppe pour le finish
tr = [0 .01 t*.99 t];
yr = [0  1  1 0];
y = y.*envelop(tr,yr,Fe);
y = .8*y/(max(abs(y)));
sound(y,Fe)
%wavwrite(y,Fe,'../SONS/220scie.wav');
plot(y(Fe:Fe+6*nt));
