板子到手一个礼拜有余,前段时间考试,今天才跑跑看这块板子看看有什么问题,
首先,为什么要买这块板子呢?为了玩玩摄像头,我之前有块板子,但年代太久,配件难配。
进入主题吧
本来买来就是为了玩摄像头,所以我就在官方发的资料里套用他们的代码先熟悉一下板子和国产开发软件Efinity,结果一熟悉就直接到了晚上。
有什么问题呢,生成的bit文件下载到板子上无法跑出流水灯,一开始就以为是代码问题,先看了一遍,又将代码用之前的板子跑了一遍,发现代码没问题,那我就知道是配置pll的问题,这块板子使用时钟要先经过pll配置,然后我就把我配置的步骤一步一步与官网资料进行对比,没问题啊,而且,编译生成bit文件时它也没有给我报错。我就百思不得其解,网上关于这个的问题也寥寥无几
之后我还是在资料中教学视频中的一个画面发现了问题
这是我跑出来的结果,这串红色还得滚轮往下话,它才会现在,不然你光看右边那些文字,根本看不出来。
既然找到问题了,那怎么解决呢?
那就只能网上找了,没找到,网上资料太少了,我只能一直找一直找,我突然想起这个流水灯既然给了示例程序,那是不是给了bit文件,我就在官方资料05-FPGA_Examples文件中找到了流水灯的bit文件,下载bit文件进板子,结果板子正确的跑了出来,那不是板子的问题。
我发现,标红的在interface中,查了一下官方资料,发现与pll有关
这里我也还要吐槽一下,凭什么上面写25Mhz,下面图标24M啊,搞得我找到问题之前还以为是时钟问题,改了又改,这官方资料真是到处是坑。
既然知道问题来源,我就去看了看生成的interpace表
这是官方的
这是自己的
Unassigned Core Pins 这个翻译过来也是代码引脚意思,结合上图,我发现我少了个引脚约束
这时候问题来了,为什么我一步步跟着官方资料还会少了约束呢
其实是这块的问题
官方在叫我们配置pll时遗漏了右下角
这个要打开
打开这个,可以看出这个就是配置pll_inst1_LOCKED的关键,到这里主要问题也就解决了
而且流水灯也能运行了,就是不知道那标红的WNS如何解决。