From 60fd0ff418566d85224f9841037ba01b77acc0d8 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Tue, 19 Jan 2010 05:27:58 +0000 Subject: Changed XPLAINBridge project to be both a USB to USART bridge and a PDI programmer, based on the state of a mode select pin. --- Projects/XPLAINBridge/XPLAINBridge.h | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) (limited to 'Projects/XPLAINBridge/XPLAINBridge.h') diff --git a/Projects/XPLAINBridge/XPLAINBridge.h b/Projects/XPLAINBridge/XPLAINBridge.h index 6b8d2a5f3..543a03e72 100644 --- a/Projects/XPLAINBridge/XPLAINBridge.h +++ b/Projects/XPLAINBridge/XPLAINBridge.h @@ -41,10 +41,12 @@ #include #include - #include "Descriptors.h" + #include "AVRISPDescriptors.h" + #include "USARTDescriptors.h" #include "Lib/RingBuff.h" - #include "Lib/SoftUART.h" + #include "Lib/SoftUART.h" + #include #include #include @@ -53,23 +55,36 @@ /* Macros: */ /** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ - #define LEDMASK_USB_NOTREADY LEDS_LED1 + #define LEDMASK_USB_NOTREADY LEDS_LED1 /** LED mask for the library LED driver, to indicate that the USB interface is enumerating. */ - #define LEDMASK_USB_ENUMERATING (LEDS_LED2 | LEDS_LED3) + #define LEDMASK_USB_ENUMERATING LEDS_LED1 /** LED mask for the library LED driver, to indicate that the USB interface is ready. */ - #define LEDMASK_USB_READY (LEDS_LED2 | LEDS_LED4) + #define LEDMASK_USB_READY LEDS_NO_LEDS /** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */ - #define LEDMASK_USB_ERROR (LEDS_LED1 | LEDS_LED3) + #define LEDMASK_USB_ERROR LEDS_LED1 + + /** LED mask for the library LED driver, to indicate that the USB interface is busy. */ + #define LEDMASK_BUSY LEDS_LED1 + + #define MODE_USART_BRIDGE false + #define MODE_PDI_PROGRAMMER true + + /* External Variables: */ + extern bool CurrentFirmwareMode; /* Function Prototypes: */ void SetupHardware(void); + void AVRISP_Task(void); + void USARTBridge_Task(void); void EVENT_USB_Device_ConfigurationChanged(void); void EVENT_USB_Device_UnhandledControlRequest(void); void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo); + uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress); + #endif -- cgit v1.2.3