今天心情还真是蛮ok,因为今天终于调出了正弦波,结束了快两三个星期的调试。但过程真是无语……
接着上一篇文章,我很快就不往时序约束那个方向考虑了,因为发现之前编写的简单工程都会有这个warning而不影响结果,所以就不去考虑这个方向了。下午去找学长一起讨论,学长一看程序一样,而我的工程文件出不来结果他也是很郁闷。于是学长让我用同样的方法在他的电脑上重建工程,因为学长用的是quartusii 3.0版本,我的是11.0。
3.0版本界面真的和我的版本差很多,整个重建过程操作了很久,而且我发现低版本考虑的东西好少,因此编译过程超级快,都让我有装3.0的欲望了。
用同样的方法在学长的电脑上操作,能出来正弦波!真是无语了,难道真的是软件版本的问题?学长提示我,程序一样,唯一可能不一样的地方就是配置引脚的地方会不会出错。不过我都查过了好多次,配的都没错啊。
不过就在这时候,我发现了蹊跷。在仔细观察pin planner界面的时候,看到了两列选项:voltage 和current的选项。往选项一拉,voltage默认高电平3.3V,这个正常。而current选项那个地方好像是限流用的(见图)。
一开始设定的24mA,后来我一想,DDS工作的电流应该会很大吧,因为芯片挺烫的。之前出不来现象是不是被限流了。然后我把所有的引脚都不做限流,重新编译下载,奇迹出现了!!久违的波形啊!!看来是因为11.0太高级了,还默认给管脚做了限流。而低版本没有考虑,所有低版本很容易就出了现象。
学长也很诧异,居然会是这种现象,因为学长没用过高版本的quartus,不过他说真有可能是电流的原因。再加上芯片之前还有几个电阻限流,电流本来就很小的。再加个限流,直接把现象给限没了。
唉,调了这么久终于有了现象,真是豁然开朗。不过,要学习的还有很多,一定要加油!