/****************************************************************************** * Forward USART2 as a simple USB serial interface. */ static struct usart_config const usart2; struct usb_stream_config const usart2_usb; static struct queue const usart2_to_usb = QUEUE_DIRECT(64, uint8_t, usart2.producer, usart2_usb.consumer); static struct queue const usb_to_usart2 = QUEUE_DIRECT(64, uint8_t, usart2_usb.producer, usart2.consumer); static struct usart_config const usart2 = USART_CONFIG(usart2_hw, usart_rx_interrupt, usart_tx_interrupt, 115200, usart2_to_usb, usb_to_usart2); USB_STREAM_CONFIG(usart2_usb, USB_IFACE_USART2_STREAM, USB_STR_USART2_STREAM_NAME, USB_EP_USART2_STREAM, USB_STREAM_RX_SIZE, USB_STREAM_TX_SIZE, usb_to_usart2, usart2_to_usb) /****************************************************************************** * Forward USART3 as a simple USB serial interface.
struct usb_stream_config const ap_usb; static struct queue const ap_usart_to_usb = QUEUE_DIRECT(64, uint8_t, ap_usart.producer, ap_usb.consumer); static struct queue const ap_usb_to_usart = QUEUE_DIRECT(64, uint8_t, ap_usb.producer, ap_usart.consumer); static struct usart_tx_dma const ap_usart_tx_dma = USART_TX_DMA(STM32_DMAC_USART1_TX, 16); static struct usart_config const ap_usart = USART_CONFIG(usart1_hw, usart_rx_interrupt, ap_usart_tx_dma.usart_tx, 115200, ap_usart_to_usb, ap_usb_to_usart); #define AP_USB_STREAM_RX_SIZE 16 #define AP_USB_STREAM_TX_SIZE 16 USB_STREAM_CONFIG(ap_usb, USB_IFACE_AP_STREAM, USB_STR_AP_STREAM_NAME, USB_EP_AP_STREAM, AP_USB_STREAM_RX_SIZE, AP_USB_STREAM_TX_SIZE, ap_usb_to_usart, ap_usart_to_usb)
* Setup USART1 as a loopback device, it just echo's back anything sent to it. */ static struct usart_config const loopback_usart; static struct queue const loopback_queue = QUEUE_DIRECT(64, uint8_t, loopback_usart.producer, loopback_usart.consumer); static struct usart_tx_dma const loopback_tx_dma = USART_TX_DMA(STM32_DMAC_CH2, 16); static struct usart_config const loopback_usart = USART_CONFIG(usart1_hw, usart_rx_interrupt, loopback_tx_dma.usart_tx, 115200, loopback_queue, loopback_queue); /****************************************************************************** * Forward USART4 as a simple USB serial interface. */ static struct usart_config const forward_usart; struct usb_stream_config const forward_usb; static struct queue const usart_to_usb = QUEUE_DIRECT(64, uint8_t, forward_usart.producer, forward_usb.consumer); static struct queue const usb_to_usart = QUEUE_DIRECT(64, uint8_t, forward_usb.producer, forward_usart.consumer);