64 Byte Control Transfer using Encore II | Cypress Semiconductor
64 Byte Control Transfer using Encore II
My USB component control Endpoint size in Encore 2 is only 8 Bytes . In my application I need to transfer 64 Bytes . How to do it?
The control Endpoint is a bidirectional endpoint that uses the same buffer (USB_INTERFACE_0_FEATURE_RPT_DATA) to Send and receive the data . This buffer size is only 8 bytes . So if the user is sending any data over the control endpoint there is a possiblility that data may be overwritten . Below is the solution to over come this problem in EnCore 2.
The USB component of allows the user to override the exisisting routines easily . The Feature report such as GET and SET Report Rountines can be easily over written by following the steps in the USB UM datasheet . Please refer the section "Creating vendor specific device request and overriding existing request "of the UM datatsheet
Attached is a simple project in which I have over ridden the exisisting routine for the GET and SET REPORT . I have made the buffer size uptp 64 bytes and tested the project . Also unlike the normal way where there is only one buffer for both IN and OUT in this project there are separate buffers for both GET and SET reports . The Files that has been modified are the USB_cls_hid.asm and USB.inc