电子技术课程设计基于EDA的流水灯控制器设计.doc

上传人:laozhun 文档编号:4145591 上传时间:2023-04-07 格式:DOC 页数:13 大小:197.50KB
返回 下载 相关 举报
电子技术课程设计基于EDA的流水灯控制器设计.doc_第1页
第1页 / 共13页
电子技术课程设计基于EDA的流水灯控制器设计.doc_第2页
第2页 / 共13页
电子技术课程设计基于EDA的流水灯控制器设计.doc_第3页
第3页 / 共13页
电子技术课程设计基于EDA的流水灯控制器设计.doc_第4页
第4页 / 共13页
电子技术课程设计基于EDA的流水灯控制器设计.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《电子技术课程设计基于EDA的流水灯控制器设计.doc》由会员分享,可在线阅读,更多相关《电子技术课程设计基于EDA的流水灯控制器设计.doc(13页珍藏版)》请在三一办公上搜索。

1、基于EDA的电子技术课程设计学 院 : 专 业 班 级: 题目编号 : 题目名称 : 流水灯姓 名 :学号 : 指 导 老 师: 一、题目B9 流水灯3设计一个流水灯控制器,第一次按下电钮k,8个流水灯首先以1、2、3、4、8、7、6、5的顺序亮灭,然后以4、3、2、1、5、6、7、8的顺序亮灭,周而复始,知道k再一次按下时停止流水灯的运行。二、原理框图1:状态机转换原理框图 三 顶层模块图及VHDL语言与仿真1、顶层模块图2、状态机vhdl语言及其仿真module state(k,clk,td5,t5,L1,L2,L3,L4,L5,L6,L7,L8);input k,clk,td5;outp

2、ut t5,L1,L2,L3,L4,L5,L6,L7,L8;reg 5:0 state,snext;reg t5,L1,L2,L3,L4,L5,L6,L7,L8;parameter s0=6b000000,s1=6b000001,s2=6b000011,s3=6b000010, s4=6b000110,s5=6b000111,s6=6b000101,s7=6b000100, s8=6b001100,s9=6b001101,s10=6b001111,s11=6b001110, s12=6b001010,s13=6b001011,s14=6b001001,s15=6b001000, s16=6b0

3、11000,s17=6b011001,s18=6b011011,s19=6b011010, s20=6b011110,s21=6b011111,s22=6b011101,s23=6b011100, s24=6b010100,s25=6b010101,s26=6b010111,s27=6b010110, s28=6b010010,s29=6b010011,s30=6b010001,s31=6b010000, s32=6b110000,s33=6b110001;always (posedge clk) state=snext;always (state or k or td5) begin cas

4、e(state) s0:if(!k) snext=s1;else snext=s0; s1:if(k) snext=s2;else snext=s1; s2:if(td5) snext=s3;else if(!k) snext=s1; else snext=s2; s3:snext=s4; s4:if(td5) snext=s5;else if(!k) snext=s1; else snext=s4; s5:snext=s6; s6:if(td5) snext=s7;else if(!k) snext=s1; else snext=s6; s7:snext=s8; s8:if(td5) sne

5、xt=s9;else if(!k) snext=s1; else snext=s8; s9:snext=s10; s10:if(td5) snext=s11;else if(!k) snext=s1; else snext=s10; s11:snext=s12; s12:if(td5) snext=s13;else if(!k) snext=s1; else snext=s12; s13:snext=s14; s14:if(td5) snext=s15;else if(!k) snext=s1; else snext=s14; s15:snext=s16; s16:if(td5) snext=

6、s17;else if(!k) snext=s1; else snext=s16; s17:snext=s18; s18:if(td5) snext=s19;else if(!k) snext=s1; else snext=s18; s19:snext=s20; s20:if(td5) snext=s21;else if(!k) snext=s1; else snext=s20; s21:snext=s22; s22:if(td5) snext=s23;else if(!k) snext=s1; else snext=s22; s23:snext=s24; s24:if(td5) snext=

7、s25;else if(!k) snext=s1; else snext=s24; s25:snext=s26; s26:if(td5) snext=s27;else if(!k) snext=s1; else snext=s26; s27:snext=s28; s28:if(td5) snext=s29;else if(!k) snext=s1; else snext=s28; s29:snext=s30; s30:if(td5) snext=s31;else if(!k) snext=s1; else snext=s30; s31:snext=s32; s32:if(td5) snext=

8、s33;else if(!k) snext=s1; else snext=s32; s33:snext=s2; endcase endalways (snext) begin case(snext) s0:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s1:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s2:begin t5=1;L1=1;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s3:begin t5=0;L1=0;L2=0;L3

9、=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s4:begin t5=1;L1=0;L2=1;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s5:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s6:begin t5=1;L1=0;L2=0;L3=1;L4=0;L5=0;L6=0;L7=0;L8=0;end s7:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s8:begin t5=1;L1=0;L2=0;L3=0;L4=1;L5

10、=0;L6=0;L7=0;L8=0;end s9:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s10:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=1;end s11:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s12:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=1;L8=0;end s13:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=

11、0;L7=0;L8=0;end s14:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=1;L7=0;L8=0;end s15:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s16:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=1;L6=0;L7=0;L8=0;end s17:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s18:begin t5=1;L1=0;L2=0;L3=0;L4=1;L5=0;L6=0;L7=

12、0;L8=0;end s19:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s20:begin t5=1;L1=0;L2=0;L3=1;L4=0;L5=0;L6=0;L7=0;L8=0;end s21:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s22:begin t5=1;L1=0;L2=1;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s23:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=

13、0;end s24:begin t5=1;L1=1;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s25:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s26:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=1;L6=0;L7=0;L8=0;end s27:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s28:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=1;L7=0;L8=0;end

14、 s29:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s30:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=1;L8=0;end s31:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end s32:begin t5=1;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=1;end s33:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end defa

15、ult:begin t5=0;L1=0;L2=0;L3=0;L4=0;L5=0;L6=0;L7=0;L8=0;end endcase endendmodule仿真结果3、计数器及其仿真结果ibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity jishu5 is port(clk,t5:in std_logic; td5:out std_logic; sc5:out std_logic_vector(2 to 0);end jishu5;architecture jishu5_arch of

16、jishu5 is signal qq:std_logic_vector(2 to 0); begin process(clk,t5) begin if t5=0 then qq=101; elsif clkevent and clk=1 then if qq/=000 then qq=qq-1;else qq=qq;end if; end if; end process; td5=1 when qq=000 else 0; sc5=qq(2 to 0);end jishu5_arch;仿真结果四、Protel99画电路板图1):下图为电路板管角的sch文件(2):下图为完整的电路板pcb封装图五、 参考文献1. 夏路易. 基于EDA的电子技术课程设计. 北京:电子工业出版社,2009.12. 阎石. 数字电子技术基础. 5版. 北京:高等教育出版社,2006.5.六、实验总结实验主要做了状态机、计数器、时钟等的设计,VHDL语言的编写及对应版块的仿真,连接制作PCB封装图等,完成了所要求的第一次按下电钮k,八个流水灯以1、2、3、4、8、7、6、5的顺序亮灭,然后再以4、3、2、1、5、6、7、8的顺序亮灭,周而复始,直到再次按下k流水灯运行停止运行。通过这次试验设计,我了解了VHDL语言的编写和一些电路的设计,也了解了一些相应软件的应用。

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号