*/\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
{\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
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