usb problem

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

usb problem

Jump to solution
2,664 Views
eao
Contributor I

Hello, I am using the USB_CDC_VCOM_BM_CM7 code, but I have not been able to trigger the receive and send interrupt. I used my own development board with the usb3.0 driver and RT1170 as the slave. The enumeration can be successful, but it has been unable to reach the data transmission stage. Trigger the interrupt of RT1170. Can CDC_VCOM_BM_CM7 be used directly? Is there anything that needs to be modified?

Labels (1)
0 Kudos
1 Solution
2,546 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please refer below feedback:

If data section is cacheable, need to check two point:

1. DATA_SECTION_IS_CACHEABLE=1 must be added into project.

2. Heap used by USB stack should be placed into non-cacheable region. 

Please refer to picture below, after apply the two change, it now works.

Hui_Ma_0-1664416711850.pngHui_Ma_1-1664416734824.png

Wish it helps.

 

View solution in original post

0 Kudos
12 Replies
2,658 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please refer the <readme.pdf> file, which located at ..\SDK_2_12_0_MIMXRT1170-EVK\boards\evkmimxrt1170\usb_examples\usb_device_cdc_vcom\bm\cm7 folder.

Related driver could be found at \SDK_2_12_0_MIMXRT1170-EVK\boards\evkmimxrt1170\usb_examples\usb_device_cdc_vcom\inf folder.

Wish it helps.

Mike

0 Kudos
2,647 Views
eao
Contributor I

Thanks, I found 2 problems,
1. When I debug the usb example, it can run normally, but when I burn the code into norflash, it cannot be started, and the usb is abnormal.
2. When I change the memory position in mcuxpressIDE, the usb cannot run normally. I put the SRAM_DTC_CM7 at the back and SRAM OC1 and OC2 at the front, and the usb cannot run normally. What is the reason?

0 Kudos
2,640 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Thank you for the feedback.

If you are using the MIMXRT1170-EVK board?

Mike

0 Kudos
2,638 Views
eao
Contributor I
yes
0 Kudos
2,631 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

I did a test with below setting, the USB CDC device demo works normally.

Using QSPI Flash (SDK project default setting), Boot setting at board:

SW1: 0010

SW2: All 0 

Board power supply: J11 with J38 setting (5-6)

USB port: J20 USB1

PC: WIN10 64-bit

Hui_Ma_4-1663579080985.png

I could run the demo outside of debugger interface.

Hui_Ma_0-1663578738424.pngHui_Ma_1-1663578773766.png

Hui_Ma_2-1663578807749.png

Hui_Ma_3-1663578884154.png

Thanks for the attention.

Mike

 

0 Kudos
2,623 Views
eao
Contributor I
ok,
2. When I change the memory position in mcuxpressIDE, the usb cannot run normally. I put the SRAM_DTC_CM7 at the back and SRAM OC1 and OC2 at the front, and the usb cannot run normally. What is the reason?
this problem why?
thanks.
0 Kudos
2,611 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please place USB stack used data into non-cacheable region.

Wish it helps.

Hui_Ma_1-1663664389901.png

Mike

0 Kudos
2,554 Views
eao
Contributor I
I found a question, can usb run only on SRAM_DTC_CM7? I just put the code other areas will not run, for example, to SRAM_OC will not run
0 Kudos
2,547 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please refer below feedback:

If data section is cacheable, need to check two point:

1. DATA_SECTION_IS_CACHEABLE=1 must be added into project.

2. Heap used by USB stack should be placed into non-cacheable region. 

Please refer to picture below, after apply the two change, it now works.

Hui_Ma_0-1664416711850.pngHui_Ma_1-1664416734824.png

Wish it helps.

 

0 Kudos
2,534 Views
eao
Contributor I
Thank you very much, this answer solves my problem.
0 Kudos
2,600 Views
eao
Contributor I
thanks。
I still have a question. At present, the example I use usb is DEV_CDC_VCOM_BM. In this example, the class CDC is used. Do you have any examples that do not use the class? Only data transfer, I really need it Thank you!
0 Kudos
2,593 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Sorry for the later reply.

The MCUXpresso SDK USB stack application is based on class. We do not have example to do the data transfer without USB Class. Sorry for that.

best regards,

Mike 

0 Kudos