【安路科技FPGA】从流水灯入门(软件环境、vivado仿真、流水灯)

1、资源

软件

        Anlogic TD软件(安陆自己的EDA)

        下载地址:https://pan.baidu.com/s/1xt8uA0fipQwLoUy2iu6zOg 

硬件
  • 安陆科技开发板EG4S20BG256
  • 5v电源线
  • ANFPGA_LINK下载器
资料
  •         EG4S20BG256_MINI_V2.0:开发板原理图
  •         TN316_安路科技EG4S20BG256_MINI板硬件使用指南
  •         TN317_安路科技EG4S20BG256_MINI板应用例程使用指南

下载地址:https://pan.baidu.com/s/1xt8uA0fipQwLoUy2iu6zOg 

 

2、软件安装与环境配置

2.1、下载.msi文件

双击运行,一路next安装,安装完成如下 

 

2.2、安装下载器驱动

 未安装驱动前是这样的,此时驱动没安装,下载器也扫描不到开发板

驱动文件所在位置,默认安装则在C:\Anlogic\TD5.6.2\driver\al-link\win10\x64

也就是软件安装位置下的driver文件夹

右击AL_link更新驱动,选择浏览电脑安装,并选择驱动文件夹,驱动则安装成功

 

 

2.3、驱动安装检查

开发板连接上电源、下载器

打开EDA软件,点击第一行最后一个绿标小按钮,下载界面已经识别到开发板芯片型号了

 

3、流水灯实例

流水灯模块代码
module led_test(
    //input
    input clk,//时钟 25M
    input rst_n,//复位,高电平复位
    
    //output
	output reg [7:0]led
);
 
reg [23:0]cnt_250ms;
parameter TIME_250ms = 24'b0101_1111_0101_1110_0001_0000;
 
always@(posedge clk or negedge rst_n) begin
    if (rst_n == 1'b0)
        cnt_250ms <= 24'd0;
    else if (cnt_250ms == TIME_250ms - 1)
        cnt_250ms <= 24'd0;
    else 
        cnt_250ms <= cnt_250ms + 24'd1;
end

always@(posedge clk or negedge rst_n) begin 
    if (rst_n == 1'b0)
        led <= 8'b00000000;
    else if (cnt_250ms ==TIME_250ms - 1)
        case(led)
        8'b0000_0000: led <= 8'b1111_1110;
        8'b1111_1110: led <= 8'b1111_1101;
        8'b1111_1101: led <= 8'b1111_1011;
        8'b1111_1011: led <= 8'b1111_0111;
        
        8'b1111_0111: led <= 8'b1110_1111;
        8'b1110_1111: led <= 8'b1101_1111;
        8'b1101_1111: led <= 8'b1011_1111;
        8'b1011_1111: led <= 8'b0111_1111;
        
        8'b0111_1111: led <= 8'b0000_0000;
        
        default: led <= 8'b0000_0000;
        endcase
    else
        led <= led;
end

endmodule

模块测试代码(在vivado中做波形分析的)
`timescale 1ns / 1ps

module tb();
    reg clk;
    reg rst_n;
    wire [7:0] led;
    
    initial clk = 0;
    always #(20) clk = ~clk;
    
    initial begin
        rst_n      = 1'b0 ;
        #50 rst_n      = 1'b1 ;
        #50 rst_n      = 1'b0 ;
        #50 rst_n      = 1'b1 ;
    end
    

    tt tt_b(
        .clk    (clk)   ,
        .rst_n  (rst_n) ,
        .led    (led)   
    );
endmodule

约束设置

在EDA软件tool->IO constrain中设置,需要查看电路原理图

clkT14时钟为25MHz
rst_nA2按键为低电平有效,复位
led0R15低电平有效性
led1R14
led2T12
led3T9
led4T8
led5T7
led6T6
led7T4
编译下载

 下载时,点击ADD添加bit文件,选择bit文件打开,并点击run ,便下载成功

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值