当前位置:   article > 正文

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

安路fpga教程

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、流水灯实例

流水灯模块代码
  1. module led_test(
  2. //input
  3. input clk,//时钟 25M
  4. input rst_n,//复位,高电平复位
  5. //output
  6. output reg [7:0]led
  7. );
  8. reg [23:0]cnt_250ms;
  9. parameter TIME_250ms = 24'b0101_1111_0101_1110_0001_0000;
  10. always@(posedge clk or negedge rst_n) begin
  11. if (rst_n == 1'b0)
  12. cnt_250ms <= 24'd0;
  13. else if (cnt_250ms == TIME_250ms - 1)
  14. cnt_250ms <= 24'd0;
  15. else
  16. cnt_250ms <= cnt_250ms + 24'd1;
  17. end
  18. always@(posedge clk or negedge rst_n) begin
  19. if (rst_n == 1'b0)
  20. led <= 8'b00000000;
  21. else if (cnt_250ms ==TIME_250ms - 1)
  22. case(led)
  23. 8'b0000_0000: led <= 8'b1111_1110;
  24. 8'b1111_1110: led <= 8'b1111_1101;
  25. 8'b1111_1101: led <= 8'b1111_1011;
  26. 8'b1111_1011: led <= 8'b1111_0111;
  27. 8'b1111_0111: led <= 8'b1110_1111;
  28. 8'b1110_1111: led <= 8'b1101_1111;
  29. 8'b1101_1111: led <= 8'b1011_1111;
  30. 8'b1011_1111: led <= 8'b0111_1111;
  31. 8'b0111_1111: led <= 8'b0000_0000;
  32. default: led <= 8'b0000_0000;
  33. endcase
  34. else
  35. led <= led;
  36. end
  37. endmodule
模块测试代码(在vivado中做波形分析的)
  1. `timescale 1ns / 1ps
  2. module tb();
  3. reg clk;
  4. reg rst_n;
  5. wire [7:0] led;
  6. initial clk = 0;
  7. always #(20) clk = ~clk;
  8. initial begin
  9. rst_n = 1'b0 ;
  10. #50 rst_n = 1'b1 ;
  11. #50 rst_n = 1'b0 ;
  12. #50 rst_n = 1'b1 ;
  13. end
  14. tt tt_b(
  15. .clk (clk) ,
  16. .rst_n (rst_n) ,
  17. .led (led)
  18. );
  19. endmodule

约束设置

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

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/588536
推荐阅读
相关标签
  

闽ICP备14008679号