From 5aa770b5415ac0ebb2dbe83d2360c2662f5c6aa0 Mon Sep 17 00:00:00 2001 From: Daniel Doan Date: Sat, 11 Dec 2021 12:00:02 -0800 Subject: [PATCH] fixed generate_trapezoid --- src/Generators/generate_trapezoid.m | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Generators/generate_trapezoid.m b/src/Generators/generate_trapezoid.m index 69ce591..6c612b5 100644 --- a/src/Generators/generate_trapezoid.m +++ b/src/Generators/generate_trapezoid.m @@ -37,19 +37,22 @@ function x = generate_trapezoid(amplitude, frequency, phase, fs, duration, duty) st = mod(frequency * t - phase, 1); slope = (amplitude/2) / (duty/8); if(st < duty) - if(st < duty/8 || st > 7*duty/8) + if(st <= duty/8) x(i) = slope * st; else - if(st < 5*duty/8) + if(st <= 5*duty/8) x(i) = amplitude/2 - slope * (st-(3*duty/8)); end - if(st < 3*duty/8) + if(st <= 3*duty/8) x(i) = amplitude/2; end - if(st > 5*duty/8) + if(st >= 5*duty/8) x(i) = -amplitude/2; end end + if(st >= 7* duty/8) + x(i) = -amplitude/2 + slope*(st-(7*duty/8)); + end end end end \ No newline at end of file