电子产品世界 » 论坛首页 » 企业专区 » Xilinx » V3学院杯开发大赛


共3条 1/1 1 跳转至

V3学院杯开发大赛

助工
2017-10-16 22:11:47    评分

EagleGo板开发日志

 

 

 

 

 

 

 

基于EagleGo板的图像扫描实验

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

赵成 2017.10


 

 

 

基于EagleGo板的图像扫描实验

 

 

 

 

一.介绍

 

本实验将使用Vivado 2017.04工具,EagleGo开发板和XILINX Platform Cable UBS Model DLC9LP编译器进行烧录 ,最终做成一个自动图像扫描程序。所有代码均用Verilog HDL 语言编写。

 

 

 

创建一个新项目

 

 


 

 

 

 

我们可以看到文件中ctc8 的模块是空的。

module ctc8(

 

 

);

Endmodule

 

 

用下面的程序将这个空模块替代掉。

module ctc8( clk, resetn, count

);

input clk,resetn; output reg[2:0] count;

 

 

always @(posedge clk or negedge resetn)    begin if(resetn == 0) begin

count = 0; end else begin

if(count == 0)

count = 7; else begin

count = count - 1;

end


 

 


 

 

 

end


end


 

endmodule

这段程序重复执行,首先描述了一个 8 进制计数器,每次时钟上升沿到来,计数器减 1,减到0 后重新开始计数。

 

 

二.综合

 

 

 

 

 

 

 

 

 

我们可以看到 IP 生成到一个成为 xilinx.com_user_ctc8_1.0.zip 文件 中,路径是D:/Xilinx/VivadoProject/ctc8/ctc8.srcs/sources_1/new。 点击Package IP。这样,ctc8 的IP 核就生成了。


 

 

 

 

 

 

 

 

 

 

导入ctc8 IP核到IP catalog

D://Xilinx/VivadoProject/ctc8/ctc8.srcs/sources_1/new 路径下将

xilinx.com_user_ctc8_1.0.zip 文件拷贝到下面的路径中。

D:\MIPSfpga_Fundamentals\Xilinx\VivadoProject\led_lights。 然后将其解压到xilinx.com_user_ctc8_1.0 路径中,如图 下图


 

 

见下图,点Project Settings,打开Project Settings 对话框,并转到IP 项上。如图下 图。

 

 

 

 

 

 

 

 

 

选择ctc8 IP 核的位置

 

现在回到了如图上位置所示的Project Settings 对话框。Apply,然后OK


 

 

 

 

 

 

 

在随后弹出的对话框中点击OK此时我们在Project Manager Sources 中可 以看到刚加进去的ctc8_0,如图所示。

 

 

 


 

sources 窗口中双击clock_div,打开该文件。该文件的模块如下:

 

 

module clock_div(

 

 

 

 

endmodule

用下面的码替换

 

module clock_div(

 

clk, clk_sys

);

input clk; output clk_sys;

 

reg clk_sys = 0;

reg [25:0] div_counter = 0;

 

always @(posedge clk) begin if(div_counter>=50000000) begi

clk_sys<=~clk_sys;

 

div_counter<=0; end else begin

div_counter <= div_counter + 1; end

endmodule

 

 

 

仿真

在正式综合和下载之前,要先对设计进行仿真,以检查电路设计是否正确。右键点击 Project Manager 下面Sources 中的Simulation Source

 


 
 

 

 

双击图中的高亮部分,打开该文件。可以看到目前的模块定义为:

module led_sim

 

);

Endmodule

用下面的码替代。

module led_sim(    );

//input

reg clock = 0; reg resetn = 0;

 

 

//output

wire y0,y1,y2,y3,y4,y5,y6,y7;

 

 

//instantiate the Unit under test led_lights   uut(

.clock(clock),

.resetn(resetn),

.y0(y0),

.y1(y1),

.y2(y2),

.y3(y3),

.y4(y4),

.y5(y5),

.y6(y6),

.y7(y7)

);

 

 

initial begin

#50resetn = 1;

end

 

 

alway#clock = ~clock; endmodule

得到如图所示的波形图。

 

 

 

从图上我可以明地看0.5us resetn 号无计数3-8 译码器开工作, 每隔 1us3-8 译码器在计器的推下,换个输Y7-Y0 依次输出,周而复

 

 

 

综合与实现

 

接下来Project Manager 中点击 Run      Synthesis 者工具条按钮综合如果 没有问题会弹出所示的口。

 

 

 


  ect 

点击 OK,对设计进行实现。也可以点击工具条中的   按钮或者在Proj       Manager 点击Run                     Implementation 来对设计进行实现。



 

 

 

 

 

这样我们完成了合与实


 

五  产生比特流文件并下载

 

Project Manager 中点击 Generate Bitstream 或者具条上的 按钮比特生成后 会出现图的对话框

    比特流成完成


USB 下载线EagleGo 板与 PC 机的 USB 相连选中 Open Hardware ManagerOKProject Manager 中 点击 Hardware Manager。出现图示的界

 

所列的正是我们接到PC 上的板子的主芯片。点击 Next,然后点击Finish。 出现如图所示界面。

 




专家
2017-10-17 09:04:49    评分
2楼

图没有,还是高清?


专家
2017-10-17 14:07:49    评分
3楼

下面呢?加油!


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]