problems with UART

pietro77 wrote on Friday, September 21, 2007:

Why if I try to do:

    xSerialPutChar( xUART2, ‘a’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘b’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘c’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘d’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘e’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘f’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘g’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘h’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘i’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘l’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘m’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘n’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘o’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘p’, mainNO_BLOCK );

in a task running with other tasks, doesn’t it work? (It may write on my terminal another char or the right sequence, but truncated or it may even crash… )

Why does

    xSerialPutChar( xUART2, ‘a’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘b’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘c’, mainNO_BLOCK );
    xSerialPutChar( xUART2, ‘d’, mainNO_BLOCK );

work?

And why if this task is the only one running, with all the xSerialPutChar, does this work well?

Thank you in advance,

Pietro

sotd wrote on Friday, September 21, 2007:

Any clues as to which port you are using.  Processor? Compiler?  Did you write the code yourself, or is this in the download?

davedoors wrote on Friday, September 21, 2007:

Does it work if you use a block time.  You are probably just not sending all the data.

Which port are you using?

pietro77 wrote on Friday, September 21, 2007:

I’m using PIC18F6527 with MPLAB 7.62, and I write my code.
Can you give me any advices?

Thank you,

Pietro