Remove type definitions of the keyboard and mouse boot protocol report layouts from...
[pub/USBasp.git] / Projects / AVRISP / AVRISP.c
index f14b654..016d74c 100644 (file)
@@ -35,8 +35,7 @@
  */\r
 \r
 // TODO: Add in software SPI for lower programming speeds below 125KHz\r
-// TODO: Add in VTARGET detection\r
-// TODO: Add reversed target connector checks\r
+// TODO: Add reversed/shorted target connector checks\r
 \r
 #include "AVRISP.h"\r
 \r
@@ -47,14 +46,16 @@ int main(void)
 {\r
        SetupHardware();\r
 \r
-       V2Params_LoadEEPROMParamValues();\r
+       V2Params_LoadNonVolatileParamValues();\r
        \r
        LEDs_SetAllLEDs(LEDMASK_USB_NOTREADY);\r
 \r
        for (;;)\r
        {
-               Process_AVRISP_Commands();
-\r
+               Process_AVRISP_Commands();\r
+               \r
+               V2Params_UpdateParamValues();\r
+               \r
                USB_USBTask();\r
        }\r
 }\r
@@ -73,7 +74,14 @@ void SetupHardware(void)
        LEDs_Init();\r
        USB_Init();\r
 \r
-       /* Millisecond timer initialization for timeout checking */\r
+       #if defined(ADC)\r
+       /* Initialize the ADC converter for VTARGET level detection on supported AVR models */\r
+       ADC_Init(ADC_FREE_RUNNING | ADC_PRESCALE_128);\r
+       ADC_SetupChannel(VTARGET_ADC_CHANNEL);\r
+       ADC_StartReading(VTARGET_ADC_CHANNEL | ADC_RIGHT_ADJUSTED | ADC_REFERENCE_AVCC);\r
+       #endif\r
+       \r
+       /* Millisecond timer initialization for timeouts and delays */\r
        OCR0A  = ((F_CPU / 64) / 1000);\r
        TCCR0A = (1 << WGM01);\r
        TCCR0B = ((1 << CS01) | (1 << CS00));\r