5 TD5 Correction

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

#include <IRremote.

hpp>

const int rcvPin=11;


const int aPin = 3;
const int bPin = 2;
const int cPin = 9;
const int dPin = 7;
const int ePin = 6;
const int fPin = 4;
const int gPin = 5;
const int dpPin = 8;

auto state = false;


int latestNumber = 0;

IRrecv irrecv(rcvPin);
decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(aPin, OUTPUT);
pinMode(bPin, OUTPUT);
pinMode(cPin, OUTPUT);
pinMode(dPin, OUTPUT);
pinMode(ePin, OUTPUT);
pinMode(fPin, OUTPUT);
pinMode(gPin, OUTPUT);
pinMode(dpPin, OUTPUT);

numberx();
}
void loop() {

if(IrReceiver.decode()) {
auto value= IrReceiver.decodedIRData.decodedRawData;
if (value == 4278238976) {
state = !state;
}

if (state) {
switch(value)
{
case 4278238976: //Power
case 4077698816: //0
number0();
break;
case 4010852096: //1
number1();
break;
case 3994140416: //2
number2();
break;
case 3977428736: //3
number3();
break;
case 3944005376: //4
number4();
break;
case 3927293696: //5
number5();
break;
case 3910582016: //6
number6();
break;
case 3877158656: //7
number7();
break;
case 3860446976: //8
number8();
break;
case 3843735296: //9
number9();
break;
case 4111122176: //up
numberUp();
break;
case 4144545536: //down
numberDown();
break;
case 4211392256: //start
number0();
break;
case 4177968896: //end
number9();
break;

default: Serial.println(value);
}

}
else {
numberx();
}
IrReceiver.resume();
}
}

void numberx() {
latestNumber = 0;
digitalWrite(aPin, HIGH);
digitalWrite(bPin, HIGH);
digitalWrite(cPin, HIGH);
digitalWrite(dPin, HIGH);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, HIGH);
digitalWrite(gPin, HIGH);
digitalWrite(dpPin, LOW);
}

void number0() {
latestNumber = 0;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, LOW);
digitalWrite(fPin, LOW);
digitalWrite(gPin, HIGH);
digitalWrite(dpPin, HIGH);
}

void number1() {
latestNumber = 1;
digitalWrite(aPin, HIGH);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, HIGH);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, HIGH);
digitalWrite(gPin, HIGH);
digitalWrite(dpPin, HIGH);
}

void number2() {
latestNumber = 2;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, HIGH);
digitalWrite(dPin, LOW);
digitalWrite(ePin, LOW);
digitalWrite(fPin, HIGH);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void number3() {
latestNumber = 3;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, HIGH);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void number4() {
latestNumber = 4;
digitalWrite(aPin, HIGH);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, HIGH);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, LOW);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void number5() {
latestNumber = 5;
digitalWrite(aPin, LOW);
digitalWrite(bPin, HIGH);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, LOW);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}
void number6() {
latestNumber = 6;
digitalWrite(aPin, LOW);
digitalWrite(bPin, HIGH);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, LOW);
digitalWrite(fPin, LOW);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void number7() {
latestNumber = 7;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, HIGH);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, HIGH);
digitalWrite(gPin, HIGH);
digitalWrite(dpPin, HIGH);
}

void number8() {
latestNumber = 8;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, LOW);
digitalWrite(fPin, LOW);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void number9() {
latestNumber = 9;
digitalWrite(aPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(cPin, LOW);
digitalWrite(dPin, LOW);
digitalWrite(ePin, HIGH);
digitalWrite(fPin, LOW);
digitalWrite(gPin, LOW);
digitalWrite(dpPin, HIGH);
}

void numberUp() {
if (latestNumber == 0){
number1();
}
else if (latestNumber == 1){
number2();
}
else if (latestNumber == 2){
number3();
}
else if (latestNumber == 3){
number4();
}
else if (latestNumber == 4){
number5();
}
else if (latestNumber == 5){
number6();
}
else if (latestNumber == 6){
number7();
}
else if (latestNumber == 7){
number8();
}
else if (latestNumber == 8){
number9();
}
}

void numberDown() {
if (latestNumber == 9){
number8();
}
else if (latestNumber == 8){
number7();
}
else if (latestNumber == 7){
number6();
}
else if (latestNumber == 6){
number5();
}
else if (latestNumber == 5){
number4();
}
else if (latestNumber == 4){
number3();
}
else if (latestNumber == 3){
number2();
}
else if (latestNumber == 2){
number1();
}
else if (latestNumber == 1){
number0();
}
}

You might also like