-         

Ergebnis 1 bis 2 von 2

Thema: Pro-Bot 128 ACS-Problem

  1. #1

    Pro-Bot 128 ACS-Problem

    Anzeige

    Ich hab ein Problem damit das ACS zu benutzen. Es funktioniert eigentlich gut, nur eben immer nur einmal im Programmablauf. Also einmal wird "gescannt" und dann nur noch vorwärts gefahren...
    Gibt es eine Möglichkeit das ACS mehrere Male hintereinander abzufragen und die neuen Werte zu benutzen?

    Code:
    #define PWM_IR 35
    #define IR_left 27
    #define IR_right 29
    #define TSOP 26
    
    byte ACS_R, ACS_L;
    
    void main(void)
    {
    
    PRO_BOT128_INIT();
    ACS_INIT(5);
    ENC_LED_ON();
    DRIVE_ON();
    do
    {
    
    Check_Left();   //Check IR Sensor "ACS" left
    Check_Right();  //Check IR Sensor "ACS" right
    if((ACS_LEFT()==1)&&(ACS_RIGHT()==1)) Forward();
    if((ACS_LEFT()==0)&&(ACS_RIGHT()==0)) Backward();
    if((ACS_LEFT()==1)&&(ACS_RIGHT()==0)) Turn_Left();
    if((ACS_LEFT()==0)&&(ACS_RIGHT()==1)) Turn_Right();
    }while(1);
    
    }
    
    void Forward(void)
    {
    GO_TURN(+10,0,250);
    AbsDelay(150);
    }
    
    void Backward(void)
    {
    GO_TURN(-10,0,250);
    AbsDelay(150);
    
    }
    
    void Turn_Left(void)
    {
    GO_TURN(0,-90,250);
    AbsDelay(150);
    
    }
    
    void Turn_Right(void)
    {
    GO_TURN(0,+90,250);
    AbsDelay(150);
    
    }
    
    void Check_Right(void)
    {
        Port_WriteBit(IR_left,PORT_OFF);     //Check right side
        Port_WriteBit(IR_right,PORT_ON);
        AbsDelay(5);
        ACS_R = Port_ReadBit(TSOP);
        Port_WriteBit(IR_right,PORT_OFF);
    }
    
    
    void Check_Left(void)
    {
        Port_WriteBit(IR_right,PORT_OFF);     //Check left side
        Port_WriteBit(IR_left,PORT_ON);
        AbsDelay(5);
        ACS_L = Port_ReadBit(TSOP);
        Port_WriteBit(IR_left,PORT_OFF);
    }

  2. #2
    Könnte mir nicht wenigstens jemand ein funktionierendes ACS-Programm geben, am besten ein Eigenes, da auch die Demos nur einmal funktionieren...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •