数电课程设计 - 出租车计费(2)
case(courrent_state)
IDLE:begin next_state<=A;end B:begin next_state<=C;end A:begin next_state<=B;end C:begin next_state<=D;end D:begin next_state<=E;end E:begin next_state<=A;end default:next_state<=IDLE; endcase end
always@(next_state) //将状态转化为stop的输出 begin case(next_state)
IDLE:begin stop1=0;stop2=0;stop3=0;stop4=0;stop5=0;end A:begin stop1=1;stop2=0;stop3=0;stop4=0;stop5=0;end B:begin stop1=0;stop2=1;stop3=0;stop4=0;stop5=0;end C:begin stop1=0;stop2=0;stop3=1;stop4=0;stop5=0;end D:begin stop1=0;stop2=0;stop3=0;stop4=1;stop5=0;end E:begin stop1=0;stop2=0;stop3=0;stop4=0;stop5=1;end
default:begin stop1=0;stop2=0;stop3=0;stop4=0;stop5=0;end endcase end
/******************************************/ endmodule
仿真结果:
由上图可以看出根据状态机对按键stop的检测可以将stop按下的次数转换为stop1--stop5的值输出。
5
总的程序模块:
endmodulemodule texi(clk,clk1,start,start1,stop,reset,s1,s2,s3,s4,s5); input clk,clk1,start,stop,reset,start1; output[3:0] s1,s2,s3,s4,s5; reg start_1,start1_1,stop_1,reset1; reg[3:0]s1,s2,s3,s4,s5; reg[2:0] A;
reg[9:0]s,t,cost_s,cost_t,cost;
reg[9:0]s_1,t1,cost_s1,cost_t1,cost1; //用来存放中间变量 /***************************************/
initial //数据初始化 begin
s1=0; s2=0; s3=0; s4=0; s5=0; s=0; t=0;
cost_s=0; cost_t=0; cost=0; A=3'b111; end
/********************************/
always@(posedge clk ) //按键消抖 begin start_1<=start; start1_1<=start1; stop_1=stop; reset1<=reset; end
/*************************************/
always@(negedge clk) //状态判断 begin if(start_1) A=3'b000; if(start1_1) A=3'b001; if(reset1) A=3'b111; if(stop_1) //在stop键按下的情况下对显示状态进行选择 begin
6
if(stop1)A=3'b110; if(stop2)A=3'b010; if(stop3)A=3'b011; if(stop4)A=3'b100; if(stop5)A=3'b101; end end
/***************************/
seqdet(clk,stop,stop1,stop2,stop3,stop4,stop5); //状态机调用 /***************************/
div1(clk,clk1_1); div2(clk1,clk2_1);
/***************************/
always@(posedge clk2_1) begin
if(A==3'b000) begin s=s+1; if(s<31) cost_s=80; else cost_s=cost_s+2; end
if(A==3'b111) begin s=0;
cost_s=0; end end
/*****************************/
always@(posedge clk1_1) begin
if(A==3'b001) begin t=t+10;
cost_t=cost_t+1; end
if(A==3'b111) begin t=0;
cost_t=0; end end
/****************************/
//f对时钟做分频处理 //路程计费程序 //时间计费程序 7
always@(posedge clk) //状态判断,现实选择模块 begin
cost=cost_s+cost_t; case(A)
3'b011: //显示走过的路程 begin s_1=s; s1=0;
s2=s_1%4'b1010; s_1=s_1/4'b1010; s3=s_1%4'b1010; s_1=s_1/4'b1010; s4=s_1%4'b1010; s5=s_1/4'b1010; end
3'b100: begin
cost_s1=cost_s; s1=0;
s2=cost_s1%4'b1010; cost_s1=cost_s1/4'b1010; s3=cost_s1%4'b1010; cost_s1=cost_s1/4'b1010; s4=cost_s1%4'b1010; s5=cost_s1/4'b1010; end
3'b101: begin t1=t; s1=0;
s2=t1%4'b1010; t1=t1/4'b1010; s3=t1%4'b1010; t1=t1/4'b1010; s4=t1%4'b1010; s5=t1/4'b1010; end
3'b110: begin
cost_t1=cost_t; s1=0;
s2=cost_t1%4'b1010; cost_t1=cost_t1/4'b1010; s3=cost_t1%4'b1010;
//显示路程收费 //显示等待时间 //显示时间计费 8
cost_t1=cost_t1/4'b1010; s4=cost_t1%4'b1010; s5=cost_t1/4'b1010; end
3'b111: //数据清零 begin cost=0; s1=0; s2=0; s3=0; s4=0; s5=0; end
default: //其他情况均显示总费用 begin
cost1=cost; s1=0;
s2=cost1%4'b1010; cost1=cost1/4'b1010; s3=cost1%4'b1010; cost1=cost1/4'b1010; s4=cost1%4'b1010; s5=cost1/4'b1010; end
endcase end
endmodule
仿真结果:
9
五.实验心得:
此次数电课程设计我们做的是出租车计费器系统,通过查阅参考资料明白了具体实现步骤,在老师的指导下进行编程、仿真、以及硬件连接显示,最终实现了出租车计费器系统的功能。刚开始编程时由于整体放在一块编,结果很繁琐并且编译出现了很多错误,后来同学建议把程序分成几个模块编写,这样不容易出错,这样编写果然容易多了并且终于编译仿真通过。
通过在QuartusⅡ软件下进行的模拟仿真,并进行相应的硬件下载调试,证明所设计的系统完成了出租车计费器的功能,各项技术指标符合预定标准,具有一定实用性。如果将该设计再结合到实际应用中,那么,只需改变设计中计费要求,就可以应用到出租车上。另外,如果再任意输入该出租车计价器的计费标准,那么,它的适用范围可能就更广泛了。本次课程设计还是比较有成就感的,因为遇到一些很棘手的问题,最终解决之后感觉很好,还学到一些之前没学到的东西。 …… 此处隐藏:1362字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高等教育]公司协助某村精准扶贫工作总结.doc
- [高等教育]高二生物知识点总结(全)
- [高等教育]苏教版数学三年级下册《解决问题的策略
- [高等教育]仪器分析课程学习心得
- [高等教育]2017年五邑大学数学与计算科学学院333
- [高等教育]人教版七年级下册语文第四单元测试题(
- [高等教育]2018年秋七年级英语上册Unit7Howmuchar
- [高等教育]2017年八年级下数学教学工作小结
- [高等教育]湖南省怀化市2019届高三统一模拟考试(
- [高等教育]四年级下册科学_基础训练及答案教材
- [高等教育]城郊煤矿西风井管路伸缩器更换施工安全
- [高等教育]昆八中20182019学年度上学期期末考试
- [高等教育]项目部各类人员任命书
- [高等教育]上市公司经营水务产业的模式
- [高等教育]人教版高二化学第一学期第三章水溶液中
- [高等教育]【中考物理第一轮复习资料】四.压强与
- [高等教育]金坑水电站报废改建工程机电设备更新改
- [高等教育]高中生物教学工作计划简易版
- [高等教育]2017年西华大学攀枝花学院(联合办学)44
- [高等教育]最新整理超短爆笑英文小笑话大全
- 优秀教师继续教育学习心得体会
- 阳历到阴历的转换
- 留守儿童教育案例分析
- 华师17春秋学期《玩教具制作与环境布置
- 测速传感器新型安装装置的现场应用
- 人教版小学数学三年级下册第四单元
- 创业个人意向书
- 山东省潍坊市2012年高考仿真试题(三)
- [恒心][好卷速递]四川省成都外国语学校
- 多少人错把好转反应当成了病情加重处理
- 中外广播电视史复习资料整理
- 江苏省扬州市江都区宜陵镇中学2014-201
- 工程造价专业毕业实习报告
- 广西师范学院心理与教育统计
- aympkrq基于 - asp的博客网站设计与开
- 建筑业外出经营相关流程操作(营改增后
- 人治 德治 法治
- [精华篇]常识判断专项训练题库
- 中国共产党为什么要实行民主集中
- 小学数学第三册第一单元试卷(A、B、C




