Bug fix release
Fork of MODSERIAL by
ChangeLog.c
- Committer:
- AjK
- Date:
- 2010-11-21
- Revision:
- 5:8365c4cf8f33
- Parent:
- 4:28de979b77cf
- Child:
- 6:c8f77fe1cc10
File content as of revision 5:8365c4cf8f33:
/* $Id:$ 1.5 - 21/11/2010 * Calling putc() (or any derived function that uses it like printf()) while inside an interrupt service routine can cause the system to lock up if the TX buffer is full. This is because bytes are only transferred from the TX buffer to the TX FIFO via the TX ISR. If we are, say in an RX ISR already, then the TX ISR will never trigger. The TX buffer stays full and there is never space to putc() the byte. So, while putc() blocks waiting for space it calls isr_tx() to ensure if TX FIFO space becomes available it will move bytes from the TX buffer to TX FIFO thus removing the blocking condition within putc(). 1.4 - 21/11/2010 * Removed all the new DMA code. I wish mbed.org had proper SVN versioning, I'm use to working in HEAD and BRANCHES after I've released a project. Getting bug reports in current releases while trying to dev new code is hard to manage without source control of some type! 1.3 - 21/11/2010 * Fixed a macro problem with txIsBusy() * Started adding code to use "block data" sending using DMA * Removed #include "IOMACROS.h" 1.2 - 21/11/2010 * Removed unsed variables from flushBuffer() * Fixed a bug where both RX AND TX fifos are cleared/reset when just TX OR RX should be cleared. * Fixed a bug that cleared IIR when in fact it should be left alone so that any pending interrupt after flush is handled. * Merged setBase() into init() as it wasn't required anywhere else. * Changed init() to enforce _uidx is set by Serial to define the _base address of the Uart in use. 1.1 - 20/11/2010 * Added this file * Removed cruft from GETC.cpp * "teh" should be "the", why do my fingers do that? 1.0 - 20/11/2010 * First release. */