]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/sensorboards/mts300/MagConfigP.nc
Change to follow TEP 109 .
[tinyos-2.x.git] / tos / sensorboards / mts300 / MagConfigP.nc
index 6f44f72f14cc8fc28f6d47052bb06e19097ec01a..411fb95d041c89736280710a45795399a7a048f4 100644 (file)
@@ -11,7 +11,7 @@
  * Internal component for basicsb photodiode. Arbitrates access to the photo\r
  * diode and automatically turns it on or off based on user requests.\r
  *\r
- * @author David Gay\r
+ * @author Alif Chen\r
  */\r
 \r
 #include "mts300.h"\r
 \r
 configuration MagConfigP {\r
   provides {\r
-    interface Init;\r
-    interface StdControl;\r
     interface Mag;\r
-\r
+    interface Resource[uint8_t client];\r
     interface Atm128AdcConfig as ConfigX;\r
     interface Atm128AdcConfig as ConfigY;\r
-    interface ResourceConfigure as ResourceX;\r
-    interface ResourceConfigure as ResourceY;\r
   }\r
 }\r
 implementation {\r
-  components MagP, MicaBusC, new Atm128I2CMasterC() as I2CPot;\r
+  components MagP, MicaBusC, new Atm128I2CMasterC() as I2CPot,\r
+               new TimerMilliC() as WarmupTimer,\r
+    new RoundRobinArbiterC(UQ_MAG_RESOURCE) as Arbiter,\r
+    new SplitControlPowerManagerC() as PowerManager;\r
 \r
-       Init = MagP;\r
-       StdControl = MagP;\r
        Mag = MagP;\r
 \r
+  Resource = Arbiter;\r
   ConfigX = MagP.ConfigX;\r
   ConfigY = MagP.ConfigY;\r
-  ResourceX = MagP.ResourceX;\r
-  ResourceY = MagP.ResourceY;\r
+\r
+  PowerManager.ResourceDefaultOwner -> Arbiter;\r
+  PowerManager.ArbiterInfo -> Arbiter;\r
+  PowerManager.SplitControl -> MagP;\r
 \r
   MagP.I2CPacket -> I2CPot;\r
-  MagP.Resource -> I2CPot;\r
+  MagP.I2CResource -> I2CPot;\r
 \r
+  MagP.Timer -> WarmupTimer;\r
   MagP.MagPower -> MicaBusC.PW5;\r
   MagP.MagAdcX -> MicaBusC.Adc6;\r
   MagP.MagAdcY -> MicaBusC.Adc5;\r