[Tinyos-contrib-commits] CVS: tinyos-1.x/contrib/handhelds/tos/platform/shimmer hardware.h, 1.6, 1.7

steve ayer ayer1 at users.sourceforge.net
Tue Jan 16 10:54:08 PST 2007


Update of /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/platform/shimmer
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8915

Modified Files:
	hardware.h 
Log Message:

finally found quiescent power burn problem.  turns out that accel_sel0
has to be pulled low, or else msp430 jumps from 3.7 to 65 ua at rest.

tosh_clr_accel_sel0_pin() added.


Index: hardware.h
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/platform/shimmer/hardware.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** hardware.h	3 Jan 2007 20:50:46 -0000	1.6
--- hardware.h	16 Jan 2007 18:54:04 -0000	1.7
***************
*** 110,115 ****
  TOSH_ASSIGN_PIN(UTXD0, 3, 4);
  TOSH_ASSIGN_PIN(URXD0, 3, 5);
! TOSH_ASSIGN_PIN(UTXD1, 3, 4);
! TOSH_ASSIGN_PIN(URXD1, 3, 5);
  
  // GIO pins
--- 110,115 ----
  TOSH_ASSIGN_PIN(UTXD0, 3, 4);
  TOSH_ASSIGN_PIN(URXD0, 3, 5);
! TOSH_ASSIGN_PIN(UTXD1, 3, 6);
! TOSH_ASSIGN_PIN(URXD1, 3, 7);
  
  // GIO pins
***************
*** 146,149 ****
--- 146,153 ----
      //RADIO PINS
    //CC2420 pins
+   TOSH_MAKE_RADIO_CSN_OUTPUT();
+   TOSH_SEL_RADIO_CSN_IOFUNC();
+   TOSH_SET_RADIO_CSN_PIN();
+ 
    TOSH_MAKE_RADIO_RESET_OUTPUT();
    TOSH_SEL_RADIO_RESET_IOFUNC();
***************
*** 154,161 ****
    TOSH_CLR_RADIO_1V8_EN_PIN();
  
-   TOSH_MAKE_RADIO_CSN_OUTPUT();
-   TOSH_SEL_RADIO_CSN_IOFUNC();
-   TOSH_SET_RADIO_CSN_PIN();
- 
    TOSH_MAKE_RADIO_CCA_INPUT();
    TOSH_MAKE_RADIO_FIFO_INPUT();
--- 158,161 ----
***************
*** 170,173 ****
--- 170,174 ----
    TOSH_SET_ONEWIRE_PWR_PIN();
  
+   TOSH_SEL_SD_CS_N_IOFUNC();
    TOSH_MAKE_SD_CS_N_OUTPUT();
    TOSH_SET_SD_CS_N_PIN();
***************
*** 194,203 ****
  
    // BSL Prog Pins tristate em
!   TOSH_MAKE_PROG_IN_INPUT();
!   TOSH_MAKE_PROG_OUT_INPUT();
  
-   // SD chipselect
-   TOSH_MAKE_SD_CS_N_OUTPUT();
-   TOSH_SEL_SD_CS_N_IOFUNC();
  
    // ADC lines
--- 195,205 ----
  
    // BSL Prog Pins tristate em
!   TOSH_MAKE_PROG_IN_OUTPUT();
!   TOSH_MAKE_PROG_OUT_OUTPUT();
!   TOSH_SEL_PROG_IN_IOFUNC();
!   TOSH_SEL_PROG_OUT_IOFUNC();
! 
! 
  
  
    // ADC lines
***************
*** 205,212 ****
--- 207,218 ----
    TOSH_MAKE_ADC_1_OUTPUT();
    TOSH_MAKE_ADC_2_OUTPUT();
+   TOSH_MAKE_ADC_6_OUTPUT();
+   TOSH_MAKE_ADC_7_OUTPUT();
  
    TOSH_SEL_ADC_0_IOFUNC();
    TOSH_SEL_ADC_1_IOFUNC();
    TOSH_SEL_ADC_2_IOFUNC();
+   TOSH_SEL_ADC_6_IOFUNC();
+   TOSH_SEL_ADC_7_IOFUNC();
    
    TOSH_MAKE_ADC_ACCELZ_INPUT();
***************
*** 217,220 ****
--- 223,227 ----
    TOSH_SEL_ADC_ACCELX_MODFUNC();
  
+   
    TOSH_SEL_ROSC_IOFUNC();
    TOSH_MAKE_ROSC_INPUT();
***************
*** 229,232 ****
--- 236,240 ----
    // ftdi/gio pins.  Unused for now so we do not set directionality or function
  
+ 
    // 1-wire function
    TOSH_MAKE_ONEWIRE_PWR_OUTPUT();
***************
*** 235,247 ****
  
    // Accelerometer pin definitions
-   TOSH_MAKE_ACCEL_SEL0_OUTPUT();
-   TOSH_MAKE_ACCEL_SEL1_OUTPUT();
-   TOSH_MAKE_ACCEL_SLEEP_N_OUTPUT();
-   
    TOSH_SEL_ACCEL_SEL0_IOFUNC();
    TOSH_SEL_ACCEL_SEL1_IOFUNC();
    TOSH_SEL_ACCEL_SLEEP_N_IOFUNC();
    
    TOSH_CLR_ACCEL_SLEEP_N_PIN();
  }
  
--- 243,279 ----
  
    // Accelerometer pin definitions
    TOSH_SEL_ACCEL_SEL0_IOFUNC();
    TOSH_SEL_ACCEL_SEL1_IOFUNC();
    TOSH_SEL_ACCEL_SLEEP_N_IOFUNC();
    
+   TOSH_MAKE_ACCEL_SEL0_OUTPUT();
+   TOSH_MAKE_ACCEL_SEL1_OUTPUT();
+   TOSH_MAKE_ACCEL_SLEEP_N_OUTPUT();
+ 
+   /*
+    * unless the accel_sel0 pin is cleared, 
+    * a severe quiescent power hit occurs on the msp430
+    * we go from 3.7 ua to 65.1 ua when asleep!
+   TOSH_CLR_ACCEL_SEL0_PIN();
+   TOSH_CLR_ACCEL_SEL1_PIN();
    TOSH_CLR_ACCEL_SLEEP_N_PIN();
+ 
+ 
+   // idle expansion header pins
+   TOSH_MAKE_SER0_CTS_OUTPUT();
+   TOSH_SEL_SER0_CTS_IOFUNC();
+   TOSH_MAKE_SER0_RTS_OUTPUT();
+   TOSH_SEL_SER0_RTS_IOFUNC();
+   TOSH_MAKE_GIO0_OUTPUT();
+   TOSH_SEL_GIO0_IOFUNC();
+   TOSH_MAKE_GIO1_OUTPUT();
+   TOSH_SEL_GIO1_IOFUNC();
+   TOSH_MAKE_UTXD0_OUTPUT();
+   TOSH_SEL_UTXD0_IOFUNC();
+   TOSH_MAKE_URXD0_OUTPUT();
+   TOSH_SEL_URXD0_IOFUNC();
+   TOSH_MAKE_RADIO_VREF_OUTPUT();
+   TOSH_SEL_RADIO_VREF_IOFUNC();
+ 
  }
  



More information about the Tinyos-contrib-commits mailing list