第三篇:zc706 SDK下usb DEVICE模式测试过程

时间:2024-02-17 15:06:18

第三篇:zc706 SDK下usb DEVICE模式测试过程

 

说明:本篇文档记录在SDK下测试USB的DEVICE模式,即在电脑上模拟zc706作为1M优盘的示例。

 

一:vivado构建基本硬件环境:

       首先进行板卡基本配置向导过程:

1、 打开vivado,点击Create Project,然后在出现的界面中点击下一步:

 

2、 在该界面下设置项目名字如basicUsbTest,其余默认配置,点击下一步:

 

3、 这一步按照默认配置即可,点击下一步:

 

4、 然后在该界面下选择与自己开发板配套的型号,选择Boards,然后在Search中键入706,回车,即可看到如图所示的zc706的板卡,然后点击下一步:

 

5、 此时将看到最终的板卡概述,直接点击Finish即可。

 

 

 

       然后完成上述步骤后,将进入具体板卡配置界面,进行硬件搭建及综合、生成bit流、导出到SDK过程:

1、 接上述步骤5之后的界面,点击左侧Flow Navigator中IP INTEGRATOR下的Create Block Design选项,此时将出现指定名字界面,在Design name中键入名字,这里填usb_device_design_1,然后点击OK,将出现右侧的Diagram工作区:

 

2、 在Diagram工作区中点击+号,在出现的Search中键入zynq,回车将出现zynq7 IP模块,双击将把该模块添加到工作区中:

 

3、 在导入到工作区中后,此时点击上方的Run Block Automation,按照默认配置,直接点击OK即可。

 

4、 然后将鼠标放置在M_AXI_GP0_ACLK位置,将该接口连接至FCLK_CLK0,然后右键选择Validate Design进行验证,将出现验证成功的提示。然后Ctrl+s进行保存。

 

5、 右键如图所示的Sources下主文件,然后点击Generate Output Products,然后在出现的图中默认配置点击Generate即可,等待完成Output Products后,点击OK即可。

 

6、 在上述图的同样位置,右键点击Create HDL Wrapper,然后默认配置选择OK即可。

 

7、 点击左侧Flow Navigator中PROGRAM AND DEBUG下的Generate Bitstream选项,点击OK进入Launch Runs界面,然后默认配置,点击OK进入产生bitstream过程。完成后将显示完成界面,默认点击OK即可。

8、 完成上述步骤后,点击File->Export->ExportHardware选项,在出现的界面中选中Include bitsream选项,按照下图所示点击OK。完成后,继续点击File->Launch SDK选项,在出现的界面中,默认点击OK即可打开SDK,进入到SDK开发软件界面。

 

 

 

二、SDK软件开发过程:

在进入到SDK后,通过下面步骤完成USB DEVICE软件测试:

1、 在SDK界面,点击File->New->Application Project选项,填上项目名字basicUsbTest,然后点击下一步:

 

2、 由于我们要自己导入SDK中自带的USB DEVICE模式的例子,因此在该界面中按如图所示选择,点击Finish。

 

3、 完成后,可看到在Project Explorer下多了源代码以及bsp文件夹。在如图所示的地方点击import,打开导入文件界面。

 

4、 在打开的界面中,选中General->File System,点击下一步,然后点击Browse,浏览到需要的USB文件夹下,点击Finish,导入文件。

 

5、 导入成功后,将在导航栏看到源文件:

6、 按照前几篇的文章,将zc706开发板的电源线、usb-JTAG线、usb-uart串口线连接好,并将5个启动模式拨码开关打至00000模式。然后开启电源。之后,点击SDK中标题栏的Xilinx下的Program FPGA选项,

按照默认配置点击Program选项,等待FPGA下载完成。

 

7、 下载完成后,点击如图所示的位置,下载程序到zc706开发板。

 

8、 下载完成后,我们将usb-OTG线的usb端接入电脑,Micro端连入zc706的usb-otg接口,将在电脑界面上出现格式化u盘提示。此时我们按照第二篇的usb DEVICE测试,将u盘格式化后,将在电脑驱动器界面下看到1M左右的u盘。

 

9、 此时,我们的SDK下调试裸机程序下的USB DEVICE模式完成。

 

注意:如果要看到USB DEVICE模式的打印信息,在SDK的xusbps_ch9.c的第68行加入#define CH9_DEBUG即可。然后按照前两篇的内容,使用友善串口助手配置串口如下:

 

然后打开串口,之后将usb-OTG线拔掉,重新按照上面的第6、7、8步调试即可。然后在插入usb-OTG线后,将在串口助手下看到打印的usb调试信息: