写了个verilog流水灯程序,quartus一直提示子模块重复定义。

写了个verilog流水灯程序,quartus一直提示子模块重复定义。,第1张

这是你交叉`include出现的问题

推荐你在divd.v

开头写上

`ifndef DIVD_V

`define DIVD_V

在最后写上

`endif

这样只要文件之前被include过了,就会有DVID_V这个define,这样就能避免同一个文件在不同的地方被include造成的重复declare

*** 作编码如下:

int strlen(char *p)

{

int i=0

while(*p++)i++

return i

}

#include <stdio.h>

#include <string.h>

void main()

{

char x[3]={0}

x[0]='a'

x[1]='b'

x[2]='c'

int len=strlen(x)

printf("%c %d \r\n",x[6],len)

}

过程步骤:

1)在Vivado软件里找到Settings设置选项,进入,点击Bitstream选项,将 bin_file 勾上,点击 OK

2)点击 generate bitstream (可以分步进行,Run Synthesis—Run implementation— genereate bitstream),生成 bit 文件和 bin 文件。

3)点击 open hardware manager,连接板子

4)在Hardware面板中右击FPGA器件(xc7a35t_0),选择Add Configuration Memery Device。

5)在d出的添加配置存储器的界面中,找到板载的Flash存储器型号,点击OK,完成添加。这里开发板flash型号是( n25q64 )选择3.3v。

6)添加完成后,Vivado会提示添加完成,是否立即配置存储器。点击OK,进入配置存储器的界面,开始将二进制bin文件烧写到外部配置flash存储器中。

7)找到二进制bin文件,选中,进行代码烧写, 实现上电自启动,完成程序固化。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11298945.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存