Помогите пожалуйста с кодом

Тема в разделе "Arduino & Shields", создана пользователем grx1a, 9 фев 2013.

  1. grx1a

    grx1a Гик

    Здравствуйте помогите пожалуйста не могу енкодер настроить математический выражение правильно но машина его почему то не математический считает, все должно быть так 1+1=2 0+0=0 0+1=1, но на деле машина это по своему считает, в чем причина? вот часть кода
    /*
    Программа для энкодера
    Общий вход пин энкодера +5в (1 или HIGH)
    Выход A 01100110011
    Выход B 00110011001
    Сумма 01210121012
    */
    #define pinA 3 //
    #define pinB 4 //
    #define ledpin 13 //
    boolean stateA=0; //
    boolean stateB=0; //
    boolean valA=0; //
    boolean valB=0; //
    boolean pulse = 0; //
    boolean direction = 0; //
    void setup(){
    pinMode(pinA,INPUT); //
    pinMode(pinB,INPUT); //
    pinMode(ledpin,OUTPUT); //
    }
    void loop(){
    valA=digitalRead(pinA); //
    valB=digitalRead(pinB); //
    if(valA==HIGH) //
    {stateA=1;}
    else
    {stateA=0;}
    if(valB==HIGH) //
    {stateB=1;}
    else
    {stateA=0;}
    if(stateA+stateB==2) //
    {pulse=0;}
    if(stateA+stateB==0)
    {pulse=0;}
    if(stateA+stateB==1)
    {pulse=1;}

    if (pulse==1) //
    {digitalWrite(ledpin,HIGH);}
    else
    {digitalWrite(ledpin,LOW);}}​
     
  2. roggedhorse

    roggedhorse Гик

  3. grx1a

    grx1a Гик

    Спасибо!