components
//Change components below as desired
Tda5250RadioC as Radio, //The actual Tda5250 radio over which data is receives/transmitted
- UartPhyC as UartPhy, //The UartPhy turns Bits into Bytes
+#ifdef PHY_MANCHESTER
+ UartManchPhyC as UartPhy,
+#else
+ Uart4b6bPhyC as UartPhy, //The UartPhy turns Bits into Bytes
+#endif
PacketSerializerP as PacketSerializer, //The PacketSerializer turns Bytes into Packets
+#ifdef MAC_REDMAC
+ RedMacC as Mac, //The MAC protocol to use
+#elif defined(MAC_SPECKMACD)
+ SpeckMacDC as Mac, //The MAC protocol to use
+#else
CsmaMacC as Mac, //The MAC protocol to use
- //SyncSampleMacC as Mac,
+#endif
LinkLayerC as Llc; //The Link Layer Control module to use
//Don't change wirings below this point, just change which components
- //They are compposed of in the list above
+ //They are compposed of in the list above
- components MainC;
- MainC.SoftwareInit -> PacketSerializer;
-
SplitControl = Llc;
Llc.MacSplitControl -> Mac.SplitControl;
Llc.RadioSplitControl -> Radio.SplitControl;
Send = Llc.Send;
Receive = Llc.Receive;
PacketAcknowledgements = Llc;
- Packet = PacketSerializer;
+ Packet = Mac;
Llc.SendDown->Mac.MacSend;
Llc.ReceiveLower->Mac.MacReceive;
- Llc.Packet->PacketSerializer.Packet;
+ Llc.Packet->Mac.Packet;
+ Mac.SubPacket->PacketSerializer.Packet;
Mac.PacketSend->PacketSerializer.PhySend;
Mac.PacketReceive->PacketSerializer.PhyReceive;
Mac.Tda5250Control->Radio;
Mac.UartPhyControl -> UartPhy;
-
+
+ Mac.RadioTimeStamping -> PacketSerializer.RadioTimeStamping;
PacketSerializer.RadioByteComm -> UartPhy.SerializerRadioByteComm;
PacketSerializer.PhyPacketTx -> UartPhy.PhyPacketTx;
PacketSerializer.PhyPacketRx -> UartPhy.PhyPacketRx;
UartPhy.RadioByteComm -> Radio.RadioByteComm;
+
+#ifndef RADIO_UART_VCO
+ components SmclkManagerC;
+#endif
+
+#ifdef PACKETSERIALIZER_DEBUG
+ components new SerialDebugC() as SD;
+ PacketSerializer.SerialDebug -> SD;
+#endif
+
}