如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
陕西国防工业职业技术学院实训报告科目CPLD技术实训班级信息3101班姓名及学号房显斌29#刘国翠01#指导教师李想孙浩文2011年12月12日八路可调速跑马灯十六路可调速跑马灯4*4键盘扫描电路简单时钟十五人表决器乒乓球游戏交通灯出租车计费器数码扫描显示CPLD技术实训项目记录卡编号(001)项目名称八路可调速跑马灯项目组成员房显斌刘国翠项目内容实验程序:LIBRARYIEEE;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;ENTITYlights8ISPORT(clk,rst:INstd_logic;q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDlights8;ARCHITECTUREoneOFlights8IS----定义4种模式typestatesis(s0,s1,s2,s3);signalpresent:states;signalq1:STD_LOGIC_VECTOR(7DOWNTO0);signalcnt:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(clk,rst)BEGIN----系统复位ifrst='1'thenpresent<=s0;q1<=(others=>'0');elsifclk'eventandclk='1'thencasepresentis----s0模式:从左到右逐个点亮LEDwhens0=>ifq1="00000000"thenq1<="10000000";elsifcnt="0111"thencnt<=(others=>'0');q1<="00000001";present<=s1;elseq1<=q1(0)&q1(7DOWNTO1);cnt<=cnt+1;present<=s0;endif;----s1模式:从右到左逐个点亮LEDwhens1=>ifcnt="0111"thencnt<=(others=>'0');q1<="10000001";present<=s2;elseq1<=q1(6DOWNTO0)&q1(7);cnt<=cnt+1;present<=s1;endif;----s2模式:从两边到中间逐个点亮LEDwhens2=>ifcnt="0111"thencnt<=(others=>'0');q1<="00011000";present<=s3;elseq1(7DOWNTO4)<=q1(4)&q1(7DOWNTO5);q1(3DOWNTO0)<=q1(2DOWNTO0)&q1(3);cnt<=cnt+1;present<=s2;endif;----s3模式:从中间到两边逐个点亮LEDwhens3=>ifcnt="0111"thencnt<=(others=>'0');q1<="10000000";present<=s0;elseq1(7DOWNTO4)<=q1(6DOWNTO4)&q1(7);q1(3DOWNTO0)<=q1(0)&q1(3DOWNTO1);cnt<=cnt+1;present<=s3;endif;endcase;endif;ENDPROCESS;q<=q1;ENDARCHITECTUREone;2,时序波形图:3,实验结果显示如图:编号(002)项目名称十六路可调跑马灯项目内容实验代码:LIBRARYIEEE;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;ENTITYlights16ISPORT(clk:instd_logic;----1MHz时钟输入信号rst:instd_logic;----复位信号spd:instd_logic_vector(1downto0);q:outstd_logic_vector(15downto0));ENDlights16;ARCHITECTUREoneOFlights16IStypestatesis(s0,s1,s2,s3);----定义4种模式signalpresent:states;signalclk8hz:std_logic;signalclkq:std_logic;signalq1:std_logic_vector(15downto0);signalcnt:std_logic_vector(3downto0);BEGINprocess(clk)----8H