Renamed the JTAG_DEBUG_ASSERT() macro to JTAG_ASSERT().
Changed the reports in the GenericHID device demos to control the board LEDs, to reduce user confusion over the callback routines. Fixed swapped TWI_ADDRESS_READ and TWI_ADDRESS_WRITE values. Fixed TWI_ReadPacket() not releasing the TWI bus on read completion.
This commit is contained in:
parent
40946a5704
commit
d0ac8e46f9
8 changed files with 61 additions and 34 deletions
|
@ -36,9 +36,6 @@
|
|||
|
||||
#include "GenericHID.h"
|
||||
|
||||
/** Static buffer to hold the last received report from the host, so that it can be echoed back in the next sent report */
|
||||
static uint8_t LastReceived[GENERIC_REPORT_SIZE];
|
||||
|
||||
|
||||
/** Main program entry point. This routine configures the hardware required by the application, then
|
||||
* enters a loop to run the application tasks in sequence.
|
||||
|
@ -155,13 +152,26 @@ void EVENT_USB_Device_ControlRequest(void)
|
|||
void ProcessGenericHIDReport(uint8_t* DataArray)
|
||||
{
|
||||
/*
|
||||
This is where you need to process the reports being sent from the host to the device.
|
||||
DataArray is an array holding the last report from the host. This function is called
|
||||
each time the host has sent a report to the device.
|
||||
This is where you need to process reports sent from the host to the device. This
|
||||
function is called each time the host has sent a new report. DataArray is an array
|
||||
holding the report sent from the host.
|
||||
*/
|
||||
|
||||
for (uint8_t i = 0; i < GENERIC_REPORT_SIZE; i++)
|
||||
LastReceived[i] = DataArray[i];
|
||||
uint8_t NewLEDMask = LEDS_NO_LEDS;
|
||||
|
||||
if (DataArray[0])
|
||||
NewLEDMask |= LEDS_LED1;
|
||||
|
||||
if (DataArray[1])
|
||||
NewLEDMask |= LEDS_LED1;
|
||||
|
||||
if (DataArray[2])
|
||||
NewLEDMask |= LEDS_LED1;
|
||||
|
||||
if (DataArray[3])
|
||||
NewLEDMask |= LEDS_LED1;
|
||||
|
||||
LEDs_SetAllLEDs(NewLEDMask);
|
||||
}
|
||||
|
||||
/** Function to create the next report to send back to the host at the next reporting interval.
|
||||
|
@ -176,8 +186,12 @@ void CreateGenericHIDReport(uint8_t* DataArray)
|
|||
an array to hold the report to the host.
|
||||
*/
|
||||
|
||||
for (uint8_t i = 0; i < GENERIC_REPORT_SIZE; i++)
|
||||
DataArray[i] = LastReceived[i];
|
||||
uint8_t CurrLEDMask = LEDs_GetLEDs();
|
||||
|
||||
DataArray[0] = ((CurrLEDMask & LEDS_LED1) ? 1 : 0);
|
||||
DataArray[1] = ((CurrLEDMask & LEDS_LED2) ? 1 : 0);
|
||||
DataArray[2] = ((CurrLEDMask & LEDS_LED3) ? 1 : 0);
|
||||
DataArray[3] = ((CurrLEDMask & LEDS_LED4) ? 1 : 0);
|
||||
}
|
||||
|
||||
void HID_Task(void)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue