AnsweredAssumed Answered

USB Device CDC on KSDK PEx components and KDS 3.0 and KSDK 1.2.0 or KSDK  1.3.0 .

Question asked by Konstantin Grjznov on Oct 11, 2015

Hardware and software configuration:

FRDM-K64F

OpenSDA J-Link firmware

KDS 3.0 with KSDK 1.2.0 and KSDK 1.3.0 Eclipse update installed.


 

KDS no updates: 

GNU ARM C/C++ Cross Compiler 1.14.1.201508190739

GNU ARM C/C++ J-Link Debugging 3.2.1.201508190739

GNU ARM C/C++ OpenOCD Debugging 3.2.1.201508190739

 

File→New→Kinetis Project…. Name… boards FRDM-K64

Select KSDK 1.2.0 or KSDK 1.3.0

Select Processor Expert

Set Build Options

Stack Size 0x1000

Heap Size 0x0400


 

Now I find the fsl_usb_framework component from KSDK 1.2.0 or KSDK 1.3.0

and add it to project and inherited components :

Note: is  KSDK 1.2.0 set Baud Rate in  component fsl_debug_console.

 

 

Select usbFmw:fsl_usb_framework Properties Mode and Select Device class driver USBCFG_DEV_CDC Enabled

 

Select usbFmw:fsl_usb_framework Properties Initialization

and Select Auto Initialization Disabled

Click Generate Prosessor Expert Code


 

Create New Folger classes

 

Add

Includes Path

"${ProjDirPath}/SDK/usb/usb_core/device/sources/classes/include"

"${ProjDirPath}/SDK/usb/usb_core/device/sources/classes/include/config"

"${ProjDirPath}/SDK/usb/usb_core/device/sources/classes/common"

"${ProjDirPath}/SDK/usb/usb_core/device/sources/classes/cdc"

 

 

 

and Apply.


 

Copy C:\Freescale\KSDK_1.X.0\usb\usb_core\device\sources\classes\

to {ProjDirPath}/SDK/usb/usb_core/device/sources/classes/

folgers:

/cdc

/common

/include

 

 

 

Copy c:\Freescale\KSDK_1.X.0\examples\frdmk64f\demo_apps\usb\device\cdc\virtual_com\

to {ProjDirPath}/Sources/

files

virtual_com.h

usb_descriptor.h

usb_descriptor.c

Note: Not copy virtual_com.c

Next step change main.c based virtual_com.c.

  View attachment projects. 

  Click Generate Prosessor Expert Code.

  Note: function void APP_init(void) different KSDK_1.2.0 and KSDK_1.3.0

If KSDK_1.3.0 add

cdc_config.board_init_callback.callback = NULL ; //usb_device_board_init;

cdc_config.board_init_callback.arg = CONTROLLER_ID;

 

 

Konstantin.

 

Original Attachment has been moved to: CDC_KDS130.ZIP

Original Attachment has been moved to: CDC_KDS120.ZIP

Outcomes