fixed
This commit is contained in:
parent
74648bb968
commit
6a398e2ddb
1 changed files with 51 additions and 26 deletions
|
|
@ -25,7 +25,8 @@ SOFTWARE.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "OneButton.h"
|
#include <OneButton.h>
|
||||||
|
#include <fix_fft.h>
|
||||||
|
|
||||||
#define btnA 0 //PA0 / Button A:
|
#define btnA 0 //PA0 / Button A:
|
||||||
#define btnB 2 //PA1 / Button B:
|
#define btnB 2 //PA1 / Button B:
|
||||||
|
|
@ -43,6 +44,7 @@ SOFTWARE.
|
||||||
//---- BUTTONS ----
|
//---- BUTTONS ----
|
||||||
|
|
||||||
byte counterA = 0; //count push btnA:
|
byte counterA = 0; //count push btnA:
|
||||||
|
byte counterB = 0; //count push btnB:
|
||||||
byte counterC = 0; //count push btnC:
|
byte counterC = 0; //count push btnC:
|
||||||
bool enabled_btnAC = true; //Button A + C enabled or not
|
bool enabled_btnAC = true; //Button A + C enabled or not
|
||||||
bool enabled_btnB = true; //Button B enabled or not
|
bool enabled_btnB = true; //Button B enabled or not
|
||||||
|
|
@ -88,8 +90,9 @@ void setup() {
|
||||||
|
|
||||||
// BUTTONS
|
// BUTTONS
|
||||||
buttonA.attachClick(cycleColors);
|
buttonA.attachClick(cycleColors);
|
||||||
buttonB.attachLongPressStart(ultraviolet);
|
buttonB.attachClick(ultraviolet);
|
||||||
buttonC.attachLongPressStart(opAmp);
|
buttonB.attachLongPressStart(uvForever);
|
||||||
|
buttonC.attachClick(opAmp);
|
||||||
|
|
||||||
// LEDS
|
// LEDS
|
||||||
pinMode(led_B, OUTPUT);
|
pinMode(led_B, OUTPUT);
|
||||||
|
|
@ -118,7 +121,9 @@ void loop() {
|
||||||
|
|
||||||
if ( countDelay == true && ((millis()-oldTime) > 60000)) { //If enabled, turns UV LED off after 1min
|
if ( countDelay == true && ((millis()-oldTime) > 60000)) { //If enabled, turns UV LED off after 1min
|
||||||
//Turn the UV LED off
|
//Turn the UV LED off
|
||||||
digitalWrite(uv_LED, LOW);
|
enabled_btnAC = true;
|
||||||
|
digitalWrite(uv_LED, OFF);
|
||||||
|
counterB = 0;
|
||||||
countDelay = false;
|
countDelay = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -150,8 +155,8 @@ void showColor() { // 100% of color
|
||||||
}
|
}
|
||||||
|
|
||||||
void cycleColors() {
|
void cycleColors() {
|
||||||
counterA++;
|
|
||||||
if (enabled_btnAC == true) {
|
if (enabled_btnAC == true) {
|
||||||
|
counterA++;
|
||||||
switch (counterA) {
|
switch (counterA) {
|
||||||
case 1:
|
case 1:
|
||||||
enabled_LED = true;
|
enabled_LED = true;
|
||||||
|
|
@ -194,38 +199,58 @@ void cycleColors() {
|
||||||
|
|
||||||
void ultraviolet() {
|
void ultraviolet() {
|
||||||
if (enabled_btnB == true) {
|
if (enabled_btnB == true) {
|
||||||
blinker(led_B, 500, 5);
|
counterB++;
|
||||||
if ( digitalRead(btnA) == LOW ) {
|
switch (counterB) {
|
||||||
blinker(led_B, 50, 10);
|
case 1:
|
||||||
enabled_btnB = false;
|
blinker(led_B, 500, 5);
|
||||||
enabled_btnAC = false;
|
enabled_LED = false;
|
||||||
countDelay = false;
|
enabled_btnAC = false;
|
||||||
digitalWrite(uv_LED, ON);
|
digitalWrite(uv_LED, ON);
|
||||||
return;
|
if ( countDelay == false ) {
|
||||||
|
oldTime = millis();
|
||||||
|
}
|
||||||
|
countDelay = true; // turn on delay counter in loop()
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
enabled_btnAC = true;
|
||||||
|
digitalWrite(uv_LED, OFF);
|
||||||
|
counterB = 0;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
digitalWrite(uv_LED, ON);
|
|
||||||
if ( countDelay == false ) {
|
|
||||||
oldTime = millis();
|
|
||||||
}
|
|
||||||
countDelay = true; // turn on delay counter in loop()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void uvForever() {
|
||||||
|
blinker(led_B, 500, 5);
|
||||||
|
blinker(led_B, 50, 10);
|
||||||
|
enabled_btnB = false;
|
||||||
|
enabled_btnAC = false;
|
||||||
|
countDelay = false;
|
||||||
|
digitalWrite(uv_LED, ON);
|
||||||
|
}
|
||||||
|
|
||||||
void opAmp() {
|
void opAmp() {
|
||||||
if (enabled_btnAC == true) {
|
if (enabled_btnAC == true) {
|
||||||
counterC++;
|
counterC++;
|
||||||
if (counterC == 1) { //1st press:
|
switch (counterC) {
|
||||||
blinker(led_G, 50, 2);
|
case 1:
|
||||||
digitalWrite(OPAMP, ON);
|
blinker(led_G, 50, 2);
|
||||||
}
|
digitalWrite(OPAMP, ON);
|
||||||
if (counterC == 2) { //2nd press:
|
break;
|
||||||
blinker(led_R, 50, 2);
|
case 2:
|
||||||
digitalWrite(OPAMP, OFF);
|
blinker(led_R, 50, 2);
|
||||||
counterC = 0;
|
digitalWrite(OPAMP, OFF);
|
||||||
|
counterC = 0;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void disco() {
|
||||||
|
int data = analogRead(ANALOG);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void blinker(byte pin, int len, byte rep) {
|
void blinker(byte pin, int len, byte rep) {
|
||||||
byte counter = 1;
|
byte counter = 1;
|
||||||
while (counter <= rep) {
|
while (counter <= rep) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue