Change AVRISP project's timeout to be interrupt based again, but make the interrupt itself interruptable and use a seperate assembly file to hand-optimize the ISR code.
Removed the cast to uint16_t on the set baud rate in the USBtoSerial project, so that the higher >1M baud rates can be selected (thanks to Steffan).
This commit is contained in:
parent
9a1560dc05
commit
3d28d53c3e
11 changed files with 66 additions and 117 deletions
|
@ -37,14 +37,16 @@
|
|||
#define _V2_PROTOCOL_
|
||||
|
||||
/* Includes: */
|
||||
#include <LUFA/Drivers/USB/USB.h>
|
||||
#include <LUFA/Drivers/Peripheral/SPI.h>
|
||||
|
||||
#include "../Descriptors.h"
|
||||
#include "V2ProtocolConstants.h"
|
||||
#include "V2ProtocolParams.h"
|
||||
#include "ISP/ISPProtocol.h"
|
||||
#include "XPROG/XPROGProtocol.h"
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#include <LUFA/Drivers/USB/USB.h>
|
||||
#include <LUFA/Drivers/Peripheral/SPI.h>
|
||||
|
||||
#include "../Descriptors.h"
|
||||
#include "V2ProtocolConstants.h"
|
||||
#include "V2ProtocolParams.h"
|
||||
#include "ISP/ISPProtocol.h"
|
||||
#include "XPROG/XPROGProtocol.h"
|
||||
#endif
|
||||
|
||||
/* Preprocessor Checks: */
|
||||
#if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1))
|
||||
|
@ -80,19 +82,23 @@
|
|||
#endif
|
||||
|
||||
/* External Variables: */
|
||||
extern uint32_t CurrentAddress;
|
||||
extern bool MustSetAddress;
|
||||
#if !defined(__ASSEMBLER__)
|
||||
extern uint32_t CurrentAddress;
|
||||
extern bool MustSetAddress;
|
||||
#endif
|
||||
|
||||
/* Function Prototypes: */
|
||||
void V2Protocol_Init(void);
|
||||
void V2Protocol_ProcessCommand(void);
|
||||
|
||||
#if defined(INCLUDE_FROM_V2PROTOCOL_C)
|
||||
static void V2Protocol_UnknownCommand(const uint8_t V2Command);
|
||||
static void V2Protocol_SignOn(void);
|
||||
static void V2Protocol_GetSetParam(const uint8_t V2Command);
|
||||
static void V2Protocol_ResetProtection(void);
|
||||
static void V2Protocol_LoadAddress(void);
|
||||
#if !defined(__ASSEMBLER__)
|
||||
void V2Protocol_Init(void);
|
||||
void V2Protocol_ProcessCommand(void);
|
||||
|
||||
#if defined(INCLUDE_FROM_V2PROTOCOL_C)
|
||||
static void V2Protocol_UnknownCommand(const uint8_t V2Command);
|
||||
static void V2Protocol_SignOn(void);
|
||||
static void V2Protocol_GetSetParam(const uint8_t V2Command);
|
||||
static void V2Protocol_ResetProtection(void);
|
||||
static void V2Protocol_LoadAddress(void);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue