This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

bad structure declaration?

i'm trying to create an array of structures but when i make more than a handful my robot doesn't work.

so in main.h i have

typedef struct SPid
{
  int dState;      	 // Last position input
  int iState;      	 // Integrator state
  int iMax, iMin;    // Maximum and minimum allowable integrator state
  int desired_value; // the desired value the PID should converge upon


  float 	iGain,    	// integral gain
        	pGain,    	// proportional gain
         	dGain;     	// derivative gain
}SPid;

extern SPid vel_Gains[];

and then in main.c
#include "MAIN.H"
struct SPid vel_Gains[5];

it barely works for vel_Gains[2], (printf looks glitchy but readable) and then vel_Gains[1] works for sure...

i'm using the small memory model btw...

is there a size limitation on global variables?

thanks,
fred

Parents
  • Your description of the problem is too vague. It's like "Something isn't working. What could it be?" The answer to this is it could be anything. You'll have to be more specific in order to get more meaningful answers. You'll have to experiment to narrow down the number of possibilites. By experimenting I mean not just adding or removing modules, that's still not specific enough.

    - mike

Reply
  • Your description of the problem is too vague. It's like "Something isn't working. What could it be?" The answer to this is it could be anything. You'll have to be more specific in order to get more meaningful answers. You'll have to experiment to narrow down the number of possibilites. By experimenting I mean not just adding or removing modules, that's still not specific enough.

    - mike

Children
No data