Hi Community, i have a big problem. I want to write something like a ECHO - Funktion. That means i recive a char an send it back like in this source ...
void serial_int (void) interrupt 4 using 3 { static char chr = '\0'; if (RI == 1) { chr = SBUF; RI = 0; TI = 1; TL0 = 0xFF; } else if (TI == 1) { TI = 0; if (chr != '\0') { if (chr == '\r') chr = '\n'; SBUF = chr; while(TI == 0); TL0 = 0xFF; chr = '\0'; } } }
"I thing its the time i am waiting for the TI" You aren't waiting for TI. When TI goes true the ISR is called. Are you just trying to echo characters back out of the UART?
static void com_isr (void) interrupt 4 using 1 { .... putbuf(c); .... } void putbuf (char c) using 0 { The default "using 0" added to show the problem. Erik
static void com_isr (void) interrupt 4 using 1 { .... putbuf(c); .... } void putbuf (char c) using 0 {