View Single Post
  #4   Spotlight this post!  
Unread 23-02-2011, 22:17
MattD's Avatar
MattD MattD is offline
Registered User
AKA: Matthew Douglas
FRC #0228 (GUS Robotics)
Team Role: Alumni
 
Join Date: Feb 2006
Rookie Year: 2005
Location: Indianapolis, IN
Posts: 185
MattD is a splendid one to beholdMattD is a splendid one to beholdMattD is a splendid one to beholdMattD is a splendid one to beholdMattD is a splendid one to beholdMattD is a splendid one to beholdMattD is a splendid one to behold
Send a message via AIM to MattD
Re: Programming Help!

Quote:
Originally Posted by davidthefat View Post
Add:
free(Elevator_heights);
after that for loop
I'm not sure why this would be freed at after that for loop. It looks like there are other functions that want to access that array later on. It should be freed somewhere else (perhaps a destructor), but I don't think that this is the source of the problem. It appears it's only called at most twice during the program's run before it crashes.

As mentioned already, that Elevator_Mechanism structure is very strange looking. It's difficult to follow, so I can't say for sure whether or not that part would work.

Spoiler for incorrect information:

Here's what I noticed at a quick glance in the constructor's initialization list:
Code:
Carriage_motor(new Victor(4)),
Elevator_motor(new Victor(3)),
These are defined earlier as:
Code:
Victor *Elevator_motor;
Victor *Carriage_motor;
I believe you should have instead:
Code:
Carriage_motor(3),
Elevator_motor(4),
This is because the constructor for Victor expects an int with the value of a PWM port, and instead you're passing a pointer to a Victor. Since there are checks to make sure a valid PWM channel number is provided, I'd expect an IndexOutOfRange ("Allocating channel or module that is out of range") fatal error to be thrown by WPILib.

This is a situation where it would be useful to post the console output. The debugger would also be a valuable tool to use.
__________________
GUS Robotics Team 228

2010 WPI Engineering Inspiration Award
2010 WPI Regional Champions (Thanks 230 & 20!)
2010 CT VEX Champions
2010 CT VEX Innovate Award
2009 QCC VEX Champions
2009 CT Motorola Quality Award
2007 CT J&J Sportsmanship Award
2006 CT Best Website Award

Last edited by MattD : 24-02-2011 at 08:01.
Reply With Quote