aboutsummaryrefslogtreecommitdiff
path: root/Projects/Incomplete/AVRISP/Lib/V2Protocol.h
diff options
context:
space:
mode:
authorDean Camera <[email protected]>2009-08-23 04:01:49 +0000
committerDean Camera <[email protected]>2009-08-23 04:01:49 +0000
commit1e8df8951a3335e4b45ad0c25a82df3d90d785f3 (patch)
treef331b6886dbc830352574d94d7693b9d73af939c /Projects/Incomplete/AVRISP/Lib/V2Protocol.h
parentd540276b448ff70bd70f54b1ce015cbb951c76c0 (diff)
downloadqmk_firmware-1e8df8951a3335e4b45ad0c25a82df3d90d785f3.tar.gz
qmk_firmware-1e8df8951a3335e4b45ad0c25a82df3d90d785f3.zip
Added V2Protocol handlers to the AVRISP project to enter/exit programming mode, and read/write fuses, lockbits, OSCCAL and Signature bytes.
Added ShutDown functions for all hardware peripheral drivers, so that peripherals can be turned off after use.
Diffstat (limited to 'Projects/Incomplete/AVRISP/Lib/V2Protocol.h')
-rw-r--r--Projects/Incomplete/AVRISP/Lib/V2Protocol.h26
1 files changed, 16 insertions, 10 deletions
diff --git a/Projects/Incomplete/AVRISP/Lib/V2Protocol.h b/Projects/Incomplete/AVRISP/Lib/V2Protocol.h
index 5283f1986f..116df8d890 100644
--- a/Projects/Incomplete/AVRISP/Lib/V2Protocol.h
+++ b/Projects/Incomplete/AVRISP/Lib/V2Protocol.h
@@ -38,6 +38,7 @@
/* Includes: */
#include <avr/io.h>
+ #include <util/delay.h>
#include <LUFA/Drivers/USB/USB.h>
#include <LUFA/Drivers/Peripheral/SPI.h>
@@ -47,23 +48,28 @@
#include "V2ProtocolParams.h"
/* Macros: */
- #define PROGRAMMER_ID "AVRISP_MK2"
- #define PROGRAMMER_ID_LEN (sizeof(PROGRAMMER_ID) - 1)
-
- #define MAX_SPI_SETTINGS 7
+ #define PROGRAMMER_ID "AVRISP_MK2"
+ #define TARGET_BUST_TIMEOUT_MS 100
/* Function Prototypes: */
void V2Protocol_ProcessCommand(void);
#if defined(INCLUDE_FROM_V2PROTOCOL_C)
- static void V2Protocol_ReconfigureSPI(void);
+ static uint8_t V2Protocol_GetSPIPrescalerMask(void);
static void V2Protocol_ChangeTargetResetLine(bool ResetTarget);
+ static void V2Protocol_DelayMS(uint8_t MS);
+ static uint8_t V2Protocol_WaitWhileTargetBusy(void);
- static void V2Protocol_Command_Unknown(uint8_t V2Command);
- static void V2Protocol_Command_SignOn(void);
- static void V2Protocol_Command_GetSetParam(uint8_t V2Command);
- static void V2Protocol_Command_LoadAddress(void);
- static void V2Protocol_Command_SPIMulti(void);
+ static void V2Protocol_Command_Unknown(uint8_t V2Command);
+ static void V2Protocol_Command_SignOn(void);
+ static void V2Protocol_Command_GetSetParam(uint8_t V2Command);
+ static void V2Protocol_Command_LoadAddress(void);
+ static void V2Protocol_Command_EnterISPMode(void);
+ static void V2Protocol_Command_LeaveISPMode(void);
+ static void V2Protocol_Command_ChipErase(void);
+ static void V2Protocol_Command_ReadFuseLockSigOSCCAL(uint8_t V2Command);
+ static void V2Protocol_Command_WriteFuseLock(uint8_t V2Command);
+ static void V2Protocol_Command_SPIMulti(void);
#endif
#endif