Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   C/C++ (http://www.chiefdelphi.com/forums/forumdisplay.php?f=183)
-   -   problem while programming 2 bottuns in windriver (http://www.chiefdelphi.com/forums/showthread.php?t=74234)

mahmosh 12-02-2009 09:12

problem while programming 2 bottuns in windriver
 
hey
we are trying to do 2 buttons for the same motor if button 1 pressed move forward .. else stop ... and then if button 2 pressed move backward else stop
here is the code we are using but it doesn't work well :

in the operatorcontrol we put this:
Code:

if(leftjoystick->GetRawButton(1));
{
jaguar->Set(1.0);
}
else{
jaguar->Set(0.0);
}
 
if(leftjoystick->GetRawButton(2));
{
jaguar->Set(-1.0);
}
else{
jaguar->Set(0.0);
}

what is the problem with this ?? if we deleted the second part
Code:

if(leftjoystick->GetRawButton(2));
{
jaguar->Set(-1.0);
}
else{
jaguar->Set(0.0);
}

everything working ok!!

please need answer

wt200999 12-02-2009 09:27

Re: problem while programming 2 bottuns in windriver
 
Its a logic error, if you hold down button 1, then that will set the motor to 1, then since button 2 is not held down it will go to that else which will set it back to 0.

JBotAlan 12-02-2009 09:42

Re: problem while programming 2 bottuns in windriver
 
Because you have two separate if...else statements, if the reverse button isn't held down, the output will be zero regardless of the forward button's state.

Also, this:
Code:

if (condition);
has no code to execute because of that trailing semicolon. An "if" will execute the statement immediately after it up until a semicolon, or if you put the code inside {curly braces}, it will execute everything in the first set of braces. If statements don't need any additional semicolons.

A quick rewrite yields this:

Code:

if(leftjoystick->GetRawButton(1))
{
jaguar->Set(1.0);
}
else if (leftjoystick->GetRawButton(2)) {
jaguar->Set(-1.0);
} else {
jaguar->Set(0.0);
}

That will work.

Alan Anderson let me know that I messed up. I misread your code snippet: I didn't realize that the reverse button would drive the motor in reverse... (crosses eyes) I really need some more sleep.

Let me know if you have any more questions or problems.

Jacob

mahmosh 12-02-2009 12:25

Re: problem while programming 2 bottuns in windriver
 
thank you :D it works well .... if i have any questions i will ask here


All times are GMT -5. The time now is 02:50.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi