eda课程设计基于vhdl的洗衣机控制器内容摘要:

0。 mid=not mid。 else count=count+1。 end if。 fout=mid。 end if。 end if。 end process。 end architecture one。 library ieee。 use。 entity freq_div1min is port(fout0:in std_logic。 fout1: out std_logic)。 end entity freq_div1min。 architecture one of freq_div1min is signal count:integer range 0 to 60。 signal mid:std_logic。 begin process(fout0) begin if fout039。 event and fout0=39。 139。 then if count=29 then 60 分频产生 1 分钟的周期时钟信号 count=0。 mid=not mid。 else count=count+1。 end if。 fout1=mid。 end if。 end process。 end architecture one。 d、状态控制模块 此模块是为了实现洗衣机的正转、暂停、反转的功能,它由一个状态控制模块构成,是典型的状态机。 LIBRARY IEEE。 USE。 USE。 ENTITY state IS PORT(CLK,t10a,t20a,finishb,START,ENTER: IN STD_LOGIC。 LED: OUT STD_LOGIC_VECTOR(2 DOWNTO 0)。 t10_ena,t20_ena: out std_logic。 P: OUT STD_LOGIC_VECTOR(7 DOWNTO 0))。 END state。 ARCHITECTURE one OF state IS TYPE STATES IS(ST0,ST1,ST2,ST3,ST4)。 SIGNAL C_ST:STATES。 BEGIN PROCESS(CLK,ENTER,T10A,T20A) BEGIN IF ENTER=39。 139。 OR FINISHB=39。 139。 OR START=39。 039。 THEN C_ST=ST0。 P=00000000。 LED=000。 T10_ENA=39。 039。 T20_ENA=39。 039。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN CASE C_ST IS WHEN ST0 = C_ST=ST1。 T20_ENA=39。 139。 T10_ENA=39。 039。 WHEN ST1 = LED=001。 p=00010100。 正转 IF T20A=39。 139。 THEN C_ST=ST2。 T20_ENA=39。 039。 T10_ENA=39。 139。 ELSE C_ST=ST1。 T20_ENA=39。 139。 T10_ENA=39。 039。 END IF。 WHEN ST2 = LED=010。 p=00001010。 暂停 IF T10A=39。 139。 THEN C_ST=ST3。 T20_ENA=39。 139。 T10_ENA=39。 039。 ELSE C_ST=ST2。 T20_ENA=39。 039。 T10_ENA=39。 139。 END IF。 WHEN ST3 = LED=100。 p=00010100。 反转 IF T20A=39。 139。 THEN C_ST=ST4。 T20_ENA=39。 039。 T10_ENA=39。 139。 ELSE C_ST=ST3。 T20_ENA=39。 139。 T10_ENA=39。 039。 END IF。 WHEN ST4 = LED=010。 p=00001010。 暂停。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。