版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上1时间分频:module div(clk_50M,clk);/ 端口的定义input clk_50M;/ 总的时钟是50Moutput clk;/分频后输的时钟 reg clk;reg 31:0 count;/32位的计数器always (posedge clk_50M )/异步复位begin if(count=32'd25_)/ 判断计时器记到了25_吗 begin count<=32'd0;/计到25_计数器清零 clk<=clk;/输出的时钟取反 end/end begin else count<=count+1'd1;
2、/ 没计到25_计数器加一end/end alwaysendmodule / 结束分频模块2速度分频;module sududiv(op,clk_50M,clk,reset);/ 端口的定义input clk_50M,reset;/ 总的时钟是50Minput 2:0 op;output clk;/分频后输的时钟 reg clk;reg 31:0 count;/32位的计数器always (posedge clk_50M or negedge reset)/异步复位begin if(!reset) begin clk<='d0; count=32'd0; end else
3、 begin case(op) 3'b001: if(count=32'd50_)/ 判断计时器记到了25_吗 begin count<=32'd0;/计到25_计数器清零 clk<=clk;/输出的时钟取反 end/end begin else count<=count+1'd1;/ 没计到25_计数器加一 3'b010: if(count=32'd40_)/ 判断计时器记到了25_吗 begin count<=32'd0;/计到25_计数器清零 clk<=clk;/输出的时钟取反 end/end begi
4、n else count<=count+1'd1;/ 没计到25_计数器加一 3'b011: if(count=32'd30_)/ 判断计时器记到了25_吗 begin count<=32'd0;/计到25_计数器清零 clk<=clk;/输出的时钟取反 end/end begin else count<=count+1'd1;/ 没计到25_计数器加一 default:clk<=clk; endcase end/ end/end alwaysendmodule / 结束分频模块3系统时间计数:module xttimemo
5、kuai(clk,s,m,);/ 端口的定义input clk;output 7:0 s;/输出的秒output 7:0 m;/输出的分reg 7:0 s;reg 7:0 m; always(posedge clk )/异步复位beginif(s3:0=9)/ 秒的低四位是9 begin s3:0<=4'd0;/清零 if(s7:4=5) / 秒的高四位是5 begin s7:4<=4'd0; /清零 if(m3:0=9) / 分的低四位是9 begin m3:0<=4'd0; /清零 if(m7:4=9) / 分的高四位是9 m7:4<=4
6、39;d0; /清零 else m7:4<=m7:4+1'd1; / 分的高四位不是9加一 end else m3:0<=m3:0+1'd1; /分的低四位不是9加一 end else s7:4<=s7:4+1'd1; / 秒的高四位不是5加一 endelse s3:0<=s3:0+1'd1; /秒的低四位不是9加一 end/end always /产生time_enable信号。endmodule/结束计时模块4等候时间计数:module timemokuai(clk,reset,start,s,m);/ 端口的定义input clk,
7、reset,start;output 7:0 s;/输出的秒output 7:0 m;/输出的分reg 7:0 s;reg 7:0 m;always(posedge clk or negedge reset)/异步复位beginif(!reset)/低电平有效begin /复位s<=8'd0;m<=8'd0;endelse if(!start)/start 信号低电平有效beginif(s3:0=9)/ 秒的低四位是9 begin s3:0<=4'd0;/清零 if(s7:4=5) / 秒的高四位是5 begin s7:4<=4'd0;
8、/清零 if(m3:0=9) / 分的低四位是9 begin m3:0<=4'd0; /清零 if(m7:4=9) / 分的高四位是9 m7:4<=4'd0; /清零 else m7:4<=m7:4+1'd1; / 分的高四位不是9加一endelse m3:0<=m3:0+1'd1; /分的低四位不是9加一endelse s7:4<=s7:4+1'd1; / 秒的高四位不是5加一endelse s3:0<=s3:0+1'd1; /秒的低四位不是9加一 end/end alwaysend endmodule/结束
9、计时模块5里程计数:module distancemokuai(clk,start,reset,distance);/端口的定义input clk,start,reset;output 7:0 distance;/ 输出的公里reg 7:0 distance;always(posedge clk or negedge reset)/异步复位begin if(!reset)/低电平复位 begin distance<=8'd0; end else if(start)/ start 高电平有效 begin if(distance3:0=9)/判断distance的低四位计到了9没有
10、begin distance3:0<=4'd0;/计到9清零 if(distance7:4=9) /判断distance的高四位计到了9没有 distance7:4<=4'd0;/计到9清零 else distance7:4<= distance7:4+1'd1;/ distance的高四位没有计到9的时候加一 end else distance3:0<=distance3:0+1'd1;/ distance的低四位没有计到9的时候加一 end/end startend/end always/*产生distance_enable信号*/e
11、ndmodule/结束计程模块6费用计算模块:module fee(clk,bianjia,xuanze,juli,shijian,fee,fee1,danjia);input juli ,shijian,clk,bianjia,xuanze,danjia;wire 7:0r;reg 7:0r1;reg 7:0r2;reg 7:0p;wire 7:0p1;output 7:0fee;output 7:0fee1;wire 7:0juli;wire 7:0shijian;reg 7:0x1;reg 7:0x2;always(posedge clk)begin if(bianjia) begin
12、p=p+1; end else begin p=p-1; end endalways(juli or shijian)begin x1=juli7:4*10+juli3:0; if(juli<=8'd3) r1=6; else begin if(xuanze) begin r1=(x1-3)*(p+1)+6; end else begin r1=(x1-3)*(p+2)+6; end end /end else x2=shijian7:4*10+shijian3:0; r2=x2*1; end assign p1=xuanze?p+1:p+2;assign r=danjia?p1
13、:r1+r2;assign fee17:4=r/1000;assign fee13:0=(r-1000*fee17:4)/100;assign fee7:4=(r-100*fee1)/10;assign fee3:0=r%10;endmodule7系统和等候时间控制输出模块:module timecontrol(timecontrol,xts,xtm,s,m,xss,xsm);input7:0 s; /输入的秒input7:0 m; /输入的分。input7:0 xts; /输入的秒input7:0 xtm; /输入的分。output 7:0 xss;/输出的秒output 7:0 xsm;/
14、输出的分wire 7:0 xss;wire 7:0 xsm;input timecontrol;assign xss=timecontrol?xts:s;assign xsm=timecontrol?xtm:m;endmodule8费用高八位和里程的输出控制:module feecontrol(fee1,distance,shuchu,panduan);input7:0 fee1; /输入的秒input7:0 distance; /输入的分。output 7:0 shuchu;/输出wire 7:0 shuchu;input panduan;assign shuchu=panduan?dist
15、ance:fee1;endmodule9总体显示模块;module scan_led(distance,s,m,fee,segdat1,segdat2,segdat3,segdat4,segdat5,segdat6,segdat7,segdat8);/input outclk;input7:0 distance,fee; /输入的公里,费用。input7:0 s; /输入的秒input7:0 m; /输入的分。wire 3:0 dispdat1,dispdat2,dispdat3,dispdat4,dispdat5,dispdat6,dispdat7,dispdat8;output 7:0 s
16、egdat1,segdat2,segdat3,segdat4,segdat5,segdat6,segdat7,segdat8;/reg 3:0 dispdat1,dispdat2,dispdat3,dispdat4,dispdat5,dispdat6,dispdat7,dispdat8;reg 2:0 count_reg;reg 7:0 segdat1,segdat2,segdat3,segdat4,segdat5,segdat6,segdat7,segdat8;reg 3:0 count;reg7:0 min,sec,dis,money;/ assign dispdat8=fee7:4; /
17、qian shu shi wei assign dispdat1=s3:0; / miao de ge wei assign dispdat2=s7:4; /miao de shi wei assign dispdat3=m3:0; /fen de ge wei assign dispdat4=m7:4; /fen de shi wei assign dispdat5=distance3:0; /ju li ge wei assign dispdat6=distance7:4; /ju li shi wei assign dispdat7=fee3:0; /qian shu ge wei /m
18、iao de ge wei/always (dispdat1)begin case(dispdat1)4'h0: segdat1=8'b;/04'h1:segdat1=8'b;/14'h2:segdat1=8'b;/24'h3:segdat1=8'b;/34'h4:segdat1=8'b;/44'h5:segdat1=8'b;/54'h6:segdat1=8'b;/64'h7:segdat1=8'b;/74'h8:segdat1=8'b;/84'
19、;h9:segdat1=8'b;/9default: segdat1=8'b;/0endcaseend/miao de shi wei/always (dispdat2)begin case(dispdat2)4'h0: segdat2=8'b;/04'h1:segdat2=8'b;/14'h2:segdat2=8'b;/24'h3:segdat2=8'b;/34'h4:segdat2=8'b;/44'h5:segdat2=8'b;/54'h6:segdat2=8'b
20、;/64'h7:segdat2=8'b;/74'h8:segdat2=8'b;/84'h9:segdat2=8'b;/9default: segdat2=8'b;/0endcaseend/fen de ge wei/always (dispdat3)begin case(dispdat3)4'h0: segdat3=8'b;/04'h1:segdat3=8'b;/14'h2:segdat3=8'b;/24'h3:segdat3=8'b;/34'h4:segdat3=8
21、'b;/44'h5:segdat3=8'b;/54'h6:segdat3=8'b;/64'h7:segdat3=8'b;/74'h8:segdat3=8'b;/84'h9:segdat3=8'b;/9default: segdat3=8'b;/0endcaseend/ fen de shi wei/always (dispdat4)begin case(dispdat4)4'h0: segdat4=8'b;/04'h1:segdat4=8'b;/14'h2:s
22、egdat4=8'b;/24'h3:segdat4=8'b;/34'h4:segdat4=8'b;/44'h5:segdat4=8'b;/54'h6:segdat4=8'b;/64'h7:segdat4=8'b;/74'h8:segdat4=8'b;/84'h9:segdat4=8'b;/9default: segdat4=8'b;/0endcaseend/ju li de ge wei/always (dispdat5)begin case(dispdat5)4
23、39;h0: segdat5=8'b;/04'h1:segdat5=8'b;/14'h2:segdat5=8'b;/24'h3:segdat5=8'b;/34'h4:segdat5=8'b;/44'h5:segdat5=8'b;/54'h6:segdat5=8'b;/64'h7:segdat5=8'b;/74'h8:segdat5=8'b;/84'h9:segdat5=8'b;/9default: segdat5=8'b;/0endca
24、seend/ju li de shi wei/always (dispdat6)begin case(dispdat6)4'h0: segdat6=8'b;/04'h1:segdat6=8'b;/14'h2:segdat6=8'b;/24'h3:segdat6=8'b;/34'h4:segdat6=8'b;/44'h5:segdat6=8'b;/54'h6:segdat6=8'b;/64'h7:segdat6=8'b;/74'h8:segdat6=8'b;/84'h9:segda
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026-2031中国继电保护装置行业市场发展战略分析及投资前景专项预测报告
- 2026-2031中国轮椅行业市场前景预测及投资战略研究报告
- 2026-2031中国互感器变比极性测试仪市场发展战略及投资前景预测咨询报告
- 中国海油笔试题库及答案
- 信访督查员工作作风整顿方案
- 短视频营销的技巧与市场应用分析
- 基于大数据的工业自动化升级路径研究报告
- 广元市法院书记员招聘笔试真题2025
- 2025年百色市公益性岗位招聘真题
- 2024年昆明铁路局集团招聘考试真题
- T∕CEC 199-2019 船岸连接电缆管理系统技术条件
- 在互联网 背景下从化永辉驾校的营销策略研究
- 瓷砖地面除蜡合同
- 转基因的科学-基因工程智慧树知到期末考试答案章节答案2024年湖南师范大学
- 2022年版初中物理课程标准解读-课件
- 物业保洁品质提升方案及措施
- 北京国企招聘笔试题及答案
- 职业生涯规划材料化学
- 培训市场介绍
- 《驿路梨花》专题探究课件(悬念与构思)
- 学生干部团队合作
评论
0/150
提交评论