]> git.gag.com Git - fw/stlink/blobdiff - example/stm32f4/STM32_USB_HOST_Library/Class/HID/src/usbh_hid_mouse.c
Added USB Host library sources
[fw/stlink] / example / stm32f4 / STM32_USB_HOST_Library / Class / HID / src / usbh_hid_mouse.c
diff --git a/example/stm32f4/STM32_USB_HOST_Library/Class/HID/src/usbh_hid_mouse.c b/example/stm32f4/STM32_USB_HOST_Library/Class/HID/src/usbh_hid_mouse.c
new file mode 100644 (file)
index 0000000..f3ec2fc
--- /dev/null
@@ -0,0 +1,155 @@
+/**
+  ******************************************************************************
+  * @file    usbh_hid_mouse.c 
+  * @author  MCD Application Team
+  * @version V2.0.0
+  * @date    22-July-2011
+  * @brief   This file is the application layer for USB Host HID Mouse Handling.                  
+  ******************************************************************************
+  * @attention
+  *
+  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
+  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
+  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
+  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
+  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
+  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
+  *
+  * <h2><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h2>
+  ******************************************************************************
+  */ 
+
+/* Includes ------------------------------------------------------------------*/
+#include "usbh_hid_mouse.h"
+
+
+/** @addtogroup USBH_LIB
+  * @{
+  */
+
+/** @addtogroup USBH_CLASS
+  * @{
+  */
+
+/** @addtogroup USBH_HID_CLASS
+  * @{
+  */
+  
+/** @defgroup USBH_HID_MOUSE 
+  * @brief    This file includes HID Layer Handlers for USB Host HID class.
+  * @{
+  */ 
+
+/** @defgroup USBH_HID_MOUSE_Private_TypesDefinitions
+  * @{
+  */ 
+/**
+  * @}
+  */ 
+
+
+/** @defgroup USBH_HID_MOUSE_Private_Defines
+  * @{
+  */ 
+/**
+  * @}
+  */ 
+
+
+/** @defgroup USBH_HID_MOUSE_Private_Macros
+  * @{
+  */ 
+/**
+  * @}
+  */ 
+
+/** @defgroup USBH_HID_MOUSE_Private_FunctionPrototypes
+  * @{
+  */ 
+static void  MOUSE_Init (void);
+static void  MOUSE_Decode(uint8_t *data);
+/**
+  * @}
+  */ 
+
+
+/** @defgroup USBH_HID_MOUSE_Private_Variables
+  * @{
+  */
+#ifdef USB_OTG_HS_INTERNAL_DMA_ENABLED
+ #if defined   (__CC_ARM) /*!< ARM Compiler */
+  __align(4) 
+ #elif defined ( __ICCARM__ ) /*!< IAR Compiler */
+  #pragma data_alignment=4
+ #elif defined (__GNUC__) /*!< GNU Compiler */
+ #pragma pack(4) 
+ #elif defined  (__TASKING__) /*!< TASKING Compiler */                           
+  __align(4) 
+ #endif /* __CC_ARM */
+#endif
+HID_MOUSE_Data_TypeDef HID_MOUSE_Data;
+HID_cb_TypeDef HID_MOUSE_cb = 
+{
+  MOUSE_Init,
+  MOUSE_Decode,
+};
+/**
+  * @}
+  */ 
+
+
+/** @defgroup USBH_HID_MOUSE_Private_Functions
+  * @{
+  */ 
+
+/**
+* @brief  MOUSE_Init
+*         Init Mouse State.
+* @param  None
+* @retval None
+*/
+static void  MOUSE_Init ( void)
+{
+ /* Call User Init*/
+ USR_MOUSE_Init();
+}
+            
+/**
+* @brief  MOUSE_Decode
+*         Decode Mouse data
+* @param  data : Pointer to Mouse HID data buffer
+* @retval None
+*/
+static void  MOUSE_Decode(uint8_t *data)
+{
+  HID_MOUSE_Data.button = data[0];
+
+  HID_MOUSE_Data.x      = data[1];
+  HID_MOUSE_Data.y      = data[2];
+  
+  USR_MOUSE_ProcessData(&HID_MOUSE_Data);
+
+}
+/**
+  * @}
+  */ 
+
+/**
+  * @}
+  */ 
+
+/**
+  * @}
+  */
+
+/**
+  * @}
+  */
+
+
+/**
+  * @}
+  */
+/******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/