TimeoutMSRemaining--;\r
}\r
\r
+/** Initializes the hardware and software associated with the V2 protocol command handling. */\r
+void V2Protocol_Init(void)\r
+{\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 managing the command timeout counter */\r
+ OCR0A = ((F_CPU / 64) / 1000);\r
+ TCCR0A = (1 << WGM01);\r
+ TCCR0B = ((1 << CS01) | (1 << CS00));\r
+ \r
+ V2Params_LoadNonVolatileParamValues();\r
+}\r
+\r
/** Master V2 Protocol packet handler, for received V2 Protocol packets from a connected host.\r
* This routine decodes the issued command and passes off the handling of the command to the\r
* appropriate function.\r
Endpoint_Write_Byte(CMD_SIGN_ON);\r
Endpoint_Write_Byte(STATUS_CMD_OK);\r
Endpoint_Write_Byte(sizeof(PROGRAMMER_ID) - 1);\r
- Endpoint_Write_Stream_LE(PROGRAMMER_ID, (sizeof(PROGRAMMER_ID) - 1));\r
+ Endpoint_Write_Stream_LE(PROGRAMMER_ID, (sizeof(PROGRAMMER_ID) - 1), NO_STREAM_CALLBACK);\r
Endpoint_ClearIN();\r
}\r
\r
*/\r
static void V2Protocol_LoadAddress(void)\r
{\r
- Endpoint_Read_Stream_BE(&CurrentAddress, sizeof(CurrentAddress));\r
+ Endpoint_Read_Stream_BE(&CurrentAddress, sizeof(CurrentAddress), NO_STREAM_CALLBACK);\r
\r
Endpoint_ClearOUT();\r
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);\r