Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: AverageMCP3008 VoltageMonitor mbed-rtos mbed mcp3008
Fork of KIK01_Proto05 by
Diff: EnvelopeAR.h
- Revision:
- 24:e9fbadd15e90
- Parent:
- 22:a3bb7594f9bb
- Child:
- 25:b4977c7e0db7
diff -r da7c5f7feff1 -r e9fbadd15e90 EnvelopeAR.h
--- a/EnvelopeAR.h Sun Sep 17 23:24:49 2017 +0000
+++ b/EnvelopeAR.h Thu Sep 28 01:21:04 2017 +0000
@@ -16,7 +16,6 @@
v0(_v0),
v1(_v1),
v2(_v2),
- vLast(_v0),
attackTauRatio(_attackTauRatio),
releaseTauRatio(_releaseTauRatio) {
setAttack(_attack);
@@ -86,14 +85,15 @@
float getAmplitude() {
return amplitude;
}
+
float getAmplitude(int tick) {
- if (tick < attack) {
+ if (tick <= attack) {
// attackの処理
amplitude = v0 + (v1 - v0) * (1 - expf(-(float)tick / tau0));
- vLast = amplitude;
} else {
// releaseの処理
- amplitude = (vLast - v2) * (expf(-(float)(tick - attack) / tau1)) + v2;
+ float vAttack = v0 + (v1 - v0) * (1 - expf(-attack / tau0));
+ amplitude = (vAttack - v2) * (expf(-(float)(tick - attack) / tau1)) + v2;
}
return amplitude;
}
@@ -105,7 +105,6 @@
float v0;
float v1;
float v2;
- float vLast;
float tau0;
float tau1;
float attackTauRatio;
