Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Analog Input Trouble (http://www.chiefdelphi.com/forums/showthread.php?t=33102)

Matt Krass 20-01-2005 00:49

Analog Input Trouble
 
My co-programmer and I are having some trouble with the RC. We've tried both a potentiometer and a gyro connected to the first analog input. I tried to get the raw value using:
Code:

printf("Raw value:  %d\n", Get_Analog_Value(rc_ana_in01));
but it just prints -1. Any suggestions ?

Using newest compiler/IDE, firmware's updated and we're using newest default code.

Kevin Watson 20-01-2005 01:54

Re: Analog Input Trouble
 
Quote:

Originally Posted by Matt Krass
My co-programmer and I are having some trouble with the RC. We've tried both a potentiometer and a gyro connected to the first analog input. I tried to get the raw value using:
Code:

printf("Raw value: %d\n", Get_Analog_Value(rc_ana_in01));
but it just prints -1. Any suggestions ?

Using newest compiler/IDE, firmware's updated and we're using newest default code.

The compiler doesn't seem to handle this very well. I've taken to just using a temporary variable for the return value of a function, then pass the value of the temporary variable into printf. Try this:

unsigned int temp_analog_value;

temp_analog_value = Get_Analog_Value(rc_ana_in01);
printf("Raw value: %u\n", temp_analog_value);

-Kevin

Matt Krass 20-01-2005 12:07

Re: Analog Input Trouble
 
I'll definitely try that, however once I get to robotics I won't have access to these forums, so in case it doesn't work out, does anyone have any other tips or things for me to check?

Thanks, Matt.

Mike Betts 20-01-2005 12:23

Re: Analog Input Trouble
 
Matt,

Remember that you are displaying in decimal. -1 = 0xFF which is full scale (>+5V input).... Are you sure it's not working?

Mark McLeod 20-01-2005 12:33

Re: Analog Input Trouble
 
You might test on an alternate controller like the EDU or last year's RC.

I ran a quick test on the EDU with this year's 2.4 compiler and didn't have a problem. I tested with the Get_Analog call in-line and to a temp variable, and with the old printf and new 2.4 stdio.h printf. Same result though every time. 1023 with nothing on analog 1, 0 with the pins shorted.

Matt Krass 20-01-2005 12:35

Re: Analog Input Trouble
 
No matter what we do it remains at minus 1, so I don't think it's us not noticing. I'm about to go "borrow" the 2004 RC and see how it likes this, once I make sure we still have its master program. I'm hoping the code snippet above will solve my problems.

By the way, the accelerometer in the kit, could I use that with some decent math to imitate a gyro? Our budget is far too tight to get an Analog Digital gyro, or any other for that matter.

Mark McLeod 20-01-2005 12:42

Re: Analog Input Trouble
 
Quote:

Originally Posted by Matt Krass
By the way, the accelerometer in the kit, could I use that with some decent math to imitate a gyro? Our budget is far too tight to get an Analog Digital gyro, or any other for that matter.

Not really for a gyro. It's probably better used for distance or as a tilt sensor. It does make a great gravity detector.;)

Kevin Watson 20-01-2005 13:13

Re: Analog Input Trouble
 
Quote:

Originally Posted by Matt Krass
I'll definitely try that, however once I get to robotics I won't have access to these forums, so in case it doesn't work out, does anyone have any other tips or things for me to check?

Thanks, Matt.

Matt,

To expand upon Mike's reply above, Get_Analog_Value() returns an unsigned int. Your printf() is expecting to manipulate an int because you used %d instead of %u. I fixed it in my code above, but forgot to mention it as another problem.

-Kevin

Kevin Watson 20-01-2005 13:25

Re: Analog Input Trouble
 
Quote:

Originally Posted by Matt Krass
No matter what we do it remains at minus 1, so I don't think it's us not noticing. I'm about to go "borrow" the 2004 RC and see how it likes this, once I make sure we still have its master program. I'm hoping the code snippet above will solve my problems.

By the way, the accelerometer in the kit, could I use that with some decent math to imitate a gyro? Our budget is far too tight to get an Analog Digital gyro, or any other for that matter.

Matt,

I forgot to ask which version of the printf() function you're using? IFI's original or the version included with the 2.4 compiler?

-Kevin

Astronouth7303 20-01-2005 16:11

Re: Analog Input Trouble
 
You may also want to check that it's plugged in right, that it's the right port, etc. etc. Also check to see if an analog input defaults to high or low. (Since no ones mentioned it, I think.)

Matt Krass 20-01-2005 21:09

Re: Analog Input Trouble
 
Thanks for all teh help, it's working now. It was the printf statement.

Thanks guys, mods can close the thread if they want.


All times are GMT -5. The time now is 17:52.

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