well. don't miss this, yet.
This commit is contained in:
parent
890128cf94
commit
4847626801
2 changed files with 60 additions and 20 deletions
|
|
@ -43,7 +43,7 @@
|
||||||
//==========</preset>==========
|
//==========</preset>==========
|
||||||
|
|
||||||
//============<buoyfly>============
|
//============<buoyfly>============
|
||||||
#define BUOYFLY_KEY 101
|
#define BUOYFLY_KEY 110
|
||||||
//============</buoyfly>===========
|
//============</buoyfly>===========
|
||||||
|
|
||||||
//============<parameters>============
|
//============<parameters>============
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,8 @@
|
||||||
//==========</preset>==========
|
//==========</preset>==========
|
||||||
|
|
||||||
//============<gastank>============
|
//============<gastank>============
|
||||||
#define GASTANK_KEY 100
|
#define GASTANK_SIDE_KEY 100
|
||||||
|
#define GASTANK_HEAD_KEY 101
|
||||||
//============</gastank>===========
|
//============</gastank>===========
|
||||||
|
|
||||||
//============<parameters>============
|
//============<parameters>============
|
||||||
|
|
@ -153,31 +154,64 @@ void nothappyalone() {
|
||||||
Task nothappyalone_task(100, TASK_FOREVER, ¬happyalone); // by default, ENABLED.
|
Task nothappyalone_task(100, TASK_FOREVER, ¬happyalone); // by default, ENABLED.
|
||||||
|
|
||||||
// servo
|
// servo
|
||||||
#define SERVO_PIN D6
|
|
||||||
#include <Servo.h>
|
#include <Servo.h>
|
||||||
static Servo myservo;
|
|
||||||
|
|
||||||
// my tasks
|
// my tasks
|
||||||
// ringring.
|
|
||||||
extern Task servo_release_task;
|
// ring_side.
|
||||||
void ringring() {
|
static Servo side;
|
||||||
|
extern Task side_release_task;
|
||||||
|
void ring_side() {
|
||||||
int angle = random(80, 125);
|
int angle = random(80, 125);
|
||||||
//
|
//
|
||||||
Serial.print("ringring go -> ");
|
Serial.print("ring_side go -> ");
|
||||||
Serial.print(angle);
|
Serial.print(angle);
|
||||||
Serial.println(" deg.");
|
Serial.println(" deg.");
|
||||||
//
|
//
|
||||||
myservo.attach(D6);
|
side.attach(D6);
|
||||||
myservo.write(angle);
|
side.write(angle);
|
||||||
servo_release_task.restartDelayed(100);
|
side_release_task.restartDelayed(100);
|
||||||
}
|
}
|
||||||
Task ringring_task(0, TASK_ONCE, &ringring);
|
Task ring_side_task(0, TASK_ONCE, &ring_side);
|
||||||
|
void side_release() {
|
||||||
|
side.detach();
|
||||||
|
}
|
||||||
|
Task side_release_task(0, TASK_ONCE, &side_release);
|
||||||
|
|
||||||
// servo release
|
// ring_head.
|
||||||
void servo_release() {
|
static Servo head;
|
||||||
myservo.detach();
|
extern Task head_release_task;
|
||||||
|
extern Task ring_head_task;
|
||||||
|
// ring_head!
|
||||||
|
void ring_head() {
|
||||||
|
static int count = 0;
|
||||||
|
if (ring_head_task.isFirstIteration()) {
|
||||||
|
count = 0;
|
||||||
|
Serial.println("ring_head! start.");
|
||||||
|
}
|
||||||
|
if (count % 3 == 0) {
|
||||||
|
//
|
||||||
|
head.attach(D5);
|
||||||
|
head.write(170);
|
||||||
|
//
|
||||||
|
} else if (count % 3 == 1) {
|
||||||
|
//
|
||||||
|
head.detach();
|
||||||
|
//
|
||||||
|
} else {
|
||||||
|
//
|
||||||
|
head.attach(D5);
|
||||||
|
head.write(100);
|
||||||
|
head_release_task.restartDelayed(100);
|
||||||
|
}
|
||||||
|
//
|
||||||
|
count++;
|
||||||
}
|
}
|
||||||
Task servo_release_task(0, TASK_ONCE, &servo_release);
|
Task ring_head_task(100, 3, &ring_head);
|
||||||
|
void head_release() {
|
||||||
|
head.detach();
|
||||||
|
}
|
||||||
|
Task head_release_task(0, TASK_ONCE, &head_release);
|
||||||
|
|
||||||
// mesh callbacks
|
// mesh callbacks
|
||||||
void receivedCallback(uint32_t from, String & msg) { // REQUIRED
|
void receivedCallback(uint32_t from, String & msg) { // REQUIRED
|
||||||
|
|
@ -209,8 +243,11 @@ void receivedCallback(uint32_t from, String & msg) { // REQUIRED
|
||||||
int gate = str_gate.toInt();
|
int gate = str_gate.toInt();
|
||||||
|
|
||||||
//is it for me, the gastank?
|
//is it for me, the gastank?
|
||||||
if (key == GASTANK_KEY && gate == 1) {
|
if (key == GASTANK_SIDE_KEY && gate == 1) {
|
||||||
ringring_task.restartDelayed(10);
|
ring_side_task.restartDelayed(10);
|
||||||
|
}
|
||||||
|
if (key == GASTANK_HEAD_KEY && gate == 1) {
|
||||||
|
ring_head_task.restartDelayed(10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void changedConnectionCallback() {
|
void changedConnectionCallback() {
|
||||||
|
|
@ -322,8 +359,11 @@ void setup() {
|
||||||
Wire.begin();
|
Wire.begin();
|
||||||
|
|
||||||
//tasks
|
//tasks
|
||||||
runner.addTask(servo_release_task);
|
runner.addTask(ring_side_task);
|
||||||
runner.addTask(ringring_task);
|
runner.addTask(side_release_task);
|
||||||
|
//
|
||||||
|
runner.addTask(ring_head_task);
|
||||||
|
runner.addTask(head_release_task);
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue