第三章 软件设计
3.1 程序总流程图
3.2框图(Visio绘制)
3.3 Verilog HDL源程序 (见附录)
第四章 结果与讨论
4.1 实验调试 4.1.1 调试步骤
软件调试:
运行Quartus II软件,观看仿真波形,为了让数码管显示稳定,我们将原来的50MHZ的时钟信号进行了10000分频,这样以来,我们的display就不能很好的在仿真波形中显示,为此,我们把中间变量price和price_all(即控制display的变量)调出来显示,只要price和price_all显示正确,仿真就成功。仿真波形如下:
硬件调试:
在软件调试调试成功的情况下,接下来我们要进行硬件调试,步骤如下: ①运行Quartus II软件,打开工程。 ②再次编译源程序(见附录)。 ③分配管脚(见附录)。
④将生成的.sof文件写入FPGA试验箱中。
⑤根据要求选择几种买东西的可能情况,在实验箱上实验,观察记录结果。
实物拍照:
交易成功的照片流程(图中拨码开关从左到右依次对应:商品1(0.5元),商品2(1元),商品3(1.5元),商品4(2元),投币0.5元,投币1元,投币5元。图中按键从左到右第三个为确认,第四个为复位):
照片依次为:初始状态,商品选择状态,投币状态,确认交易状态。
交易不成功的照片流程(第三个图中左边的LED不应该亮,之所以亮是忘了复位了):
4.1.2 实验现象
⑴选择买1.5元的商品,投5元的金额,调试现象如下:
①选择1.5元商品数码管显示1.5,再选择一种商品,数码管显示初始状态(88),重新进行商品选择。
②按下5元投币键,对应数码管显示5.0。
③按下确认购买开关,找零时,对应数码管显示3.5,对应1.5元商品的LED灯亮。 ⑵选择1.5元的商品,投0.5元的金额,调试现象如下:
①选择1.5元的商品,对应数码管显示1.5。 ②按下0.5元的投币键,对应数码管显示0.5。
③找零显示0.5元,退回所投的钱,表示警告的LED灯亮(交易不成功)。
4.2 结果与分析
调试过程中出现的问题及原因:
① 数码管显示不正确。管脚配置不正确导致数码管显示异常。
② 重新分配管脚后,仍为先前程序的操作结果。重新配置管脚后,未运行程序,使得
烧写进去的仍为原先的程序。
③步进电机送货不理想,该送的时候送,不该送的时候也送,再次查看相关源程序,多
次修改调试。。
参考文献
[1] 夏宇闻 编著 《Verilog数字系统教程》 北京航空航天出版社 [2] 梁瑞宇 编写《FPGA设计实验指导书(Verilog HDL)》
[3] 潘松 等 著EDA技术实用教程:Verilog_HDL版(第4版)