[int in1 = 1;
int in2 = 2;
int in3 = 3;
int in4 = 4;
int op10 = 10;
char counter = 0;
void setup() {
//configure output pin as 0
pinMode(op10, OUTPUT);
digitalWrite(op10, 0);
//configure input pins to be inputs
pinMode(in1, INPUT);
pinMode(in2, INPUT);
pinMode(in3, INPUT);
pinMode(in4, INPUT);
}
void loop() {
if (digitalRead(in1) && !digitalRead(in2) && digitalRead(in3) && !digitalRead(in4) && (counter == 0)) // first code received is 0101
{
counter = 1;
}
if ( digitalRead(in1) && digitalRead(in2) && !digitalRead(in3) && !digitalRead(in4) && (counter == 1)) // second code received is 0011
{
counter = 2;
}
if (!digitalRead(in1) && !digitalRead(in2) && digitalRead(in3) && !digitalRead(in4) && (counter == 2)) // third code received is 0010
{
counter = 3;
}
if (!digitalRead(in1) && !digitalRead(in2) && !digitalRead(in3) && digitalRead(in4) && (counter == 3)) // third code received is 1000
{
counter = 4;
}
if (counter == 4) // turn on the output pin 10
{
digitalWrite(op10, 1);
}
if (!digitalRead(in1) && !digitalRead(in2) &&digitalRead(in3) && digitalRead(in4) && (counter == 4)) // turn off output pin 10, code received is 1100
{
digitalWrite(op10, 0);
counter = 0;
}
}
كيفية عمل reset عند تكرار الكود الاخير ثلاث مرات متتالية خلال 5 ثواني
if (!digitalRead(in1) && !digitalRead(in2) &&digitalRead(in3) && digitalRead(in4) && (counter == 4)) // turn off output pin 10, code received is 1100
{