Skip to content

Commit

Permalink
first puzzle
Browse files Browse the repository at this point in the history
  • Loading branch information
kgyrtkirk committed Apr 15, 2020
1 parent 2c68f27 commit 09a840d
Show file tree
Hide file tree
Showing 2 changed files with 83 additions and 5 deletions.
87 changes: 82 additions & 5 deletions busy_logic/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,18 +50,72 @@ enum Mode {

};


class XEvaluable {
public:
virtual uint8_t evaluate(XEvaluable &e...)=0;
};

class Input : XEvaluable {
uint8_t pin;
public:
Input(uint8_t _pin) : pin(_pin) {}
void init(){
pinMode(pin,INPUT);
}

uint8_t evaluate() {
return digitalRead(pin);
}
};

class Output : XEvaluable {
uint8_t pin;
public:
Output(uint8_t _pin) : pin(_pin) {}
void init(){
pinMode(pin,OUTPUT);
}

uint8_t evaluate() {
uint8_t val=1;
digitalWrite(pin, val);
return digitalRead(val);
}
}
;




Gate g0(2,3,4, Gate::Mode::AND );
Gate g1(5,6,7, Gate::Mode::XOR );
Gate g2(8,9,10, Gate::Mode::XOR );
Gate g3(16,14,15, Gate::Mode::XOR );

int I1=2;
int I2=3;
int I3=5;
int I4=6;
int I5=8;
int I6=9;
int I7=16;
int I8=14;

int O1=4;
int O2=7;
int O3=10;
int O4=15;

void setup()
{
Serial.begin(115200);
Serial.println("startup...");

// initialize LED digital pin as an output.
pinMode(LED_BUILTIN, OUTPUT);



g0.init();
g1.init();
Expand All @@ -85,10 +139,33 @@ void sb(int t){
}

void loop() {
g0.update();
g1.update();
g2.update();
g3.update();
sb(100);
// g0.update();
// g1.update();
// g2.update();
// g3.update();

int i1=digitalRead(I1);
int i2=digitalRead(I2);
int i3=digitalRead(I3);
int i4=digitalRead(I4);
int i5=digitalRead(I5);
int i6=digitalRead(I6);
int i7=digitalRead(I7);
int i8=digitalRead(I8);

int o1=i1 && i8;
int o2=i4 && i6;
int o3=i2 ^ i5;
int o4=i3 ^ i7;
// int o1=i1^i4^i6^i7^i8;
// int o2=i1^i3^i5^i7;
// int o3=i2^i4^i6^i7^i8;
// int o4=i1^i2^i3^i4^i5^i6^i7^i8;

digitalWrite(O1,o1);
digitalWrite(O2,o2);
digitalWrite(O3,o3);
digitalWrite(O4,o4);
sb(10);
}

1 change: 1 addition & 0 deletions esp_shutter/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,7 @@ void processCommands(){
}
}
}

void loop() {
kmqtt.loop();

Expand Down

0 comments on commit 09a840d

Please sign in to comment.