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

String tokenizing

I need to extract eight values from a string I'm receiving from my serial port. I have the following code:

unsigned char xdata *p_ch;
unsigned int  xdata ch = 0;

// Get command
   p_ch = strtok( com_buffer, "," );

// Get status
   while ( p_ch != NULL )
   {

//    Get string
      p_ch = strtok( NULL, "," );

//    Convert to float
      ad_value[ch] = atof( p_ch );
      ch++;

      if ( ch > 8 )
        break;

    } //__while ( p_ch != NULL )__

It works very intermittently. Can anyone suggest a better way to decode my serial string?

Thanks.

Parents
  • It works very intermittently.

    That's no way to describe a problem. It's not even beginning to tell anyone what actually happens.

    So here we have code that makes no effort at catching problems, and its author making no effort either. How do you think that could possibly lead to anybody ever figuring out what's going wrong?

Reply
  • It works very intermittently.

    That's no way to describe a problem. It's not even beginning to tell anyone what actually happens.

    So here we have code that makes no effort at catching problems, and its author making no effort either. How do you think that could possibly lead to anybody ever figuring out what's going wrong?

Children
No data