基于FPGA电梯控制系统仿真图.docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA电梯控制系统仿真图

系统主体模块的设计与仿真 附录A 电梯控制器总体框图 附录B 电梯控制器主体的程序 library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_arith.all; use IEEE.std_logic_unsigned.all; entity lift is port ( clk: in STD_LOGIC; --2hz信号 upin: in STD_LOGIC; --上升请求键 downin: in STD_LOGIC; --下降请求键 st_ch: in STD_LOGIC; --楼层选择键 close: in STD_LOGIC; --提前关门键 delay: in STD_LOGIC; --延时关门键 run_stop: in STD_LOGIC; --电梯运行开关 lamp: out STD_LOGIC; --运行或停止灯 run_wait: out STD_LOGIC_VECTOR (3 downto 0); --运行或等待时间 st_out: out STD_LOGIC_VECTOR (3 downto 0); --电梯所在楼层指示 direct: out STD_LOGIC_VECTOR (3 downto 0) --楼层选择指示 ); end lift; architecture rtl of lift is component led port(ledin:in std_logic_vector(3 downto 0); ledout:out std_logic_vector(6 downto 0)); end component; signal ur,dr:STD_LOGIC_VECTOR (9 downto 1); signal dir,liftor:integer range 0 to 8; signal wai_t:STD_LOGIC_VECTOR (2 downto 0); signal divide,hand,clkin:STD_LOGIC; signal ladd:STD_LOGIC_VECTOR (1 downto 0); signal closex,delayx:STD_LOGIC; --signal run_wait: STD_LOGIC_VECTOR (3 downto 0); --signal st_out: STD_LOGIC_VECTOR (3 downto 0); --signal direct: STD_LOGIC_VECTOR (3 downto 0); begin direct=conv_std_logic_vector(dir,4)+1; st_out=conv_std_logic_vector(liftor,4)+1; run_wait=0wai_t; lamp=ladd(1); hand=wai_t(2) and (not wai_t(1)) and wai_t(0); closex=close and (not ladd(1)); delayx=delay and (not ladd(1)); --urun_wait:led port map(run_wait,run_waitdis); --ust_out:led port map(st_out,st_outdis); --udirect:led port map(direct,directdis); p0:process(clk) begin if (clkevent and clk=1) then clkin=not clkin; --lamp=ladd(1); end if; end process p0; --hand=wai_t(2) and (not wai_t(1)) and wai_t(0); --closex=close and (not ladd(1)); --delayx=delay and (not ladd(1)); p1:process(clkin) begin if (clkinevent and clkin=1) then divide=not divide; if (dir=8) then dir=0; else dir=dir+1; end if; end if; end process p1; p2:process(ur,dr,dir,upin,downin,st_ch,liftor,wai_t,run_stop,hand) variable num,t:integer range 0 to 9; begin num:=liftor+1; t:=dir+1

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档