]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/chips/rf230/TimeSyncMessageC.nc
IRIS: reworked the time sync implementation
[tinyos-2.x.git] / tos / chips / rf230 / TimeSyncMessageC.nc
index 79ad086717be82b771899f9959d22b0dbe8978fc..3f23bdb5a447178b72220ee145ca2490a2700f79 100644 (file)
 
 #include <Timer.h>
 #include <AM.h>
+#include <HplRF230.h>
 
 configuration TimeSyncMessageC
 {
        provides
        {
-               interface TimeSyncSend<TMicro> as TimeSyncSendMicro[am_id_t id];
-               interface TimeSyncPacket<TMicro> as TimeSyncPacketMicro;
-//             interface LocalTime<TMicro> as LocalTimeMicro;
-
-               interface TimeSyncSend<TMilli> as TimeSyncSendMilli[am_id_t id];
-               interface TimeSyncPacket<TMilli> as TimeSyncPacketMilli;
-               interface LocalTime<TMilli> as LocalTimeMilli;
-
                interface SplitControl;
+
                interface Receive[uint8_t id];
                interface Receive as Snoop[am_id_t id];
                interface Packet;
                interface AMPacket;
-               interface PacketAcknowledgements;
+
+               interface TimeSyncAMSend<TRF230, uint32_t> as TimeSyncAMSendRadio[am_id_t id];
+               interface TimeSyncPacket<TRF230, uint32_t> as TimeSyncPacketRadio;
+
+               interface TimeSyncAMSend<TMilli, uint32_t> as TimeSyncAMSendMilli[am_id_t id];
+               interface TimeSyncPacket<TMilli, uint32_t> as TimeSyncPacketMilli;
        }
 }
 
 implementation
 {
-       components TimeSyncMessageP, ActiveMessageC, LocalTimeMilliC;
+       components TimeSyncMessageP, RF230ActiveMessageC, LocalTimeMilliC, LocalTimeMicroC as LocalTimeRadioC, RF230PacketC;
 
-       TimeSyncSendMicro = TimeSyncMessageP;
-       TimeSyncPacketMicro = TimeSyncMessageP;
-//     LocalTimeMicro = LocalTimeMicroC;
+       TimeSyncAMSendRadio = TimeSyncMessageP;
+       TimeSyncPacketRadio = TimeSyncMessageP;
 
-       TimeSyncSendMilli = TimeSyncMessageP;
+       TimeSyncAMSendMilli = TimeSyncMessageP;
        TimeSyncPacketMilli = TimeSyncMessageP;
-       LocalTimeMilli = LocalTimeMilliC;
 
        Packet = TimeSyncMessageP;
-       TimeSyncMessageP.SubSend -> ActiveMessageC.AMSend;
-       TimeSyncMessageP.SubPacket -> ActiveMessageC.Packet;
-       TimeSyncMessageP.PacketTimeStamp -> ActiveMessageC;
+       TimeSyncMessageP.SubSend -> RF230ActiveMessageC.AMSend;
+       TimeSyncMessageP.SubPacket -> RF230ActiveMessageC.Packet;
 
+       TimeSyncMessageP.PacketTimeStampRadio -> RF230ActiveMessageC;
+       TimeSyncMessageP.PacketTimeStampMilli -> RF230ActiveMessageC;
+       TimeSyncMessageP.LocalTimeRadio -> LocalTimeRadioC;
        TimeSyncMessageP.LocalTimeMilli -> LocalTimeMilliC;
 
-       TimeSyncMessageP.PacketLastTouch -> ActiveMessageC;
+       TimeSyncMessageP.PacketTimeSyncOffset -> RF230PacketC.PacketTimeSyncOffset;
 
-       SplitControl = ActiveMessageC;
-       Receive = ActiveMessageC.Receive;
-       Snoop = ActiveMessageC.Snoop;
-       AMPacket = ActiveMessageC;
-       PacketAcknowledgements = ActiveMessageC;
+       SplitControl = RF230ActiveMessageC;
+       Receive = RF230ActiveMessageC.Receive;
+       Snoop = RF230ActiveMessageC.Snoop;
+       AMPacket = RF230ActiveMessageC;
 }