数电课程设计/数电大作业/VerilogHDL/电梯运行模拟器 您所在的位置:网站首页 verilog电梯控制系统 数电课程设计/数电大作业/VerilogHDL/电梯运行模拟器

数电课程设计/数电大作业/VerilogHDL/电梯运行模拟器

2023-08-25 01:06| 来源: 网络整理| 查看: 265

资源链接在文章底部(ps含 报告及完整工程文件) 1、设计内容

用EGO1板上资源设计高度为五层楼的电梯模拟器,在开发板上模拟电梯运行状态,并显示电梯运行时间。

1.利用板上五个按键S0,S1,S2,S3,S4,S5作为对应楼层呼叫按键;

2.利用数码管显示电梯运行楼层和目的楼层以及电梯运行时间;

3.使用LED1,LED2,LED3,LED4,LED5五个LED指示灯分别显示对应楼层呼叫状态,LED0显示电梯开关状态。

4.电梯每运行一层耗时一秒,开发板上电即电梯开始工作。

2、系统运行流程

系统初始时,电梯停在某一层。当没有楼层按键按下时,各LED指示灯处于熄灭状态;当有楼层按键按下时,对应LED指示灯亮起,左侧第二个数码管显示目的楼层,左侧第一个数码管显示电梯运行楼层。若使用者按错目的楼层,可再次按下对应楼层以取消之前的按键信息。

用的是下面这块板子

 

3、系统运行流程图

4、部分代码 1. module lift( 2. input clk, //输入时钟信号 3. input [4:0] btn, //按键信号 4. output [4:0] nfloor, //楼层信号 5. output [6:0] seg, 6. output [6:0] seg2, 7. output reg lift_open, //电梯开关门状态 8. output reg [7:0] EN_led //数码管使能 9. 10. ); 11. parameter maxcnt=50000; 12. parameter N = 99_999999; //100MHz 13. reg [4:0] btn_pre_re,,btn_off; //按键 14. reg clk_200ms; //200ms时钟 15. reg clk_1s; //1s时钟 16. reg clk_3s; //3s时钟 17. reg [31:0] count,count1,count3; 18. reg [5:0]count2; 19. reg [6:0] dout; 20. reg [6:0] dout2; 21. wire [27:0] dout_temp; 22. //wire [6:0] seg_temp; 23. wire [3:0] ans; 24. reg [3:0] ans_reg; 25. wire [9:0] bcd_s; 26. wire [9:0] bcd_m; 27. reg [9:0] reg_bcd_s; 28. reg [9:0] reg_bcd_m; 29. reg [1:0] lift_state; //电梯状态 30. reg [2:0] lift_num; //电梯运行楼层 31. reg [2:0] disp_bit=0; //要显示的位 32. reg [2:0] disp_data; //位 33. reg[15:0] divclk_cnt = 0; //分频计数值 34. reg divclk = 0; //分频后的时钟 35. 报告含系统简要说明,可直接提交,附完整工程文件,以调试好,可直接运行Vivado下载到EGO1中运行。 资源链接

C7KJ6DTF

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有