注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
giftFPGA的个人空间 https://home.eeworld.com.cn/space-uid-330981.html [收藏] [复制] [分享] [RSS]
日志

【FPGA礼物教程】完成你的第一FPGA项目

已有 3055 次阅读2011-6-18 16:55 |

LED程序对于Verilog HDL就像Hello World程序对于C语言一样,初学者首先应该完成的程序应该就是LED程序。

本实验的软硬件环境:

1 软件Quartus II 10.0  SPI

2 硬件:FPGA礼物开发板 giftFPGA-A3 mini 核心芯片是Cyclone III EP3C5

与单片机相比,FPGA点亮LED更加容易,只需将相应的的引脚输出高电平即可。以下是A3 mini开发板的LED部分电路图。

 

LED1-4分别于Cyclone III EP3C5PIN_34PIN_38PIN_39PIN_42相连,只需根据需要将这四个引脚输出高电平即可。

以下是详细步骤:

打开Quartus II 10.0  SPI软件

点击工具条上的“新建”标签,如上图所示,

默认为 “New Quartus II Project”,不用更改,直接点击”OK”;

 

直接点击 Next

直接点击 Next

 

 

 这一步选则FPGA礼物开发板A3 mini使用的器件Cyclone III ,EP3CE144C8

后面不用更改,直接点击Finish即可。

        再次点击工具条上的“新建“标签。

选择Verilog HDL File.

在文件中输入以下代码内容

module led (input CLK, output[3:0] LED);

    reg[3:0] led_r;

    always @(posedge CLK) led_r=4’b1111;

    assign LED=led_r;

endmodule

保存为led.v文件,注意,此处文件名必须为led.v。第一次接触FPGA人的可能对上面的代码不能完全理解,不过没关系,完成几个实验后,自然就理解了。上面代码中CLK为时钟输入,在FPGA礼物开发板中,与EP3C5 PIN_22对应。LEDLED输出,与PIN_34PIN_38PIN_39PIN_42对应。通过上面的代码,几个简单的赋值语句,就可以点亮A3 mini开发板上四个LED.

文件保存后,首先编译以下,看有没有错误。方法是点击工具条上的紫色三角形标签。

接下来需要进行引脚分配,点击下图中标签。

 按下图分配引脚

重新编译一次。接下来就可以将程序下载到开发板中运行了,点击下图中的标签,

重新编译一次。接下来就可以将程序下载到开发板中运行了,点击下图中的标签,

 确保开发板和Usb blaster下载线连接正确,点击Start,开发板上四个LED应该就被点亮了。

实现点亮LED,下面来实现经典的LED跑马灯程序,你可以先将上面的代码注释掉,方法与C语言相同,单行用 //, 多行用/*  */,  将下面的代码输入。

module led (input CLK, output[3:0] LED);

    reg[3:0] led_r;

    reg[25:0] cnt;  //26为计数器

  

    always @(posedge CLK)

        begin

            cnt<=cnt+1'b1;

            if(cnt==26'd50000000)  //修改此值,可以改变跑马灯的频率

                begin

                    led_r=led_r<<1;

                    if(led_r==4'b0000)

                        led_r<=4'b0001;

                       cnt<=0;

                end

        end

    assign LED=led_r;

endmodule

 

上面的代码与第一个代码主要的不同,就是增加了一个计数器和移位运算,我们的FPGA礼物开发板上使用的晶振是50M, 在语句if(cnt==26'd50000000)中,此时跑马灯的频率就是1秒,显得有些慢,可以改为26’d10000000。频率0.2秒。移位运算是将一个四位二进制数(其中三位为零,一位为一)中的一不断的循环左移,这样就实现了跑马灯效果。


冠方科技  http://www.gifteks.com

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章