vhdl考试时钟

上传人:re****.1 文档编号:486222289 上传时间:2023-04-25 格式:DOC 页数:17 大小:31KB
返回 下载 相关 举报
vhdl考试时钟_第1页
第1页 / 共17页
vhdl考试时钟_第2页
第2页 / 共17页
vhdl考试时钟_第3页
第3页 / 共17页
vhdl考试时钟_第4页
第4页 / 共17页
vhdl考试时钟_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《vhdl考试时钟》由会员分享,可在线阅读,更多相关《vhdl考试时钟(17页珍藏版)》请在金锄头文库上搜索。

1、实验报告应用技术一班朱晓园,汪仙仙,张明星,胡亚洲一:分频模块定义clk为时钟输入引脚。输入MHZ的频率。定义一种ck1h分频和ckl10H分频。LIARY ie;USEeee.std_lgic_116al;USEiee.tlgc_rh.al;SEiee.std_logc_unsignd.ll;ENTIY NPINISPOT(clk: IN T_LOGI;o: OT SD_LGIC;ocl100hz: OUTSTDLGIC);N ENPN;ARCHITECTUE NPIN _architcture OF EN ISGINprocess(ck)variablecnt:integer rnge0

2、to 00;beiifriedg(clk)thencn:ct+1;f =1000000heoclk1;els icnt=00 enct:;oclk0;eni;end if;en if; erocss;process(clk)varable cn1 :nteger ang0 o 0; begii iing_de(l)thenif cnt1=0 thcnt1:=0;oclk1hz;elsecn:=nt11;oclk100hz=0;endif;ed i;ed process;NDFENPIN _rctecture;二:按键消抖由于机械键盘存在抖动现象,因此需要用延时,软件去抖。这里用0HZ的频率,一

3、旦浮现低电平,就计数10次,一共00MS,然后再次检测,如果仍为低,就输出0信号。LIBRYee;USE ie.std_logic_1164.ll;S ieee.std_loicrih.all;USEieee.t_logic_nsall;NTIT XIAOO SPRT(clk : I SD_GI;rst_key: N _LOGIC;set_ey : N TD_LOG;position : N STD_LOGIC;ad : IN SD_LOIC;ositons :INTDGI;ddup_ti :I STD_LGI;rst_ime : OUST_LOGI;set_time : O SD_LOGI)

4、;EDXIODOU;ARHITECTUREXIADOU_rhtecture OF XIAODU ISsigalcn:std_loic_vector(3 on 0);GNprocess(clk)beinif rising_ede(c) tif rst_ky=1ten=00;rst_time=;elsfnt=10 therse;nt=cnt;scnt=nt+1;rst_time=1;eni;endif;enf;nd pros;ED XIAOOUrhitture;三:按键解决信号se键用来检测设立按键,第一次按下,为设立,第二次按下,为取消按键。stin为位置选择,按下一次选择第一种,按下二次为第二

5、次,以此类推。其他按键正常输出。LIRRY ee;S eee.s_logic_6.ll;SE ee.std_log_arith.ll;U ee.td_lousignedll;ENTITY ANJIANCHL ISPOT(lk : ISTDLOGIC;rst : I SD_OGI;et : IN STD_LOC;add: N D_LOIC;piio : I STD_LOIC;st_ou : OT TD_LGIC;st_out : UT SDLOGIC;ad_ot : OUT ST_LOGIC;posiion1 : OT STD_LOGI;sitio2 : OUTSTD_OGIC;position

6、3 :OUTST_LOGIC;postin4: UT ST_LOIC);N ANJIAHUI;RCHTECURE AJIACHULI_arhitecture OF NJIACHULI ISsignal nt:std_logicvector(1 dowto 0);siga n:std_logicector( downto);begnroes(se)beginif setventand s=0thencn=cnt+1;end if;nd proces;et_out=0whenc(0)=0 esewhen t (0)=0 else0;process(position)egni psitionevea

7、 positon 0encnt1=cnt+1;endif;ae cnt1 is when 0=osition1=;osition2=1;poiton3=;osiiopsiion1=;poiin0;ptin3=1;positin4ositin11;oitin2=1;posiion3ositio1=;positin2=;postion3=1;positon4=0;whn oters=null;e ase;ed proc;procs(clk)beginf inedge(c)thenrst_o=st;add_utad;di;en pcess;EN NJIANCULI_arhitetur;四:计数十十进

8、制计数为时钟个位计数,自动计数满10,Y进1给六进制模块。手动设立时,不进位LIRARY iee;USEst_logc_1164.all;USE ieee.stdlogic_ral;USE ie.std_ic_iged.al;ENTIY JISHUSHI ISORT(l :IN STD_OI;st :IND_OGIC;set : INSTD_LGC;dd : IN STD_GC;positon : I STD_LOIC;ataout : U STD_OIC_VECTOR(3 owt 0);os : OUTST_LOC);NDISI_vhd;RTCRE JISHUSH_vdarhtecture

9、OF JISHUvhd Isinal bufer_os:sdlogi;signal ddr_ufer:slogic_ector(3ownto0);sigal addct:std_logic_veco(3downto 0);BEGNbufer_os=0wen e clk;proces(set,position,ufrs)beginif rt0 haderuffe=00;elif set=ad psiion tender_ffeadd_nt;elsif risin_edge(buffer)hen adder_bufer01thnadder_buffer=00;os=;lsadder_ber=dr_

10、bffe1;os=0;en if;e i;nd proess;daut=addbuffer;press(add)begiifddvent nd add0heifadct1001head_cnt=000;eleadd_c=ad_n+1;end if;ed if;endproes;ENDJSHUSHIvhdacitctue;五:计数六六进制计数为时钟个位计数,自动计数满5,C进给十进制模块。手动设立时,不进位BRRYieee;E eestd_ogic64ll;UE ieee.stdogicarith.all;USEieee.t_lic_unsine.all;NTTY ISHUIUhd ISPOT(lk :IN _LOG;se :IN TD_LOGI;ad : IN STD_LOGIC;positon: INTD_LOGI;st : INTD_OGIC;daout : OU D_LOGI_VECTO(donto 0);o:OUTC);END JISHULIUvhd;ARCHIETE JISHLI_d_architcure OFJISHUvhdISsigal buffr_o :std_gic;ignal addr_uffe:sd_lgc_vector(3dowto0);ignaladdn:sd_locect(3 wnto 0);BEGINbuffer

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号