/** ****************************************************************************** * @file usbd_customhid_if_template.c * @author MCD Application Team * @brief USB Device Custom HID interface file. * This template should be copied to the user folder, renamed and customized * following user needs. ****************************************************************************** * @attention * * Copyright (c) 2015 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** */ /* BSPDependencies - "stm32xxxxx_{eval}{discovery}{nucleo_144}.c" - "stm32xxxxx_{eval}{discovery}_io.c" EndBSPDependencies */ /* Includes ------------------------------------------------------------------*/ #include "usbd_customhid_if_template.h" /* Private typedef -----------------------------------------------------------*/ /* Private define ------------------------------------------------------------*/ /* Private macro -------------------------------------------------------------*/ /* Private function prototypes -----------------------------------------------*/ static int8_t TEMPLATE_CUSTOM_HID_Init(void); static int8_t TEMPLATE_CUSTOM_HID_DeInit(void); static int8_t TEMPLATE_CUSTOM_HID_OutEvent(uint8_t event_idx, uint8_t state); /* Private variables ---------------------------------------------------------*/ USBD_CUSTOM_HID_ItfTypeDef USBD_CustomHID_template_fops = { TEMPLATE_CUSTOM_HID_ReportDesc, TEMPLATE_CUSTOM_HID_Init, TEMPLATE_CUSTOM_HID_DeInit, TEMPLATE_CUSTOM_HID_OutEvent, }; /* Private functions ---------------------------------------------------------*/ /** * @brief TEMPLATE_CUSTOM_HID_Init * Initializes the CUSTOM HID media low layer * @param None * @retval Result of the operation: USBD_OK if all operations are OK else USBD_FAIL */ static int8_t TEMPLATE_CUSTOM_HID_Init(void) { return (0); } /** * @brief TEMPLATE_CUSTOM_HID_DeInit * DeInitializes the CUSTOM HID media low layer * @param None * @retval Result of the operation: USBD_OK if all operations are OK else USBD_FAIL */ static int8_t TEMPLATE_CUSTOM_HID_DeInit(void) { /* Add your deinitialization code here */ return (0); } /** * @brief TEMPLATE_CUSTOM_HID_Control * Manage the CUSTOM HID class events * @param event_idx: event index * @param state: event state * @retval Result of the operation: USBD_OK if all operations are OK else USBD_FAIL */ static int8_t TEMPLATE_CUSTOM_HID_OutEvent(uint8_t event_idx, uint8_t state) { UNUSED(event_idx); UNUSED(state); /* Start next USB packet transfer once data processing is completed */ USBD_CUSTOM_HID_ReceivePacket(&USBD_Device); return (0); }