Help to debug VCOM+FreeRTOS example on KDS

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Help to debug VCOM+FreeRTOS example on KDS

891 次查看
javiersoriano
Contributor II

Dear all, 

 

I modified the code from the VCOM + FreeRTOS example from the SDK. 

 

My setup:

FRDMK82f   --> usb --> Win7 PC --> Virtualbox --> Ubuntu14.04 --> Kinetis DesignStudio

 

I am able to communicate with the CDC device when I program the board using JLinkEXE.

I am also able to start the debugging from KDS. In other words, I see that the 'main' starts to run. 

I have also installed the FreeRTOS Task Aware Debugger for GDB.

 

The difference I see is that the VCOM device cannot connect to the virtual machine when in debugging mode. The USB device is reported as "busy". I read somewhere on the net that this may be the result of some MPU protection. But no more details on why or where to change this. I am also not sure if there could be another setting that stops me from using the VCOM device in a normal way when debugging. 

 

I cannot test my application without communicating with the VCOM device. 

Any pointers will be greatly appreciated.

 

Javier

 

EDIT: In order to discard the effects of using a virtual machine, I am now testing on a laptop that has Ubuntu 14.04 installed. My observations are pretty much the same. In other words, when running the application without a debugger, I can communicate with the CDC VCOM device. However when I try to open the same device while in debug mode (in Kinetis design studio), the VCOM device is simply not reported. 

 

dmesg says : "device not accepting address N, error -32"

标签 (1)
0 项奖励
回复
1 回复

765 次查看
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

I am sorry for the delay.

Regarding your question that VCOM can not work in debug mode, I do not think it is related to MPU protection, anyway, you can disable MPU by the code: MPU_CESR&=~(0x01); //clear VLD bit

Because the K82 uses interrupt mechanism to transfer data, if you debug step by step, the interrupt can not be triggered, how about click  "go" so that the K82 can run in normal mode.

Hope it can help you

BR

XiangJun Rong

0 项奖励
回复