wrapping tr1001 custom data byte delivery in MspMoteTimeEvent

This commit is contained in:
fros4943 2010-02-03 19:30:32 +00:00
parent cb34e9760f
commit b832479e34

View file

@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE. * SUCH DAMAGE.
* *
* $Id: TR1001Radio.java,v 1.18 2010/02/03 19:15:56 fros4943 Exp $ * $Id: TR1001Radio.java,v 1.19 2010/02/03 19:30:32 fros4943 Exp $
*/ */
package se.sics.cooja.mspmote.interfaces; package se.sics.cooja.mspmote.interfaces;
@ -183,14 +183,21 @@ public class TR1001Radio extends Radio implements USARTListener, CustomDataRadio
receivedByte = isInterfered ? CORRUPTED_DATA : (Byte) data; receivedByte = isInterfered ? CORRUPTED_DATA : (Byte) data;
final byte finalByte = receivedByte;
mote.getSimulation().scheduleEvent(new MspMoteTimeEvent(mote, 0) {
public void execute(long t) {
super.execute(t);
if (radioUSART.isReceiveFlagCleared()) { if (radioUSART.isReceiveFlagCleared()) {
/*logger.info("----- TR1001 RECEIVED BYTE -----");*/ /*logger.info("----- TR1001 RECEIVED BYTE -----");*/
radioUSART.byteReceived(receivedByte); radioUSART.byteReceived(finalByte);
} else { } else {
logger.warn(mote.getSimulation().getSimulationTime() + ": ----- TR1001 RECEIVED BYTE DROPPED -----"); logger.warn(mote.getSimulation().getSimulationTime() + ": ----- TR1001 RECEIVED BYTE DROPPED -----");
} }
mote.requestImmediateWakeup(); mote.requestImmediateWakeup();
} }
}, mote.getSimulation().getSimulationTime());
}
/* USART listener support */ /* USART listener support */
public void dataReceived(USART source, int data) { public void dataReceived(USART source, int data) {