赞
踩
1.软件:
https://download.csdn.net/download/weixin_41784968/87564071
需要申请license才能使用:软件试用申请_软件试用申请_中科亿海微电子科技(苏州)有限公司
2.开发板:
芯片EQ6HL45,42.5k LUT。
3.官方例程:
4.上电,联机。注意板子需要单独用5V电源供电,下载器是不提供电源的。
5.运行eLinx,打开flow_led工程,如图:
6.按以下示意生成Bitstream文件
7.将板卡和下载器连好,点击“Open Target”,进入“Programmer”界面,点击“Auto Detect”探测到EQ6HL45。需要注意的是,Auto Detect有可能不成功,此时可重新插拔一下USB连线后再试。下载器主芯片为FT245R,市售的FT232H/FT2232H乃至国产的CH347模块均不能实现下载功能。下载图示如下:
8.点击“Add File”,在工程所在的目录下\flow_led.runs\imple_1目录下找到flow_led.jpsk文件,点击“Start”下载到开发板,实现跑马灯效果。
9.官方提供的跑马灯是亮3个灯,不亮的灯移动,因此效果不太明显,点开源程序,将led<=4'b0001修改为led<=4'b0111,保存(务必要做),重新生成Bitstream文件,重新下载。
11.进一步,改为可控双向跑马灯,代码如下:
- module flow_led(
- input sys_clk , //系统时钟
- input sys_rst_n, //系统复位,低电平有效
- input k, //移位方向控制
- output reg [3:0] led //4个LED灯
- );
-
- //reg define
- reg [23:0] counter;
-
- //*****************************************************
- //** main code
- //*****************************************************
-
- //计数器对系统时钟计数,计时0.2秒
- always @(posedge sys_clk or negedge sys_rst_n) begin
- if (!sys_rst_n)
- counter <= 24'd0;
- else if (counter < 24'd1000_0000)
- counter <= counter + 1'b1;
- else
- counter <= 24'd0;
- end
-
- //通过移位寄存器控制IO口的高低电平,从而改变LED的显示状态
- always @(posedge sys_clk or negedge sys_rst_n) begin
- if (!sys_rst_n)
- led <= 4'b0111;
- else if(counter == 24'd1000_0000)
- led[3:0]<= (k==1)?{led[2:0],led[3]}:{led[0],led[3:1]};
- else
- led <= led;
- end
-
- endmodule
即增加了一个输入端k,利用三目运算符给led[3:0]赋了两个值。I/O Planning修改引脚,k设为F2:
下载测试,不按KEY2时跑马灯自左往右,按下KEY2自右往左。
12.选择Flash模式,再次“Auto Detect”,点击“Start”,经过漫长时间(2-3分钟),程序下载成功,重新上电,Flash模式成功,即掉电后程序不丢失(JTAG模式掉电后程序丢失)。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。