projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add extra LUFA TAR archive export exclusions.
[pub/USBasp.git]
/
Projects
/
AVRISP-MKII
/
Lib
/
V2Protocol.c
diff --git
a/Projects/AVRISP-MKII/Lib/V2Protocol.c
b/Projects/AVRISP-MKII/Lib/V2Protocol.c
index
f6ea477
..
f485810
100644
(file)
--- a/
Projects/AVRISP-MKII/Lib/V2Protocol.c
+++ b/
Projects/AVRISP-MKII/Lib/V2Protocol.c
@@
-1,13
+1,13
@@
/*
LUFA Library
/*
LUFA Library
- Copyright (C) Dean Camera, 201
1
.
+ Copyright (C) Dean Camera, 201
2
.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
- Copyright 201
1
Dean Camera (dean [at] fourwalledcubicle [dot] com)
+ Copyright 201
2
Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@
-48,25
+48,27
@@
ISR(TIMER0_COMPA_vect, ISR_NOBLOCK)
{
if (TimeoutTicksRemaining)
TimeoutTicksRemaining--;
{
if (TimeoutTicksRemaining)
TimeoutTicksRemaining--;
+ else
+ TCCR0B = 0;
}
}
-/** Initiali
s
es the hardware and software associated with the V2 protocol command handling. */
+/** Initiali
z
es the hardware and software associated with the V2 protocol command handling. */
void V2Protocol_Init(void)
{
void V2Protocol_Init(void)
{
- #if defined(ADC)
+ #if defined(ADC)
&& !defined(NO_VTARGET_DETECT)
/* Initialize the ADC converter for VTARGET level detection on supported AVR models */
ADC_Init(ADC_FREE_RUNNING | ADC_PRESCALE_128);
ADC_SetupChannel(VTARGET_ADC_CHANNEL);
/* Initialize the ADC converter for VTARGET level detection on supported AVR models */
ADC_Init(ADC_FREE_RUNNING | ADC_PRESCALE_128);
ADC_SetupChannel(VTARGET_ADC_CHANNEL);
- ADC_StartReading(
ADC_REFERENCE_AVCC
| ADC_RIGHT_ADJUSTED | VTARGET_ADC_CHANNEL_MASK);
+ ADC_StartReading(
VTARGET_REF_MASK
| ADC_RIGHT_ADJUSTED | VTARGET_ADC_CHANNEL_MASK);
#endif
#endif
- /* Timeout timer initialization (10ms period) */
+ /* Timeout timer initialization (
~
10ms period) */
OCR0A = (((F_CPU / 1024) / 100) - 1);
TCCR0A = (1 << WGM01);
TIMSK0 = (1 << OCIE0A);
V2Params_LoadNonVolatileParamValues();
OCR0A = (((F_CPU / 1024) / 100) - 1);
TCCR0A = (1 << WGM01);
TIMSK0 = (1 << OCIE0A);
V2Params_LoadNonVolatileParamValues();
-
+
#if defined(ENABLE_ISP_PROTOCOL)
ISPTarget_ConfigureRescueClock();
#endif
#if defined(ENABLE_ISP_PROTOCOL)
ISPTarget_ConfigureRescueClock();
#endif
@@
-78,11
+80,11
@@
void V2Protocol_Init(void)
*/
void V2Protocol_ProcessCommand(void)
{
*/
void V2Protocol_ProcessCommand(void)
{
- uint8_t V2Command = Endpoint_Read_
Byte
();
+ uint8_t V2Command = Endpoint_Read_
8
();
- /*
Start the timeout management
timer */
+ /*
Reset timeout counter duration and start the
timer */
TimeoutTicksRemaining = COMMAND_TIMEOUT_TICKS;
TimeoutTicksRemaining = COMMAND_TIMEOUT_TICKS;
- TCCR0B = ((1 << CS02) | (1 << CS00));
+ TCCR0B = ((1 << CS02) | (1 << CS00));
switch (V2Command)
{
switch (V2Command)
{
@@
-170,8
+172,8
@@
static void V2Protocol_UnknownCommand(const uint8_t V2Command)
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
- Endpoint_Write_
Byte
(V2Command);
- Endpoint_Write_
Byte
(STATUS_CMD_UNKNOWN);
+ Endpoint_Write_
8
(V2Command);
+ Endpoint_Write_
8
(STATUS_CMD_UNKNOWN);
Endpoint_ClearIN();
}
Endpoint_ClearIN();
}
@@
-182,9
+184,9
@@
static void V2Protocol_SignOn(void)
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
- Endpoint_Write_
Byte
(CMD_SIGN_ON);
- Endpoint_Write_
Byte
(STATUS_CMD_OK);
- Endpoint_Write_
Byte
(sizeof(PROGRAMMER_ID) - 1);
+ Endpoint_Write_
8
(CMD_SIGN_ON);
+ Endpoint_Write_
8
(STATUS_CMD_OK);
+ Endpoint_Write_
8
(sizeof(PROGRAMMER_ID) - 1);
Endpoint_Write_Stream_LE(PROGRAMMER_ID, (sizeof(PROGRAMMER_ID) - 1), NULL);
Endpoint_ClearIN();
}
Endpoint_Write_Stream_LE(PROGRAMMER_ID, (sizeof(PROGRAMMER_ID) - 1), NULL);
Endpoint_ClearIN();
}
@@
-198,8
+200,8
@@
static void V2Protocol_ResetProtection(void)
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
- Endpoint_Write_
Byte
(CMD_RESET_PROTECTION);
- Endpoint_Write_
Byte
(STATUS_CMD_OK);
+ Endpoint_Write_
8
(CMD_RESET_PROTECTION);
+ Endpoint_Write_
8
(STATUS_CMD_OK);
Endpoint_ClearIN();
}
Endpoint_ClearIN();
}
@@
-211,33
+213,33
@@
static void V2Protocol_ResetProtection(void)
*/
static void V2Protocol_GetSetParam(const uint8_t V2Command)
{
*/
static void V2Protocol_GetSetParam(const uint8_t V2Command)
{
- uint8_t ParamID = Endpoint_Read_
Byte
();
+ uint8_t ParamID = Endpoint_Read_
8
();
uint8_t ParamValue;
if (V2Command == CMD_SET_PARAMETER)
uint8_t ParamValue;
if (V2Command == CMD_SET_PARAMETER)
- ParamValue = Endpoint_Read_
Byte
();
+ ParamValue = Endpoint_Read_
8
();
Endpoint_ClearOUT();
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
Endpoint_ClearOUT();
Endpoint_SelectEndpoint(AVRISP_DATA_IN_EPNUM);
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
- Endpoint_Write_
Byte
(V2Command);
+ Endpoint_Write_
8
(V2Command);
uint8_t ParamPrivs = V2Params_GetParameterPrivileges(ParamID);
if ((V2Command == CMD_SET_PARAMETER) && (ParamPrivs & PARAM_PRIV_WRITE))
{
uint8_t ParamPrivs = V2Params_GetParameterPrivileges(ParamID);
if ((V2Command == CMD_SET_PARAMETER) && (ParamPrivs & PARAM_PRIV_WRITE))
{
- Endpoint_Write_
Byte
(STATUS_CMD_OK);
+ Endpoint_Write_
8
(STATUS_CMD_OK);
V2Params_SetParameterValue(ParamID, ParamValue);
}
else if ((V2Command == CMD_GET_PARAMETER) && (ParamPrivs & PARAM_PRIV_READ))
{
V2Params_SetParameterValue(ParamID, ParamValue);
}
else if ((V2Command == CMD_GET_PARAMETER) && (ParamPrivs & PARAM_PRIV_READ))
{
- Endpoint_Write_
Byte
(STATUS_CMD_OK);
- Endpoint_Write_
Byte
(V2Params_GetParameterValue(ParamID));
+ Endpoint_Write_
8
(STATUS_CMD_OK);
+ Endpoint_Write_
8
(V2Params_GetParameterValue(ParamID));
}
else
{
}
else
{
- Endpoint_Write_
Byte
(STATUS_CMD_FAILED);
+ Endpoint_Write_
8
(STATUS_CMD_FAILED);
}
Endpoint_ClearIN();
}
Endpoint_ClearIN();
@@
-258,8
+260,8
@@
static void V2Protocol_LoadAddress(void)
if (CurrentAddress & (1UL << 31))
MustLoadExtendedAddress = true;
if (CurrentAddress & (1UL << 31))
MustLoadExtendedAddress = true;
- Endpoint_Write_
Byte
(CMD_LOAD_ADDRESS);
- Endpoint_Write_
Byte
(STATUS_CMD_OK);
+ Endpoint_Write_
8
(CMD_LOAD_ADDRESS);
+ Endpoint_Write_
8
(STATUS_CMD_OK);
Endpoint_ClearIN();
}
Endpoint_ClearIN();
}