Browse Source

Add usb_receive()

master
Andreas Berthoud 5 years ago
parent
commit
99de5a0fd3
  1. 6
      nucleo-wb55-usb/Core/Src/main.c
  2. 5
      nucleo-wb55-usb/USB_Device/App/usbd_cdc_if.c
  3. 2
      nucleo-wb55-usb/USB_Device/App/usbd_cdc_if.h

6
nucleo-wb55-usb/Core/Src/main.c

@ -23,7 +23,7 @@
/* Private includes ----------------------------------------------------------*/ /* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */ /* USER CODE BEGIN Includes */
#include "usbd_cdc_if.h"
/* USER CODE END Includes */ /* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/ /* Private typedef -----------------------------------------------------------*/
@ -55,7 +55,9 @@ static void MX_GPIO_Init(void);
/* Private user code ---------------------------------------------------------*/ /* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */ /* USER CODE BEGIN 0 */
void usb_receive(uint8_t *Buf, uint32_t *Len) {
CDC_Transmit_FS(Buf, *Len);
}
/* USER CODE END 0 */ /* USER CODE END 0 */
/** /**

5
nucleo-wb55-usb/USB_Device/App/usbd_cdc_if.c

@ -136,6 +136,9 @@ int Debug_write(uint8_t *ptr, uint16_t *Len) {
} }
return i; return i;
} }
__weak void usb_receive(uint8_t *Buf, uint32_t *Len) {}
/* USER CODE END PRIVATE_FUNCTIONS_DECLARATION */ /* USER CODE END PRIVATE_FUNCTIONS_DECLARATION */
/** /**
@ -276,7 +279,7 @@ static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
/* USER CODE BEGIN 6 */ /* USER CODE BEGIN 6 */
USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]); USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]);
USBD_CDC_ReceivePacket(&hUsbDeviceFS); USBD_CDC_ReceivePacket(&hUsbDeviceFS);
CDC_Transmit_FS(Buf, *Len); usb_receive(Buf, Len);
Debug_write("count\n", (uint16_t)7); Debug_write("count\n", (uint16_t)7);
return (USBD_OK); return (USBD_OK);
/* USER CODE END 6 */ /* USER CODE END 6 */

2
nucleo-wb55-usb/USB_Device/App/usbd_cdc_if.h

@ -110,7 +110,7 @@ extern USBD_CDC_ItfTypeDef USBD_Interface_fops_FS;
uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len); uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len);
/* USER CODE BEGIN EXPORTED_FUNCTIONS */ /* USER CODE BEGIN EXPORTED_FUNCTIONS */
void usb_receive(uint8_t *Buf, uint32_t *Len);
/* USER CODE END EXPORTED_FUNCTIONS */ /* USER CODE END EXPORTED_FUNCTIONS */
/** /**

Loading…
Cancel
Save