ENABLE_ADC();
/* WaitForAdcBusy(); */
- while (ADC12CTL1 & ADC12BUSY);
+ while (ADC12CTL1 & ADC12BUSY)
+ nop();
- /* Convert the ADC count for the battery input into a voltage
+ /* Convert the ADC count for the battery input into a voltage
* ADC12MEM1: Counts Battery Voltage in ADC counts
* Result: Battery voltage in millivolts */
BATTERY_SENSE_DISABLE();
- return (unsigned int)(CONVERSION_FACTOR_BATTERY * (double)ADC12MEM1);
+ return (unsigned int)(CONVERSION_FACTOR_BATTERY * (double)ADC12MEM1);
}
-unsigned char mw_get_battery_percentage_from_val(unsigned int BattVal)
+uint8_t mw_get_battery_percentage_from_val(unsigned int BattVal)
{
if (BattVal > BATTERY_FULL_LEVEL)
BattVal = BATTERY_FULL_LEVEL;
return (unsigned char)BattVal;
}
+unsigned int mw_get_amblight_adc_val(void)
+{
+ LIGHT_SENSE_ENABLE();
+
+ CLEAR_START_ADDR();
+ ADC12CTL1 |= ADC12CSTARTADD_2;
+ ENABLE_ADC();
+
+ /* WaitForAdcBusy(); */
+ while (ADC12CTL1 & ADC12BUSY)
+ nop();
+
+ LIGHT_SENSE_DISABLE();
+
+ return ADC12MEM2;
+}
+