projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make HID device class driver reselect the correct endpoint after the user callbacks...
[pub/USBasp.git]
/
Demos
/
Host
/
ClassDriver
/
MouseHost
/
MouseHost.c
diff --git
a/Demos/Host/ClassDriver/MouseHost/MouseHost.c
b/Demos/Host/ClassDriver/MouseHost/MouseHost.c
index
ead2961
..
fbf35c0
100644
(file)
--- a/
Demos/Host/ClassDriver/MouseHost/MouseHost.c
+++ b/
Demos/Host/ClassDriver/MouseHost/MouseHost.c
@@
-53,7
+53,7
@@
USB_ClassInfo_HID_Host_t Mouse_HID_Interface =
\r
\r
/** Main program entry point. This routine configures the hardware required by the application, then
\r
\r
\r
/** Main program entry point. This routine configures the hardware required by the application, then
\r
- *
starts the scheduler to run the application tasks
.
\r
+ *
enters a loop to run the application tasks in sequence
.
\r
*/
\r
int main(void)
\r
{
\r
*/
\r
int main(void)
\r
{
\r
@@
-99,7
+99,7
@@
int main(void)
break;
\r
}
\r
\r
break;
\r
}
\r
\r
- if (
USB_
HID_Host_SetBootProtocol(&Mouse_HID_Interface) != 0)
\r
+ if (HID_Host_SetBootProtocol(&Mouse_HID_Interface) != 0)
\r
{
\r
printf("Could not Set Boot Protocol Mode.\r\n");
\r
LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
\r
{
\r
printf("Could not Set Boot Protocol Mode.\r\n");
\r
LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
\r
@@
-113,34
+113,29
@@
int main(void)
case HOST_STATE_Configured:
\r
if (HID_Host_IsReportReceived(&Mouse_HID_Interface))
\r
{
\r
case HOST_STATE_Configured:
\r
if (HID_Host_IsReportReceived(&Mouse_HID_Interface))
\r
{
\r
- USB_MouseReport_Data_t MouseReport;
\r
- uint8_t ReportID = 0;
\r
- uint8_t LEDMask = LEDS_NO_LEDS;
\r
+ uint8_t LEDMask = LEDS_NO_LEDS;
\r
\r
\r
- HID_Host_ReceiveReport(&Mouse_HID_Interface, false, &ReportID, &MouseReport);
\r
+ USB_MouseReport_Data_t MouseReport;
\r
+ HID_Host_ReceiveReport(&Mouse_HID_Interface, &MouseReport);
\r
\r
\r
- /* Alter status LEDs according to mouse X movement */
\r
+ printf_P(PSTR("dX:%2d dY:%2d Button:%d\r\n"), MouseReport.X,
\r
+ MouseReport.Y,
\r
+ MouseReport.Button);
\r
if (MouseReport.X > 0)
\r
LEDMask |= LEDS_LED1;
\r
else if (MouseReport.X < 0)
\r
LEDMask |= LEDS_LED2;
\r
\r
if (MouseReport.X > 0)
\r
LEDMask |= LEDS_LED1;
\r
else if (MouseReport.X < 0)
\r
LEDMask |= LEDS_LED2;
\r
\r
- /* Alter status LEDs according to mouse Y movement */
\r
if (MouseReport.Y > 0)
\r
LEDMask |= LEDS_LED3;
\r
else if (MouseReport.Y < 0)
\r
LEDMask |= LEDS_LED4;
\r
\r
if (MouseReport.Y > 0)
\r
LEDMask |= LEDS_LED3;
\r
else if (MouseReport.Y < 0)
\r
LEDMask |= LEDS_LED4;
\r
\r
- /* Alter status LEDs according to mouse button position */
\r
if (MouseReport.Button)
\r
LEDMask = LEDS_ALL_LEDS;
\r
if (MouseReport.Button)
\r
LEDMask = LEDS_ALL_LEDS;
\r
-
\r
+
\r
LEDs_SetAllLEDs(LEDMask);
\r
}
\r
LEDs_SetAllLEDs(LEDMask);
\r
}
\r
- else
\r
- {
\r
- LEDs_SetAllLEDs(LEDS_NO_LEDS);
\r
- }
\r
\r
break;
\r
}
\r
\r
break;
\r
}
\r