北京邮电大学1数字系统设计实验报告基于CPLD的“郁金香”培养游戏的设计与实现学院:信息与通信工程学院班级:姓名:学号:指导老师:北京邮电大学2目录一.设计任务要求:......................................................................................................................31.基本要求:................................................................................................................................32.提高要求:................................................................................................................................4二.系统设计:..............................................................................................................................41.设计思路:................................................................................................................................42.总体结构框图:........................................................................................................................5三.仿真波形及波形分析:...........................................................................................................51.总体电路:................................................................................................................................5四.源代码:..................................................................................................................................51.按键消抖:................................................................................................................................52.信号分频:................................................................................................................................63.各种状态的显示........................................................................................................................74.数码管显示:..........................................................................................................................12五.实现功能说明:....................................................................................................................131.已完成基本功能:..................................................................................................................13六.实验故障分析:....................................................................................................................131.点阵无显示:..........................................................................................................................132.数码管显示闪烁:.....................................................................................错误!未定义书签。七.总结和结论:........................................................................................................................131.总结:......................................................................................................................................13北京邮电大学3一.设计任务要求:1.基本要求:1)SW7作为整机开关,打开后点阵全红、全绿交替全亮以2Hz闪烁,同时8个数码管同时亮“8“以2Hz频率闪烁,2秒后进入待播种状态:点阵全灭,数码管DISP7和DISP6显示“00”;2)按动BTN0表示“郁金香”播种,点阵显示如图(1)所示,同时数码管DISP7和DISP6从“00”开始秒计时;3)按动BTN7表示浇水,BTN6表示施肥,累计浇水2次施肥1次后,“郁金香”进入萌芽状态,点阵显示如图(2);4)浇水至少3次施肥至少2次后,“郁金香”进入含苞状态,点阵显示如图(3);北京邮电大学45)继续浇水累计至少4次施肥至少3次后,“郁金香”花朵“盛开”,点阵显示如图(4),同时数码管停止秒计时并以2Hz频率闪烁所计时间,表示本次养育成功;6)在“郁金香”培养的各阶段,用数码管DISP4、DISP2和DISP0分别显示该阶段的浇水、施肥和除虫次数,每到新的阶段数字清零重新开始计数;7)在“郁金香”培养过程中任一阶段,如果秒计时达到“39”,则时间显示停留在“39”,点阵上“郁金香”显示变为黄色,表示养育失败;8)按动BTN0表示播种一棵新的“郁金香”,养育成功或失败后可重新播种一棵,养育过程中不能重新播种。2.提高要求:1)增加背景音乐或其它合理的音效:如不同的按键音、成功后播放一曲欢快的乐曲;2)用LCD显示“郁金香”的成长过程并提示应该进行的操作;3)自拟其他功能。二.系统设计:1.设计思路:本实验要求利用可编程实验板进行实验,具体有键盘,点阵,数码显示管等硬件模块,需编写Verilog来实现各个部分内容。具体内容可分为信号分频,计时器,按键消抖,点阵显示,数码管显示等几个模块。2.总体结构框图:北京邮电大学5三.仿真波形及波形分析:1、整体仿真:通过在quatusII中模拟仿真,可以看出当,按下BTN0按键后,数码管显示和点阵显示都出现了变化。按了两下BTN7一下BTN6后,点阵显示“萌芽”状态;按了三下BTN7两下BTN6后。点阵显示“含苞”状态;按了四下BTN7三下BTN6后,点阵显示“盛开”状态,表示养育成功。四.源代码:1、按键消抖:北京邮电大学62、信号分频:北京邮电大学73、各种状态的显示:北京邮电大学8北京邮电大学9北京邮电大学10北京邮电大学11北京邮电大学123、数码管显示:五.实现功能说明:1.已完成基本功能:北京邮电大学131)数码管显示:包括倒计时,记录浇水和施肥的次数,以及最后结束时间的闪烁。2)点阵显示:包括各个种植阶段点阵不同的显示,以及种植失败后的显示。六.实验故障分析:1.点阵无法正确显示:在实验中遇到了点阵无法显示的问题。经检查发现,点阵的行选择信号是低电平,程序中为高电平。修改程序后,故障排除。2.无法正确执行功能:按btn0后,实验板没有反应。经检查发现。可能是按键接触不良,未能触发反应,可以通过更换实验板来和解决问题,如果没有实验板更换,可以更改按键管脚,把btn0换成btn1等。3.数码管显示闪烁:SW9拨开的位置错误,可能造成扫描频率低,引起数码管闪烁。也可能是分频太低,数码管轮换数次太慢,可以通过修改代码解决问题。七.总结和结论:1.总结:请大家自由发挥