Update Temperature board driver to be AVR32 compatible when the ADC peripheral driver...
[pub/USBasp.git] / LUFA / Drivers / Board / Temperature.c
index ea12bf7..09d7050 100644 (file)
@@ -47,14 +47,25 @@ int8_t Temperature_GetTemperature(void)
 {\r
        uint16_t Temp_ADC = ADC_GetChannelReading(ADC_REFERENCE_AVCC | ADC_RIGHT_ADJUSTED | TEMP_ADC_CHANNEL_MASK);\r
 \r
+       #if defined(__AVR32__)\r
+       if (Temp_ADC > Temperature_Lookup[0])\r
+         return TEMP_MIN_TEMP; \r
+\r
+       for (uint16_t Index = 0; Index < TEMP_TABLE_SIZE; Index++)\r
+       {\r
+               if (Temp_ADC > Temperature_Lookup[Index])\r
+                 return (Index + TEMP_TABLE_OFFSET);\r
+       }\r
+       #elif defined(__AVR__)\r
        if (Temp_ADC > pgm_read_word(&Temperature_Lookup[0]))\r
-         return TEMP_MIN_TEMP;\r
+         return TEMP_MIN_TEMP; \r
 \r
        for (uint16_t Index = 0; Index < TEMP_TABLE_SIZE; Index++)\r
        {\r
                if (Temp_ADC > pgm_read_word(&Temperature_Lookup[Index]))\r
                  return (Index + TEMP_TABLE_OFFSET);\r
        }\r
+       #endif\r
 \r
        return TEMP_MAX_TEMP;\r
 }\r