From 7df6b9563c7aed504b34f42bc46d01e051051bdd Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Thu, 30 Jul 2009 14:59:57 +0000 Subject: Add new HID_Device_MillisecondElapsed() function to the HID device Class driver, to move the burden of managing the Idle period of each instance to the library and not the user application. --- Demos/Device/ClassDriver/DualCDC/DualCDC.c | 5 ----- Demos/Device/ClassDriver/GenericHID/GenericHID.c | 3 +-- Demos/Device/ClassDriver/Joystick/Joystick.c | 3 +-- Demos/Device/ClassDriver/Keyboard/Keyboard.c | 3 +-- Demos/Device/ClassDriver/KeyboardMouse/KeyboardMouse.c | 14 +++----------- Demos/Device/ClassDriver/Mouse/Mouse.c | 3 +-- 6 files changed, 7 insertions(+), 24 deletions(-) (limited to 'Demos/Device/ClassDriver') diff --git a/Demos/Device/ClassDriver/DualCDC/DualCDC.c b/Demos/Device/ClassDriver/DualCDC/DualCDC.c index 9e3217cf7..82ed59d51 100644 --- a/Demos/Device/ClassDriver/DualCDC/DualCDC.c +++ b/Demos/Device/ClassDriver/DualCDC/DualCDC.c @@ -78,11 +78,6 @@ USB_ClassInfo_CDC_Device_t VirtualSerial2_CDC_Interface = .NotificationEndpointNumber = CDC2_NOTIFICATION_EPNUM, .NotificationEndpointSize = CDC_NOTIFICATION_EPSIZE, }, - - .State = - { - // Leave all state values to their defaults - } }; /** Main program entry point. This routine contains the overall program flow, including initial diff --git a/Demos/Device/ClassDriver/GenericHID/GenericHID.c b/Demos/Device/ClassDriver/GenericHID/GenericHID.c index b04f7af76..4315723f4 100644 --- a/Demos/Device/ClassDriver/GenericHID/GenericHID.c +++ b/Demos/Device/ClassDriver/GenericHID/GenericHID.c @@ -118,8 +118,7 @@ void EVENT_USB_UnhandledControlPacket(void) /** ISR to keep track of each millisecond interrupt, for determining the HID class idle period remaining when set. */ ISR(TIMER0_COMPA_vect, ISR_BLOCK) { - if (Generic_HID_Interface.State.IdleMSRemaining) - Generic_HID_Interface.State.IdleMSRemaining--; + HID_Device_MillisecondElapsed(&Generic_HID_Interface); } /** HID class driver callback function for the creation of HID reports to the host. diff --git a/Demos/Device/ClassDriver/Joystick/Joystick.c b/Demos/Device/ClassDriver/Joystick/Joystick.c index d9ff6ca91..ffd167ef5 100644 --- a/Demos/Device/ClassDriver/Joystick/Joystick.c +++ b/Demos/Device/ClassDriver/Joystick/Joystick.c @@ -120,8 +120,7 @@ void EVENT_USB_UnhandledControlPacket(void) /** ISR to keep track of each millisecond interrupt, for determining the HID class idle period remaining when set. */ ISR(TIMER0_COMPA_vect, ISR_BLOCK) { - if (Joystick_HID_Interface.State.IdleMSRemaining) - Joystick_HID_Interface.State.IdleMSRemaining--; + HID_Device_MillisecondElapsed(&Joystick_HID_Interface); } /** HID class driver callback function for the creation of HID reports to the host. diff --git a/Demos/Device/ClassDriver/Keyboard/Keyboard.c b/Demos/Device/ClassDriver/Keyboard/Keyboard.c index cd8c3e69e..fb19d02d9 100644 --- a/Demos/Device/ClassDriver/Keyboard/Keyboard.c +++ b/Demos/Device/ClassDriver/Keyboard/Keyboard.c @@ -121,8 +121,7 @@ void EVENT_USB_UnhandledControlPacket(void) /** ISR to keep track of each millisecond interrupt, for determining the HID class idle period remaining when set. */ ISR(TIMER0_COMPA_vect, ISR_BLOCK) { - if (Keyboard_HID_Interface.State.IdleMSRemaining) - Keyboard_HID_Interface.State.IdleMSRemaining--; + HID_Device_MillisecondElapsed(&Keyboard_HID_Interface); } /** HID class driver callback function for the creation of HID reports to the host. diff --git a/Demos/Device/ClassDriver/KeyboardMouse/KeyboardMouse.c b/Demos/Device/ClassDriver/KeyboardMouse/KeyboardMouse.c index 45a2c5270..418ccba4e 100644 --- a/Demos/Device/ClassDriver/KeyboardMouse/KeyboardMouse.c +++ b/Demos/Device/ClassDriver/KeyboardMouse/KeyboardMouse.c @@ -66,12 +66,7 @@ USB_ClassInfo_HID_Device_t Mouse_HID_Interface = .ReportINEndpointNumber = MOUSE_IN_EPNUM, .ReportINEndpointSize = HID_EPSIZE, - }, - - .State = - { - // Leave all state values to their defaults - } + }, }; /** Main program entry point. This routine contains the overall program flow, including initial @@ -147,11 +142,8 @@ void EVENT_USB_UnhandledControlPacket(void) /** ISR to keep track of each millisecond interrupt, for determining the HID class idle period remaining when set. */ ISR(TIMER0_COMPA_vect, ISR_BLOCK) { - if (Keyboard_HID_Interface.State.IdleMSRemaining) - Keyboard_HID_Interface.State.IdleMSRemaining--; - - if (Mouse_HID_Interface.State.IdleMSRemaining) - Mouse_HID_Interface.State.IdleMSRemaining--; + HID_Device_MillisecondElapsed(&Keyboard_HID_Interface); + HID_Device_MillisecondElapsed(&Mouse_HID_Interface); } /** HID class driver callback function for the creation of HID reports to the host. diff --git a/Demos/Device/ClassDriver/Mouse/Mouse.c b/Demos/Device/ClassDriver/Mouse/Mouse.c index 44894340b..51021c0f5 100644 --- a/Demos/Device/ClassDriver/Mouse/Mouse.c +++ b/Demos/Device/ClassDriver/Mouse/Mouse.c @@ -120,8 +120,7 @@ void EVENT_USB_UnhandledControlPacket(void) /** ISR to keep track of each millisecond interrupt, for determining the HID class idle period remaining when set. */ ISR(TIMER0_COMPA_vect, ISR_BLOCK) { - if (Mouse_HID_Interface.State.IdleMSRemaining) - Mouse_HID_Interface.State.IdleMSRemaining--; + HID_Device_MillisecondElapsed(&Mouse_HID_Interface); } /** HID class driver callback function for the creation of HID reports to the host. -- cgit v1.2.3