跑马灯控制电路设计.doc

上传人:苏美尔 文档编号:7216987 上传时间:2020-11-06 格式:DOC 页数:11 大小:1.45MB
返回 下载 相关 举报
跑马灯控制电路设计.doc_第1页
第1页 / 共11页
跑马灯控制电路设计.doc_第2页
第2页 / 共11页
跑马灯控制电路设计.doc_第3页
第3页 / 共11页
跑马灯控制电路设计.doc_第4页
第4页 / 共11页
跑马灯控制电路设计.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《跑马灯控制电路设计.doc》由会员分享,可在线阅读,更多相关《跑马灯控制电路设计.doc(11页珍藏版)》请在三一文库上搜索。

1、HDL数字系统课程设计报告书目录一、设计目的1二、设计思路1三、设计过程13.1、系统方案论证13.2、程序代码设计2四、系统调试与结果5五、主要元器件与设备8六、课程设计体会与建议86.1、设计体会86.2、设计建议9七、参考文献9论文摘要: 共16个LED灯,连成一排,实现几种灯的组合显示。通过这次对跑马灯控制电路的设计与制作,了解了设计电路的程序,也了解了关于跑马灯工作的基本原理与设计理念,首先要将一个程序分成几个模块,分别调试每一个模块,当每个模块均能正常工作时,其次再将其都组合在一起再次调试与仿真,最后将程序下载到Altera公司ACEXTM系列EPEK30QC208-2芯片,观察程

2、序是否能控制硬件的实现。此外,本实验也可通过EDA软件Quartus6.0和modelSim SE 6.0实现。 关键词: HDL 数字系统 跑马灯 设计1、 设计目的1、熟悉Verilog HDL程序编程。2、掌握Altera公司ACEXTM系列EPEK30QC208-2芯片的使用方法。3、熟悉Quartus II 6.0和Modesim SE 6.0软件的使用。4、了解16个数码管的显示原理和方法。二、设计思路1、编写跑马灯设计程序。2、定义LED灯引脚分配。3、设计状态控制。 4、下载到EPEK30QC208-2芯片上显示。3、 设计过程 3.1、系统方案论证状 态 控 制 LED按奇数

3、,偶数依次显示LED由两侧向中间依次显示,由中间向两侧依次熄灭EPEK30QC208-2芯片实现LED顺序依次显示,顺序依次熄灭系统时钟 16位LED跑马灯设计框图如图1所示: 图1 LED跑马灯设计框图3.2、程序代码设计module paomadeng(rst,clk,sel,led); /端口定义,参数列表input rst,clk; /rst复位,clk为4Hz的时钟信号input1:0 sel; /sel 状态选择端口output15:0 led; /led 跑马灯显示reg15:0 led;reg15:0 led_r,led_r1;reg cnt1,dir; /cnt1控制状态2

4、led灯的亮次数reg3:0 cnt2; /cnt2控制状态2 led灯的亮次数reg2:0 cnt3; /cnt3控制状态2 led灯的亮次数always(posedge clk)begin if(rst) begin cnt1=0;cnt2=0;cnt3=0;dir=0;end else case(sel) / LED按奇数,偶数依次显示 2b00: begin led_r=16b0101010101010101; if(cnt1=0)led=led_r; else led=led_r1; cnt1=cnt1+1; end / LED顺序依次显示,顺序依次熄灭 2b01: begin if

5、(!dir) begin if(cnt2=0) begin led_r=16b0000000000000001;led=led_r;end else begin led=(led1)+led_r;end if(cnt2=15) begin dir=dir;end cnt2=cnt2+1; end else begin if(cnt2=0) begin led_r=16b1111111111111110;led=led_r;end else begin led=led1; end if(cnt2=15) begin dir=dir;end cnt2=cnt2+1; end end / LED由两

6、侧向中间依次显示,由中间向两侧依次熄灭2b11: begin if(!dir) begin if(cnt3=0) begin led_r=16b0000000000000001; led_r1=16b1000000000000000;end else begin led_r=(led_r1)|led_r1;end led=led_r|led_r1; if(cnt3=7)begin dir=dir;end cnt3=cnt3+1; end else begin if(cnt3=0) begin led_r=16b1111111111111110; led_r1=16b01111111111111

7、11;end else begin led_r=led_r1;end led=led_r&led_r1; if(cnt3=7)begin dir=dir;end cnt3=cnt3+1; end end default: ; endcaseendendmodule引脚分配:to,locationrst, pin_47 /复位引脚clk, pin_79 /时钟控制引脚sel0, pin_45 /状态控制引脚sel1, pin_46 /状态控制引脚led0, pin_19 /015个LED灯显示引脚led1, pin_24led2, pin_25led3, pin_26led4, pin_27le

8、d5, pin_28led6, pin_29led7, pin_30led8, pin_31led9, pin_36led10, pin_37led11, pin_38led12, pin_39led13, pin_40led14, pin_41led15, pin_444、 系统调试与结果 1、LED灯和波形结果显示结果如图2,3,4,5,6,7所示图2、先奇数灯亮,即第1、3、5、7、9、11、13、15灯亮图3、偶数灯亮,即第2、4、6、8、10、12、14、16灯亮 图4、按照1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16的顺序依次点亮 图5、按照1/2/

9、3/4/5/6/7/8/9/10/11/12/13/14/15/16的顺序依次熄灭所有灯 图6按照1/16、2/15、3/14、4/13、5/12、6/11、7/10、8/9的顺序依次点亮 图7、按照1/16、2/15、3/14、4/13、5/12、6/11、7/10、8/9的顺序依次熄灭灯波形显示: 图8、LED灯按先奇数,偶数灯亮 图9、LED灯依次按顺次亮,顺次熄灭图10,LED灯依次从两边向中间亮,两边向中间熄灭五、主要元器件与设备EDA技术试验箱,EDA软件Quartus6.0,ModelSim SE 6.0分频芯片: SN74HC04N2,SN74LS393N4片LED灯 16个L

10、ED灯,电脑一台六、课程设计体会与建议 6.1、设计体会通过这次对跑马灯控制电路的设计与制作,让我了解了设计电路的程序,也让我了解了关于跑马灯工作的基本原理与设计理念,首先要将一个程序分成几个模块,分别调试每一个模块,当每个模块均能正常工作时,其次再将其都组合在一起再次调试 与仿真,最后将程序下载到Altera公司ACEXTM系列EPEK30QC208-2芯片,观察程序是否能控制硬件的实现。但是最后的成品却不一定与仿真时完全一样,因为,电路模拟与仿真是在理想的环境下,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。此外,本实验也可通过EDA软件Q

11、uartus6.0和modelSim SE 6.0实现。通过这次学习,让我对各种电路的设计和控制都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际操作才会有深刻理解。 6.2、设计建议我希望老师在我们动手制作之前应先告诉我们一些关于所做电路的资料、原理,以及如何检测电路的方法,还有关于检测芯片的方法。这样会有助于我们进一步的进入状态,完成设计。七、参考文献 1美.Palnitkar.VerilogHDL数字设计与综合.北京:电子工业出版社,2010年; 2袁俊泉.verilog HDL数字系统设计及其应用.西安:西安电子科技大学出版社,2003年; 3黄继业.EDA技术实验教程.北京:科学出版社. 4夏宇闻.verilog数字系统设计教程.北京:北京航空航天大学出版社,2008年; 5贺敬凯.基于FPGA的专用CPU的设计.深圳: 深圳信息职业技术学院学报,2008年; 6潘松.EDA技术与VHDL.北京:清华大学出版社,2007年; 7 贺敬凯. verilog HDL数字设计教程.西安:西安电子科技大学出版社,2010年; 8李洪伟.基于Quartus的FPGA/CPLD设计.北京:电子工业出版社,2010年.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1