call Registers.clrIeRx();
call Registers.clrIeTx();
call Registers.clrIfgRx();
- call Registers.clrIfgTx();
/* Restore pins to their pre-configure state */
if (m_pins & PINS_RXD)
return FAIL;
m_sobuf = buf;
m_solen = len;
+ while (!call Registers.getIfgTx());
call Registers.setIeTx();
call Registers.setTxbuf(*m_sobuf);
m_slen = m_solen - 1;
}
if (m_slen == 0 && m_sobuf) {
call Registers.clrIeTx();
- call Registers.clrIfgTx();
m_sobuf = 0;
signal UartStream.sendDone(m_sobuf, m_solen, SUCCESS);
}