MODSERIAL with support for more devices

Dependents:   1D-Pong BMT-K9_encoder BMT-K9-Regelaar programma_filter ... more

Check the cookbook page for more information: https://mbed.org/cookbook/MODSERIAL

Did you add a device? Please send a pull request so we can keep everything in one library instead of many copies. In that case also send a PM, since currently mbed does not inform of new pull requests. I will then also add you to the developers of this library so you can do other changes directly.

Revision:
27:9c93ce7cb9d8
Parent:
18:21ef26402365
Child:
28:76793a84f9e5
--- a/ISR_TX.cpp	Mon Jun 10 19:06:21 2013 +0000
+++ b/ISR_TX.cpp	Thu Jul 11 13:34:53 2013 +0000
@@ -33,8 +33,8 @@
         return;
     }
     
-    while (! MODSERIAL_TX_BUFFER_EMPTY && MODSERIAL_THR_HAS_SPACE ) {
-        _THR = txc = (uint8_t)(buffer[TxIrq][buffer_out[TxIrq]]);
+    while (! MODSERIAL_TX_BUFFER_EMPTY && MODSERIAL_WRITABLE ) {
+        MODSERIAL_WRITE_REG = txc = (uint8_t)(buffer[TxIrq][buffer_out[TxIrq]]);
         buffer_count[TxIrq]--;   
         buffer_out[TxIrq]++;
         if (buffer_out[TxIrq] >= buffer_size[TxIrq]) {
@@ -44,7 +44,7 @@
     }
         
     if ( MODSERIAL_TX_BUFFER_EMPTY ) { 
-        _IER = 1;
+        DISABLE_TX_IRQ;
         _isr[TxEmpty].call(&this->callbackInfo);
     }        
 }