I have had no trouble running a 7043 at 115Kbd, but that was using interrupts. If you are using polling to check for characters received you need to be sure that your code checks back before the next character is received.
Thanks so much for your prompt reply, Stan. I'm using interrupts as well. I am able to send data at 115Kbps successfilly but reception of chunks of data(say 1k) eventually results in an Overrun error.
hardware buffer. I was under the impression that because the SCI does not have a FIFO queue for buffering, high baud rates would be unreliable.
But the fact that you are able to communicate at 115Kbps suggests that my understanding is incorrect. I will go back and try to figure this out.
I would greatly appreciate any advice that you can offer.
Even when interrupts are used, there are some possible traps:
Are there any other, higher-priority interrupts that run for a significant amount of time?
Are there lower-priority interrupts that "forget" to re-enable interrupts at the beginning of the interrupt routine?
Are there critical sections in the code that turn off interrupts?
Any of these can cause interrupt handling to be delayed long enough for characters to be missed.
Anyway, there is a solution. Like many other Renesas chips, the 7043 contains a DTC (Data Transfer Controller). The DTC can push data in the background, without generating an interrupt.You can, for example, program the DTC to push serial data into a ring buffer, which you poll periodically.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.