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

Serial Rx problem

I have a strange problem in my code. I cannot receive characters via the serial port.

I've read up on the TI and RI interrupts and I think I am handling these correctly.

The program goes to the serial I/O isr, but just sits at the gets(comin,4) line. When I examine comin in the watch window and input chars via the SIN = xx (where xx is an ascii code), I can see the comin array remains empty.

Below is the serial I/O interrupt routine (my application does not need Tx)

pre
void uart_rx_isr (void) interrupt 4 using 3
{ signed char index=0; EA=0;

if (RI == 1) { gets(comin,4); command = atoi(comin); } RI=FALSE; /* finished isr - clear flag */ TI=FALSE; /* TI will not be used - always clear it*/ EA=1;
}

/pre

Here is a fragment from main() - you can see that I set TI=1 initially to set the UART up

pre

TI=TRUE; /* always set TI=1 initially to allow serial printing */ RI=0;

loop: //RI=0; //IDLE

while ((1));

goto loop;
} /pre

Appreciate some pointers here.

Jason

Parents
  • The word dependant when used in the context:

    "...totally dependant upon the rest of the code."

    is not a noun.

    Regardless of context, "dependant" is always a noun, unless it is a misspelling and should actually read "dependent".

    "Dependent" can be a noun, in which case it's an alternative form of "dependant", or an adjective.

    So, yet again, you have tried to indicate a fault in something that is correct.

    Erik is correct, and the link he gives explains things quite nicely.

    Please don't go around trying to teach people incorrect English.

Reply
  • The word dependant when used in the context:

    "...totally dependant upon the rest of the code."

    is not a noun.

    Regardless of context, "dependant" is always a noun, unless it is a misspelling and should actually read "dependent".

    "Dependent" can be a noun, in which case it's an alternative form of "dependant", or an adjective.

    So, yet again, you have tried to indicate a fault in something that is correct.

    Erik is correct, and the link he gives explains things quite nicely.

    Please don't go around trying to teach people incorrect English.

Children