| ??? 06/13/06 14:24 Read: times |
#118231 - This looks familiar: Responding to: ???'s previous message |
while(1)
{
if data ready
{
TI = CLEAR
SBUF = data;
while(!TI);
}
}
Ok. main(), at some point, waits for TI to become 1. But ...
serial interrupt
{
if(TI)
TI = 0;
if(RI)
{
;
;
}
}
... as soon as TI becomes 1 (and before main() can ever see that), the serial interrupt routine is called and it sets TI to 0. So, main() will start waiting for TI == 1 ... and wait ... and wait ... and wait ... forever. |
| Topic | Author | Date |
| I Can't Transmit Using Serial Port | 01/01/70 00:00 | |
| This looks familiar: | 01/01/70 00:00 | |
| a guess | 01/01/70 00:00 | |
| For the sake of completeness: | 01/01/70 00:00 | |
| Which C compiler? | 01/01/70 00:00 | |
| Compiler | 01/01/70 00:00 | |
Hai | 01/01/70 00:00 |



