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

Variables zeroed out when doing simple math

I'm using RTL for my project, and what I am finding is that when I pass parameters (mentioned in another post) and when I do simple math the variables are zeroed out?

What in the world would cause this? I have never seen this, and I am really not sure what could be causing this. Has anyone ever seen this before, and what in the world do I need to do to prevent this?

Here is a snipit of code that is being zeroed:

pMot->STAT.ulPulseWidth = pMot->STAT.ulPulseWidth / 100;

pMot->STAT.ulSysClkPeriod = (unsigned long)(SysCtlClockGet() / PWM_PERIOD_DIV); pMot->STAT.ulPWMPeriod = pMot->STAT.ulSysClkPeriod * pMot->STAT.ulPulseWidth;

Parents
  • Getting zeroed out is just that..... When math is performed, ie the calculation of mult, div, or even addition, the value returned is ZERO even though the calculation clearly should not be.

    I am observing this through real-time debugging on a development board.

    Using Hungarian notation, so "ul" would stand for unsigned long.

    After having given some thought to the issue, I am wondering if it has to do with the function call not being within the same stack? This seems the most plausible and I am currently investigating this theory.

Reply
  • Getting zeroed out is just that..... When math is performed, ie the calculation of mult, div, or even addition, the value returned is ZERO even though the calculation clearly should not be.

    I am observing this through real-time debugging on a development board.

    Using Hungarian notation, so "ul" would stand for unsigned long.

    After having given some thought to the issue, I am wondering if it has to do with the function call not being within the same stack? This seems the most plausible and I am currently investigating this theory.

Children