forked from mfulz_github/qmk_firmware
Combine AVRISP project TPI and PDI lib directories - these protocols use the same underlying XPROG wrapper for the host-to-programmer command wrapping.
This commit is contained in:
parent
26bc1f3cfd
commit
ce044844ea
File diff suppressed because one or more lines are too long
|
@ -17,7 +17,6 @@
|
|||
* -# Add ability to get number of bytes not written with pipe/endpoint write routines after an error
|
||||
* -# Add standardized descriptor names to class driver structures
|
||||
* -# Correct mishandling of error cases in Mass Storage demos
|
||||
* -# Add TPI programming support to the AVRISP project
|
||||
* - Documentation/Support
|
||||
* -# Remake AVRStudio project files
|
||||
* -# Add detailed overviews of how each demo works
|
||||
|
|
|
@ -70,6 +70,7 @@ void SetupHardware(void)
|
|||
/* Hardware Initialization */
|
||||
LEDs_Init();
|
||||
USB_Init();
|
||||
Serial_Init(9600, true);
|
||||
|
||||
#if defined(ADC)
|
||||
/* Initialize the ADC converter for VTARGET level detection on supported AVR models */
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#include "Descriptors.h"
|
||||
|
||||
#include <LUFA/Version.h>
|
||||
#include <LUFA/Drivers/Peripheral/Serial.h>
|
||||
#include <LUFA/Drivers/Board/LEDs.h>
|
||||
#include <LUFA/Drivers/USB/USB.h>
|
||||
|
||||
|
|
|
@ -162,7 +162,7 @@
|
|||
* <tr>
|
||||
* <td><b>Programmer Pin:</b></td>
|
||||
* <td><b>Target Device Pin:</b></td>
|
||||
* <td><b>PDI 6 Pin Layout:</b></td>
|
||||
* <td><b>TPI 6 Pin Layout:</b></td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td>MISO</td>
|
||||
|
|
|
@ -50,7 +50,9 @@ bool MustSetAddress;
|
|||
void V2Protocol_ProcessCommand(void)
|
||||
{
|
||||
uint8_t V2Command = Endpoint_Read_Byte();
|
||||
|
||||
|
||||
Serial_TxByte(V2Command);
|
||||
|
||||
switch (V2Command)
|
||||
{
|
||||
case CMD_SIGN_ON:
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
/* Includes: */
|
||||
#include <LUFA/Drivers/USB/USB.h>
|
||||
#include <LUFA/Drivers/Peripheral/SPI.h>
|
||||
#include <LUFA/Drivers/Peripheral/Serial.h>
|
||||
|
||||
#include "../Descriptors.h"
|
||||
#include "V2ProtocolConstants.h"
|
||||
|
|
|
@ -58,6 +58,8 @@ void PDIProtocol_XPROG_SetMode(void)
|
|||
Endpoint_ClearOUT();
|
||||
Endpoint_SetEndpointDirection(ENDPOINT_DIR_IN);
|
||||
|
||||
Serial_TxByte(SetMode_XPROG_Params.Protocol);
|
||||
|
||||
Endpoint_Write_Byte(CMD_XPROG_SETMODE);
|
||||
Endpoint_Write_Byte((SetMode_XPROG_Params.Protocol == XPRG_PROTOCOL_PDI) ? STATUS_CMD_OK : STATUS_CMD_FAILED);
|
||||
Endpoint_ClearIN();
|
|
@ -100,6 +100,7 @@
|
|||
|
||||
#define XPRG_PROTOCOL_PDI 0x00
|
||||
#define XPRG_PROTOCOL_JTAG 0x01
|
||||
#define XPRG_PROTOCOL_TPI 0x02
|
||||
|
||||
#define XPRG_PAGEMODE_WRITE (1 << 1)
|
||||
#define XPRG_PAGEMODE_ERASE (1 << 0)
|
|
@ -320,7 +320,7 @@ bool TPITarget_WaitWhileNVMBusBusy(void)
|
|||
/* Poll the STATUS register to check to see if NVM access has been enabled */
|
||||
while (TimeoutMS)
|
||||
{
|
||||
/* Send the LDCS command to read the TPI STATUS register to see the NVM bus is active */
|
||||
/* Send the SLDCS command to read the TPI STATUS register to see the NVM bus is active */
|
||||
TPITarget_SendByte(TPI_CMD_SLDCS | TPI_STATUS_REG);
|
||||
if (TPITarget_ReceiveByte() & TPI_STATUS_NVM)
|
||||
return true;
|
|
@ -131,12 +131,13 @@ SRC = $(TARGET).c \
|
|||
Lib/V2ProtocolParams.c \
|
||||
Lib/ISP/ISPProtocol.c \
|
||||
Lib/ISP/ISPTarget.c \
|
||||
Lib/PDI/PDIProtocol.c \
|
||||
Lib/PDI/PDITarget.c \
|
||||
Lib/PDI/XMEGANVM.c \
|
||||
Lib/TPI/TPIProtocol.c \
|
||||
Lib/TPI/TPITarget.c \
|
||||
Lib/TPI/TINYNVM.c \
|
||||
Lib/XPROG/PDIProtocol.c \
|
||||
Lib/XPROG/PDITarget.c \
|
||||
Lib/XPROG/XMEGANVM.c \
|
||||
Lib/XPROG/TPIProtocol.c \
|
||||
Lib/XPROG/TPITarget.c \
|
||||
Lib/XPROG/TINYNVM.c \
|
||||
$(LUFA_PATH)/LUFA/Drivers/Peripheral/Serial.c \
|
||||
$(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/DevChapter9.c \
|
||||
$(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Endpoint.c \
|
||||
$(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Host.c \
|
||||
|
|
Loading…
Reference in New Issue