unsigned int i = 0;
unsigned int pressure[];

void GetPressure(void)
{
  // Turn on VRef power
  P4OUT |= 0x20;                                    // Logic 1 to P4.5 (3.3SW)
  P2OUT &= ~0x80;                                   // Logic 0 to P2.7 (VRef)
  // Turn on pressure power
  P1OUT |= 0x0A;                                    // Logic 1 to P1.1 (5SW) and P1.3 (Pressure)
  
  P6SEL |= 0x04;                            // Enable A/D channel A2
  ADC12CTL0 = ADC12ON+SHT0_0;               // Turn on ADC12, set sampling time
  ADC12CTL1 = SHP;                          // Use sampling timer
  ADC12MCTL0 = SREF_2;                      // Vr+ = VeREF+ (external)
  ADC12CTL0 |= ENC;                         // Enable conversions

  ADC12CTL0 |= ADC12SC;                         // Start conversion
  while (ADC12CTL1 & ADC12BUSY == ADC12BUSY)    // If ADC is busy do nothing
  {
  }
  i++;
  pressure[] = ADC12MEM0;                      // Store result
  while (i < 10)
  {
    ADC12CTL0 |= ADC12SC;                       // Start conversion
    while (ADC12CTL1 & ADC12BUSY == ADC12BUSY)  // If ADC is busy do nothing
    {
    }
    pressure[] = pressure[] + ADC12MEM0;  // Add new result to last result
    i++;
  }
  pressure[] = pressure[] / 10;           // Get average of ten measurements
  i = 0;
  
  // Turn off pressure power
  P1OUT &= ~0x0A;                                   // Logic 0 to P1.1 and P1.3
  // Turn off VRef power
  P2OUT |= 0x80;                                    // Logic 1 to P2.7
  P4OUT &= ~0x20;                                   // Logic 0 to P4.5
}