资源描述:
《彩灯控制器实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、现代电路与系统实验报告实验三彩灯控制器一、实验目的及要求设计一个彩灯控制器,能让一排灯自动改变显示花样,彩灯的变化方向有单向移动、双向移动,跳跃移动,从中间往两边移动和从两边往中间移动。二、实现程序modulelight(clk,rstn,out);inputclk,rstn;output[6:0]out;wireclk1,clk2;reg[1:0]s;reg[6:0]out;reg[2:0]state;parameters0=0,s1=1,s2=2,s3=3,s4=4,s5=5,s6=6,s7=7;fenf
2、en_1(.clk(clk),.rstn(rstn),.clk1(clk1),.clk2(clk2));always@(clk2)beginif(rstn==0)s<=0;elsebeginif(s==2'b11)s<=0;elses<=s+1'b1;endendalways@(posedgeclk1)beginif(rstn==0)state=s0;elsebegincase(state)s0:state=s1;s1:state=s2;s2:state=s3;s3:state=s4;s4:state=s5;
3、s5:state=s6;现代电路与系统实验报告s6:state=s7;s7:state=s0;endcaseendendalways@(state)begincase(s)2'b00:begincase(state)s0:out=;s1:out=;s2:out=;s3:out=;s4:out=;s5:out=;s6:out=;s7:out=;endcaseend2'b01:begincase(state)s0:out=;s1:out=;s2:out=;s3:out=;s4:out=;s5:out=;s6:ou
4、t=;s7:out=;endcaseend2'b10:begincase(state)s0:out=;s1:out=;s2:out=;s3:out=;s4:out=;s5:out=;s6:out=;现代电路与系统实验报告s7:out=;endcaseend2'b11:begincase(state)s0:out=;s1:out=;s2:out=;s3:out=;s4:out=;s5:out=;s6:out=;s7:out=;endcaseendendmodulefen(clk,rstn,clk1,clk2);
5、inputclk,rstn;outputclk1,clk2;regclk1,clk2;reg[25:0]count1,count2;always@(posedgeclk)beginif(rstn==0)begincount1<=0;clk1<=0;endelsebeginif(count1==)begincount1<=0;clk1<=~clk1;endelsecount1<=count1+1;endendalways@(posedgeclk)现代电路与系统实验报告beginif(rstn==0)beginc
6、ount2<=0;clk2<=0;endelsebeginif(count2==)begincount2<=0;clk2<=~clk2;endelsecount2<=count2+1;endendendmodule一、实验步骤1、建立新工程light,选择器件,择芯片family中选择laatticXP2,Device选择LFXP2-5E,PartNames选择LFXP2-5E-6TN144C。2、建立源文件。3、综合,编译。4、进行管教分配,在此实验中,采用按键19开关为rst复位键,按键21开关为clk时
7、钟信号,LED37,38,39,40,43,44,45分别显示7位输出。5、程序的烧写。二、实验结果实验板上的7盏LED灯依次是从左往右亮,然后是从中间往两边,再从两边往中间,最后是从左往右跳跃这亮,这几个过程依次循环,LED灯每次变化的间隔是0.5s。