@Kirill_Iashin

Как преобразовать 4 битный код Грея в двоичный в Arduino?

Привет

Есть такой код, найденный на просторах интернета:
boolean A, B, C, D, S0, S1, S2, S3;

void setup ()
{
  pinMode(2, INPUT);
  pinMode(3, INPUT);
  pinMode(4, INPUT);
  pinMode(5, INPUT);
  Serial.begin(9600);
}

void loop()
{
  A=digitalRead(2);
  B=digitalRead(3);
  C=digitalRead(4);
  D=digitalRead(5);
  
  S0=A;
  S1=(!A&&B)||(A&&!B);
  S2=(!B&&C)||(B&&!C);
  S3=(!C&&D)||(C&&!D);

  Serial.print("Grey:");
  Serial.print(S0);
  Serial.print(S1);
  Serial.print(S2);
  Serial.println(S3);
  Serial.print("Bin:");
  Serial.print(A);
  Serial.print(B);
  Serial.print(C);
  Serial.println(D);
  
  delay(1000);
}


Проблема в том, что он преобразует двоичный в Грея, а мне нужно наоборот
Подскажите, пожалуйста, как это сделать
  • Вопрос задан
  • 420 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
A = S0;
B = A^S1;
C = B^S2;
D = C^S3;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы