??? 04/15/09 05:02 Read: times |
#164597 - RI always set after EA Set |
Hi all. I have a Philips LPC925 and am using seperate TX and RX interrupts (as this device has this and it is quite useful)
Anyway, after initialising the device in particular the UART, I clear the RI & TI flags, just prior to enabling EA. However immediately after setting EA, RI is also set, which of course causes the receive interrupt to fire. SBUF holds only 0x00, which is then fed through the rest of my code and messes it all up. Why is this occuring? It happens on my emulator PDS900 with no I/O connected at all, just the box sitting on the desk. So I can safely conclude that this is not related to my hardware? How do I ensure that RI is not set until there is an actual interrupt. After it has been through the interrupt code once, this issue never reoccurs. and all performs OK, I have got workaround code in at the moment, but I would prefer to know the reason. Thanks for the thoughts. Marshall Brown |
Topic | Author | Date |
RI always set after EA Set | 01/01/70 00:00 | |
I don't know, but... | 01/01/70 00:00 | |
your application should be designed so as to be tolerant | 01/01/70 00:00 | |
Check if the Rx pin is pulled low? | 01/01/70 00:00 | |
Ports are set as: | 01/01/70 00:00 | |
without looking at the datasheet, I can say it is wrong | 01/01/70 00:00 | |
Why? | 01/01/70 00:00 | |
I did not clean my glasses | 01/01/70 00:00 | |
Config Registers | 01/01/70 00:00 | |
Check the BR and FE bits in SSTAT. | 01/01/70 00:00 | |
Yes they are set - Why? | 01/01/70 00:00 | |
When do you start the BRG? | 01/01/70 00:00 | |
BRG set as part of UART Init (before EA) | 01/01/70 00:00 | |
I would... | 01/01/70 00:00 | |
Thanks - Done![]() | 01/01/70 00:00 | |
aren't the LPC9xx's pins... | 01/01/70 00:00 | |
Yes but - it also happens in the real hardware | 01/01/70 00:00 | |
the point of asking nonsense questions... | 01/01/70 00:00 | |
Understood, appreciate being 2nd guessed | 01/01/70 00:00 | |
The Teddy Bear Effect | 01/01/70 00:00 |