取消
显示结果 
搜索替代 
您的意思是: 
Highlighted
Visitor
Visitor
346 次查看
注册日期: ‎04-30-2020

zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

MPSOC裸跑,作为USB Device,PCW中勾选了USB2.0和USB3.0。运行SDK的USB中断例程后把USB线插入电脑,电脑显示获取描述符失败。经测试,复位和Vbus正常;ULPI时钟正常,为60M;GT收发器使用的是lane3,时钟100M;USB连接线正常。SDK中调试发现USB中断一次都没有进入,也就是说电脑USB主控制器最开始发的复位中断都没有收到。单独勾选USB2.0和单独勾选USB3.0都试过,结果都是获取描述符失败。

获取描述符失败.png
0 项奖励
1 个已接受解答

已接受的解答
Highlighted
Xilinx Employee
Xilinx Employee
182 次查看
注册日期: ‎09-14-2018

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@yellowd  已写:

@chaoz 

PHY的复位用示波器测试是正常的,用MIO和GPIO MIO控制复位信号都试过,复位的时间足够。

使用USB除了在PS中配置图中的两个地方,还需要配置其他的吗?

我想确认下我的操作流程是否正确:在PS配置USB相关项目后,生成bit流,然后在SDK中导出USB中断例程。如果是GPIO MIO复位,还要在程序开头对PHY进行复位。


你的操作流程没问题,在裸机例子中,主要就是上述配置。

看到你用的USB 1, 我不太确认默认的例子是例化的USB 0, 还是会根据vivado配置自动适应,你可以先代码里确认下。 

 

 

在原帖中查看解决方案

6 条回复6
Highlighted
Xilinx Employee
Xilinx Employee
280 次查看
注册日期: ‎09-14-2018

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

Hi @yellowd 

1. 用的是官方开发板吗?如果是的话可以用prebuilt的HDF文件来进行下测试。

2. 板子这边的打印信息是怎样的?

3. 测过USB数据线上是否有数据信号?

0 项奖励
Highlighted
Visitor
Visitor
274 次查看
注册日期: ‎04-30-2020

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@chaoz 

1. 用的是官方开发板吗?如果是的话可以用prebuilt的HDF文件来进行下测试。

不是官方开发板,是我们自己设计的板子。

2. 板子这边的打印信息是怎样的?

define CH9_DEBUG和CLASS_STORAGE_DEBUG后,输出的打印信息只有Mass Storage Gadget Start...,这是USB中断例程程序最开始的打印信息。

3. 测过USB数据线上是否有数据信号?

使用示波器测试,没有测试到数据。

 

请问standalone的USB中断例程可以直接应用在zynq ultrascale+ mpsoc上面吗?是否需要做改动?

0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
229 次查看
注册日期: ‎09-14-2018

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@yellowd  已写:

@chaoz 

请问standalone的USB中断例程可以直接应用在zynq ultrascale+ mpsoc上面吗?是否需要做改动?


我在官方开发板上使用过没有问题不需要修改。

是否可能会是硬件问题?USB PHY 复位信号是否正常?

0 项奖励
Highlighted
Visitor
Visitor
225 次查看
注册日期: ‎04-30-2020

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@chaoz 

PHY的复位用示波器测试是正常的,用MIO和GPIO MIO控制复位信号都试过,复位的时间足够。

使用USB除了在PS中配置图中的两个地方,还需要配置其他的吗?

我想确认下我的操作流程是否正确:在PS配置USB相关项目后,生成bit流,然后在SDK中导出USB中断例程。如果是GPIO MIO复位,还要在程序开头对PHY进行复位。

PCW配置.png
USB3-GTR时钟.png
0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
183 次查看
注册日期: ‎09-14-2018

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@yellowd  已写:

@chaoz 

PHY的复位用示波器测试是正常的,用MIO和GPIO MIO控制复位信号都试过,复位的时间足够。

使用USB除了在PS中配置图中的两个地方,还需要配置其他的吗?

我想确认下我的操作流程是否正确:在PS配置USB相关项目后,生成bit流,然后在SDK中导出USB中断例程。如果是GPIO MIO复位,还要在程序开头对PHY进行复位。


你的操作流程没问题,在裸机例子中,主要就是上述配置。

看到你用的USB 1, 我不太确认默认的例子是例化的USB 0, 还是会根据vivado配置自动适应,你可以先代码里确认下。 

 

 

在原帖中查看解决方案

Highlighted
Visitor
Visitor
175 次查看
注册日期: ‎04-30-2020

回复: zynq ultrascale+ mpsoc 电脑获取USB描述符失败

转到解答

@chaoz 

感谢你的耐心帮助。我确认了例化的USB ID和USB中断号都是USB1的。那这样的话我默认程序是正确的,着重排查硬件的问题。

0 项奖励