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: mbed
Diff: trigger.hpp
- Revision:
- 3:086e556b57f9
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trigger.hpp Wed Jul 24 12:24:05 2019 +0000 @@ -0,0 +1,105 @@ +#ifndef __trigger__ +#define __trigger__ +#include "variables.hpp" +#include "math.hpp" +void fire(void){ + clockout = 1; + wait(0.0001); + clockout = 0; + wait(0.0001); +} + +void runonce(void){ + getfaderdata(); + //tempo calculations + gettempodata(); + //note calculations + sumprobabilitynotes(); + randomgeneratenotes(); + determinenotes(); + + //octive calculation + sumprobabilityoctives(); + randomgenerateoctives(); + determineoctives(); + + //duration calculation + sumprobabilityduration(); + randomgenerateduration(); + determineduration(); + outputdecision(); + } +void firetrig(void){ + if(clockcount<32){ + clockcount++; + clockcountneg = clockcount - 1; + } + else + { + clockcount = 0; + clockcount++; + } + if(clockcount == 1){ + storedduration = duration; + } + pc.printf("%i \n\r",clockcount); + fire(); + //getfaderdata + if(clockcount == 1 && storedduration == 1){ + allledoff(); + getfaderdata(); + gettempodata(); + pc.printf("TEMPO %f \n\r",tempoval); + //tempo calculations + //note calculations + sumprobabilitynotes(); + randomgeneratenotes(); + determinenotes(); + //octive calculation + sumprobabilityoctives(); + randomgenerateoctives(); + determineoctives(); + //duration calculation + sumprobabilityduration(); + randomgenerateduration(); + determineduration(); + outputdecision(); + } + if(clockcount == storedduration-1){ + allledoff(); + getfaderdata(); + //tempo calculations + gettempodata(); + //note calculations + sumprobabilitynotes(); + randomgeneratenotes(); + determinenotes(); + //octive calculation + sumprobabilityoctives(); + randomgenerateoctives(); + determineoctives(); + //duration calculation + sumprobabilityduration(); + randomgenerateduration(); + determineduration(); + outputdecision(); + + } +// pc.printf("NOTE: %i OCTIVE: %i DURATION: %i \n\r",note,octive,duration); +// pc.printf("abstemmp %f \n\r",abstempo); + if(clockcount == storedduration && sumnotes > 1){ + senddacout(); + trigout = 1; + wait(0.0001); + trigout = 0; + wait(0.0001); + clockcount = 0; + } + if(clockcount == 1 && storedduration == 1){ + updateled(); + } + if(clockcount == storedduration-1){ + updateled(); + } + } +#endif \ No newline at end of file