Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: rosserial_mbed_lib
Fork of MODSERIAL by
Diff: ChangeLog.c
- Revision:
- 5:8365c4cf8f33
- Parent:
- 4:28de979b77cf
- Child:
- 6:c8f77fe1cc10
--- a/ChangeLog.c Sun Nov 21 14:44:02 2010 +0000
+++ b/ChangeLog.c Sun Nov 21 16:08:36 2010 +0000
@@ -1,5 +1,18 @@
/* $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
