+add PCAN X6 definitions

This commit is contained in:
moonglow 2021-02-16 15:54:51 +03:00
parent d33983944e
commit 6a6fef9090
5 changed files with 27 additions and 5 deletions

View File

@ -162,6 +162,9 @@ pro_fd:
fd:
$(MAKE) BOARD=fd DEBUG=0 OPT=-Os PROTO=Src/pcanpro_fd_protocol.c BOARD_FLAGS='-DPCAN_FD=1 -DINCLUDE_LIN_INTERFACE=0' elf hex bin
pcan_x6:
$(MAKE) BOARD=pcan_x6 DEBUG=0 OPT=-Os PROTO=Src/pcanpro_fd_protocol.c BOARD_FLAGS='-DPCAN_X6=1 -DINCLUDE_LIN_INTERFACE=0' elf hex bin
#######################################
# build the application

View File

@ -135,14 +135,28 @@ uint8_t pcan_protocol_device_setup( USBD_HandleTypeDef *pdev, USBD_SetupReqTyped
.size_of = sizeof( struct pcan_usbfd_fw_info ),
.type = 2,
.hw_type = 1,
#if ( PCAN_X6 == 1 )
.bl_version = { 1, 1, 0 },
.hw_version = 3,
#else
.bl_version = { 2, 1, 0 }, /* bootloader v > 2 support massstorage mode */
.hw_version = 2,
#endif
.fw_version = { 3, 2, 0 },
.dev_id[0] = 0xFFFFFFFF,
.dev_id[1] = 0xFFFFFFFF,
.ser_no = 0xFFFFFFFF,
.flags = 0x00000000,
.unk = { 0x01, 0x81, 0x02, 0x03, 0x82, 0x00, 0x00, 0x00 }
.unk = {
0x01, /* cmd_out */
0x81, /* cmd_in */
0x02, /* write */
0x03, /* write */
0x82, /* read */
0x00,
0x00,
0x00
}
};
/* windows/linux has different struct size */
fwi.size_of = req->wLength;

View File

@ -16,7 +16,7 @@ struct t_pcanpro_description
USB_ENDPOINT_DESCRIPTOR ep2_i0;
USB_ENDPOINT_DESCRIPTOR ep3_i0;
USB_ENDPOINT_DESCRIPTOR ep4_i0;
#if ( PCAN_PRO ) || ( PCAN_PRO_FD )
#if ( PCAN_PRO ) || ( PCAN_PRO_FD ) || ( PCAN_X6)
USB_ENDPOINT_DESCRIPTOR ep5_i0;
USB_ENDPOINT_DESCRIPTOR ep6_i0;
#endif
@ -75,7 +75,7 @@ __ALIGN_BEGIN static struct t_pcanpro_description pcanpro_dev __ALIGN_END =
.bDescriptorType = USB_INTERFACE_DESCRIPTOR_TYPE,
.bInterfaceNumber = 0,
.bAlternateSetting = 0,
#if ( PCAN_PRO ) || ( PCAN_PRO_FD )
#if ( PCAN_PRO ) || ( PCAN_PRO_FD ) || ( PCAN_X6)
.bNumEndpoints = 6,
#else
.bNumEndpoints = 4,
@ -121,7 +121,7 @@ __ALIGN_BEGIN static struct t_pcanpro_description pcanpro_dev __ALIGN_END =
.wMaxPacketSize = 64,/* FS: 64, HS: 512 */
.bInterval = 0,
},
#if ( PCAN_PRO ) || ( PCAN_PRO_FD )
#if ( PCAN_PRO ) || ( PCAN_PRO_FD ) || ( PCAN_X6)
.ep5_i0 =
{
.bLength = sizeof( USB_ENDPOINT_DESCRIPTOR ),

View File

@ -18,7 +18,7 @@
#define PCAN_USB_EP_MSGIN_CH2 0x83
#if ( PCAN_PRO_FD ) || ( PCAN_FD )
#if ( PCAN_PRO_FD ) || ( PCAN_FD ) || ( PCAN_X6)
#define PCAN_DATA_PACKET_SIZE (256)
#define PCAN_CMD_PACKET_SIZE (128)
#elif ( PCAN_PRO )

View File

@ -21,6 +21,11 @@
#define USBD_PRODUCT_STRING_HS "PCAN-USB-PRO"
#define USBD_INTERFACE_CAN_STRING_HS "PCAN-USB-PRO CAN Device"
#define USBD_INTERFACE_LIN_STRING_HS "PCAN-USB-PRO LIN Device"
#elif PCAN_X6
#define USBD_PID_HS 0x0014
#define USBD_PRODUCT_STRING_HS "PCAN-USB X6"
#define USBD_INTERFACE_CAN_STRING_HS "PCAN-USB X6 CAN Device"
#define USBD_INTERFACE_LIN_STRING_HS "PCAN-USB X6 LIN Device"
#else
#error Oops
#endif