数字电路与逻辑设计实验报告简易电磁炉控制器的设计与实现_第1页
数字电路与逻辑设计实验报告简易电磁炉控制器的设计与实现_第2页
数字电路与逻辑设计实验报告简易电磁炉控制器的设计与实现_第3页
数字电路与逻辑设计实验报告简易电磁炉控制器的设计与实现_第4页
数字电路与逻辑设计实验报告简易电磁炉控制器的设计与实现_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北京邮电大学 数字电路实验北京邮电大学数字电路与逻辑设计实验报告实验名称:简易电磁炉控制器的设计与实现 班级:2011211122学号:班内序号:姓名:指导老师: 目录一、报告概要 1、课题名称2、报告摘要3、关键字二、设计任务和要求三、系统设计 1、设计思路2、总体框图(1) 系统结构框图(2) 模块划分方框图(3) ASM图(4) MDS图3、分块设计(1)分频模块(2)烹饪模式模块(3)火力调节模块(4)时间控制模块(5)数码管模块(6)关机模块 (7)防抖模块4、总体设计四、实现功能说明 1、已完成功能 2、器件的资源占用情况 3、关键波形仿真图及波形分析 4、必要的测试方法 五、故障

2、及问题分析六、实验总结与结论七、所用元器件及测试仪表清单八、完整源程序九、参考文献一、报告概要 1、课题名称 简易电磁炉控制器的设计与实现2、 报告摘要本次实验通过VHDL语言编程,Quartus II仿真及开发板上调试,模仿电磁炉的各种基本功能,包括烹饪模式选择,火力调节,定时及不定时选择,数码管、点阵显示、蜂鸣器提示等功能。充分运用模块编程的思想,利用状态机及自顶向下的设计方法,实现任务所要求的全部基本功能,并且在原有功能上实现了部分拓展。3、关键字 电磁炉控制器,VHDL,自顶向下2、 设计任务和要求 基本要求:1、烹饪模式选择:电磁炉的烹饪模式有火锅、煎炒、爆炒、煲汤和蒸炖五档可选。用

3、一个按键(BTN7)实现烹饪档位的选择(按下此键,依上述顺序依次变化),用点阵显示当前的烹调档位(火锅显示H、煎炒显示J、爆炒显示B、煲汤显示T、蒸炖显示Z),烹调档位的选择按键同时也是加热的开始按键,即烹调档位选定的同时电磁炉就以最大功率开始加热,没有选择时电磁炉处于停止状态,点阵不显示。 2、火力调节:电磁炉的火力分5档可调: 1900W-1500W-1100W-600W-100W,用数码管DISP3-DISP0显示当前的火力,用两个按键(BTN6和BTN5)实现火力的增加或减少,烹调过程中,除爆炒模式外,其它模式均可以随时可以调节火力,爆炒模式只能以最高功率加热。 3、定时功能:用一个按

4、键(BTN4)实现定时设置,按下定时键,蜂鸣器响一声,每按一次定时键,定时时间以5-10-30-60秒钟的顺序依次递增,定时设定完毕后,电磁炉开始倒计时。用数码管DISP5和DISP4显示定时档位和倒计时的过程,倒计时时间到后,电磁炉自动停止加热并关机。 4、不进行定时操作时,电磁炉以默认加热时间进行加热。蒸炖模式的默认时间为20秒钟;爆炒模式的默认时间是3秒钟,爆炒3秒钟后自动返回煎炒模式;其他模式的默认时间为90秒。 5、用点亮的发光二极管LD4表示开机加热,熄灭表示关机。 6、设置关闭键,任何时候按下关闭键即可将电磁炉关机。扩展功能:1、倒计时过程中通过8个发光二级管显示倒计时进度。2、

5、模式显示部分将点阵分为左右两半,采用不同的颜色显示。3、倒计时结束后放一段乐曲提示。(未实现)三、系统设计 1、设计思路简易电磁炉的设计过程采用自顶向下设计方法,从目的,即整个系统功能出发,按一定规则将系统划分为若干个子系统和功能模块,并且继续划分成更小的模块,直到每部分都能较为简单的实现。在实验中,先根据要实现的功能,将整个程序设计成了烹饪模式选择、火力调节、时间调节(倒计时与否)、微波炉状态切换这4个主要的子系统,同时设计适合不同模块工作的分频部分和与之相对应的显示部分。在这些子系统的设计中,最常用到的是利用状态机的原理实现电磁炉各个状态之间的转换。如状态选择部分通过按键BTN4实现火锅、

6、煎炒、爆炒、蒸炖和煲汤的切换;火力选择部分通过按键实现1900W到100W的切换。 2、总体框图 (1)系统结构图 (2) 系统逻辑划分方框图(3)ASM图(4)MDS图 3、分块设计 (1)分频模块 这部分按照教学网站上所给的50M分频器的实例设计了三个分频器,利用输入的50MHz时钟,分频后为1Hz、100Hz、1000Hz时钟。代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MDCL ISPORT(CLK: IN STD_LOGIC;-时钟);END MDCL;ARC

7、HITECTURE WY OF MDCL ISSIGNAL CNT1: INTEGER RANGE 0 TO 24999999; -频率1Hz计数SIGNAL CNT100: INTEGER RANGE 0 TO 249999; -频率100Hz计数SIGNAL CNT1000: INTEGER RANGE 0 TO 24999; -频率1000Hz计数SIGNAL CLK_FP: STD_LOGIC_VECTOR (2 DOWNTO 0); -分频后的时钟信号BEGINP1:PROCESS(CLK)BEGINIF CLK'EVENT AND CLK = '1' THE

8、NIF CNT1 = 24999999 THENCNT1<=0;CLK_FP(0)<= NOT CLK_FP(0);END IF;CNT1 <= CNT1 + 1;END IF;END PROCESS P1;P2:PROCESS(CLK)BEGINIF CLK'EVENT AND CLK = '1' THENIF CNT100 = 249999 THENCNT100<=0;CLK_FP(1)<= NOT CLK_FP(1);END IF;CNT100 <= CNT100 + 1;END IF;END PROCESS P2;P3:PRO

9、CESS(CLK)BEGINIF CLK'EVENT AND CLK = '1' THENIF CNT1000 = 24999 THENCNT1000<=0;CLK_FP(2)<= NOT CLK_FP(2);END IF;CNT1000 <= CNT1000 + 1;END IF;END PROCESS P3;END WY(2)烹饪模式选择模块模式选择是核心模块之一,也是程序的入口之处。在这个模块中根据BTN7的变化,利用状态机改变MOSHI端口上电平的输出,由于有六个状态(外加一个等待状态),故MOSHI为三变量组成的向量。烹饪选择后MOSHI信号

10、交由点阵显示部分显示输出。模式选择代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MDCL IS PORT(CLK: IN STD_LOGIC;-时钟MOSHI: IN STD_LOGIC;-模式选择BTN7: IN STD_LOGIC;-模式更改按键);END MDCL;ARCHITECTURE WY OF MDCL IS TYPE STATE_TYPE IS (WAIT,HG,JC,BC,BT,ZD);SIGNAL CLK_FP: STD_LOGIC_VECTOR (2

11、 DOWNTO 0); -分频后的时钟信号SIGNAL MOSHI: STATE_TYPE; -加热模式SIGNAL CURRENT_STATE: STD_LOGIC; -当前状态,是否为等待SIGNAL MSXZ: STD_LOGIC_VECTOR(2 DOWNTO 0); -加热模式的状态组合BEGIN P1:PROCESS(CLK_FP(0),BTN7)BEGINIF(CURRENT_STATE= '0') THENIF ( CLK_FP(0)'EVENT AND CLK_FP(0) = 1 ) THENCASE MOSHI IS WHEN WAIT =>

12、IF( BTN7 = '1') THEN MOSHI<= HG ;MSXZ<= "001"CURRENT_STATE <= '1' END IF; WHEN HG => IF( BTN7 = '1') THEN MOSHI<= JC ; MSXZ<= "010"CURRENT_STATE <= '1' END IF ; WHEN JC => IF( BTN7 = '1') THEN MOSHI<= BC ; MSXZ<

13、;= "011"CURRENT_STATE <= '1' END IF ; WHEN BC => IF( BTN7 = '1') THEN MOSHI<= BT ; MSXZ<= "100"CURRENT_STATE <= '1' END IF ; WHEN BT => IF( BTN7 = '1') THEN MOSHI<= ZD ; MSXZ<= "101"CURRENT_STATE <= '1'

14、END IF ; WHEN ZD => IF( BTN7 = '1') THEN MOSHI<= HG ; MSXZ<= "001"CURRENT_STATE <= '1' END IF ;END CASE;END IF;END IF;END PROCESS; END WY点阵扫描与数码管原理类似,数码管为位选每时刻选通一位,推送八位序列控制显示;而点阵扫描为对每一行进行选通,即对行扫描,列信息即为控制显示。需要特别注意的是,点阵(0,0)的位置在左下角。点阵显示代码如下:LIBRARY IEEE;USE IEEE.S

15、TD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MDCL ISPORT(CLK: IN STD_LOGIC;-时钟ROW: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);COL: OUT STD_LOGIC_VECTOR(7 DOWNTO 0););END MDCL;ARCHITECTURE WY OF MDCL ISSIGNAL CLK_FP: STD_LOGIC_VECTOR (2 DOWNTO 0); -分频后的时钟信号SIGNAL MSXZ: STD_LOGIC_VECTOR(2 DOWNTO 0);

16、 -加热模式的状态组合SIGNAL DZSM: STD_LOGIC_VECTOR(2 DOWNTO 0); -点阵辅助扫描显示SIGNAL CURRENT_STATE: STD_LOGIC; -当前状态,是否为等待P1:PROCESS(CLK_FP(2),MSXZ)BEGINIF (CLK_FP(2)'EVENT AND CLK_FP(2)='1') THENIF CURRENT_STATE ='1' THENCASE MSXZ ISWHEN "001"=> CASE DZSM ISWHEN "000" =&

17、gt; DZSM <="001" ROW <="01111111" COL<="01100110"WHEN "001" => DZSM <="010" ROW <="10111111" COL<="01100110"WHEN "010" => DZSM <="011" ROW <="11011111" COL<="0110

18、0110"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="01111110"WHEN "100" => DZSM <="101" ROW <="11110111" COL<="01111110"WHEN "101" => DZSM <="110" ROW <="

19、11111011" COL<="01100110"WHEN "110" => DZSM <="111" ROW <="11111101" COL<="01100110"WHEN "111" => DZSM <="000" ROW <="11111110" COL<="01100110"END CASE;WHEN "010"=>

20、CASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="00111110"WHEN "001" => DZSM <="010" ROW <="10111111" COL<="00001100"WHEN "010" => DZSM <="011" ROW <=&quo

21、t;11011111" COL<="00001100"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="00001100"WHEN "100" => DZSM <="101" ROW <="11110111" COL<="00001100"WHEN "101" => DZSM &

22、lt;="110" ROW <="11111011" COL<="01101100"WHEN "110" => DZSM <="111" ROW <="11111101" COL<="00111100"WHEN "111" => DZSM <="000" ROW <="11111110" COL<="00011000"

23、END CASE;WHEN "011"=> CASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="01111100"WHEN "001" => DZSM <="010" ROW <="10111111" COL<="01000010"WHEN "010" => DZSM

24、 <="011" ROW <="11011111" COL<="01000010"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="01111100"WHEN "100" => DZSM <="101" ROW <="11110111" COL<="01000010&quo

25、t;WHEN "101" => DZSM <="110" ROW <="11111011" COL<="01000010"WHEN "110" => DZSM <="111" ROW <="11111101" COL<="01000010"WHEN "111" => DZSM <="000" ROW <="11111110

26、" COL<="01111100"END CASE;WHEN "100"=> CASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="01111110"WHEN "001" => DZSM <="010" ROW <="10111111" COL<="01111110&q

27、uot;WHEN "010" => DZSM <="011" ROW <="11011111" COL<="00011000"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="00011000"WHEN "100" => DZSM <="101" ROW <="111101

28、11" COL<="00011000"WHEN "101" => DZSM <="110" ROW <="11111011" COL<="00011000"WHEN "110" => DZSM <="111" ROW <="11111101" COL<="00011000"WHEN "111" => DZSM <=&quo

29、t;000" ROW <="11111110" COL<="00011000"END CASE;WHEN "101"=> CASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="11111111"WHEN "001" => DZSM <="010" ROW <="1011

30、1111" COL<="00000010"WHEN "010" => DZSM <="011" ROW <="11011111" COL<="00000100"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="00001000"WHEN "100" => DZSM <=&q

31、uot;101" ROW <="11110111" COL<="00010000"WHEN "101" => DZSM <="110" ROW <="11111011" COL<="00100000"WHEN "110" => DZSM <="111" ROW <="11111101" COL<="01000000"WHEN &

32、quot;111" => DZSM <="000" ROW <="11111110" COL<="11111111"END CASE;WHEN OTHERS => CASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="00000000"WHEN "001" => DZSM <="01

33、0" ROW <="10111111" COL<="00000000"WHEN "010" => DZSM <="011" ROW <="11011111" COL<="00000000"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="00000000"WHEN "1

34、00" => DZSM <="101" ROW <="11110111" COL<="00000000"WHEN "101" => DZSM <="110" ROW <="11111011" COL<="00000000"WHEN "110" => DZSM <="111" ROW <="11111101" COL<

35、="00000000"WHEN "111" => DZSM <="000" ROW <="11111110" COL<="00000000"END CASE;END CASE;ELSECASE DZSM ISWHEN "000" => DZSM <="001" ROW <="01111111" COL<="00000000"WHEN "001" =&

36、gt; DZSM <="010" ROW <="10111111" COL<="00000000"WHEN "010" => DZSM <="011" ROW <="11011111" COL<="00000000"WHEN "011" => DZSM <="100" ROW <="11101111" COL<="0000

37、0000"WHEN "100" => DZSM <="101" ROW <="11110111" COL<="00000000"WHEN "101" => DZSM <="110" ROW <="11111011" COL<="00000000"WHEN "110" => DZSM <="111" ROW <="

38、11111101" COL<="00000000"WHEN "111" => DZSM <="000" ROW <="11111110" COL<="00000000"END IF;END IF;END PROCESS;END WY; (3)火力选择模块火力选择模块的由两个按键(BTN6和BTN5)实现火力的增加或减少,时钟信号给的是1KHz。显示部分需要数码管DISP3-DISP0显示当前的火力档位,输出为09的数字型,输出部分由单独的数码管显示模块完成

39、这里不做详述。根据火力大小种类可知:三变量组合(状态机)即可满足。注意:烹饪模式类型对火力选择的影响:爆炒模式不能改变火力,只能以最高功率加热。火力选择代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MDCL IS PORT(CLK: IN STD_LOGIC;-时钟HUOLI: IN STD_LOGIC;-火力选择BTN6: IN STD_LOGIC;-火力增强按键BTN5: IN STD_LOGIC;-火力减小按键);END MDCL;ARCHITECTURE WY O

40、F MDCL IS TYPE HUOLI_TYPE IS (1900W,1500W,1100W,600W,100W);SIGNAL CLK_FP: STD_LOGIC_VECTOR (2 DOWNTO 0); -分频后的时钟信号SIGNAL HLMOSHI: HUOLI_TYPE; -加热模式SIGNAL CURRENT_STATE: STD_LOGIC; -当前状态,是否为等待SIGNAL MSXZ: STD_LOGIC_VECTOR(2 DOWNTO 0); -加热模式的状态组合SIGNAL HLXZ: STD_LOGIC_VECTOR(2 DOWNTO 0); -火力大小的状态组合BEG

41、IN P1:PROCESS(CLK_FP(0),BTN6,BTN5)BEGINIF (CURRENT_STATE = '1') THEN IF(MSXZ /= "011") THENIF ( CLK_FP(0)'EVENT AND CLK_FP(0) = 1 ) THENCASE HLMOSHI IS WHEN 1900W => IF( BTN6 = '0' AND BTN5 = '1') THEN HLMOSHI<= 1500W;ELSE HLMOSHI <= 1900W ;HLXZ<= &#

42、39;001' END IF; WHEN 1500W => IF( BTN6 = '0' AND BTN5 = '1') THEN HLMOSHI<= 1100W;ELSEIF (BTN6 = '1' AND BTN5 = 0) THEN HLMOSHI <= 1900W; ELSE HLMOSHI <=1500;HLXZ<= '010' END IF; WHEN 1100W => IF( BTN6 = '0' AND BTN5 = '1') THEN H

43、LMOSHI<= 600W;ELSEIF (BTN6 = '1' AND BTN5 = 0) THEN HLMOSHI <= 1500W;ELSE HLMOSHI <=1100;HLXZ<= '011' END IF;WHEN 600W => IF( BTN6 = '0' AND BTN5 = '1') THEN HLMOSHI<= 100W;ELSEIF (BTN6 = '1' AND BTN5 = 0) THEN HLMOSHI <= 1100W; ELSE HLMOS

44、HI <=600;HLXZ<= '100' END IF;WHEN 100W => IF (BTN6 = '1' AND BTN5 = 0) THEN HLMOSHI <= 600W; ELSE HLMOSHI <=100;HLXZ<= '101' END IF;END CASE;END IF; ELSE HLMOSHI <=1900W; END IF;END IF;END PROCESS; END WY(4)时间模块该模块包含的内容丰富,可以划分为定时、不定时部分以及数码管显示部分和倒计时选择部分。定时

45、、不定时部分由另一段代码完成,用来根据是否输入BTN4以及BTN4的此数判断需要倒计时的时间(更改TIME)。代码中的TIME代表不同的倒计时,综合考虑了定时和非定时两种状态,依次是3s、5s、10s、20s、30s、60s、90s七种状态。主要代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MDCL ISPORT(CLK: IN STD_LOGIC;-时钟);END MDCL;ARCHITECTURE WY OF MDCL ISSIGNAL CLK_FP: STD_LOG

46、IC_VECTOR (2 DOWNTO 0); -分频后的时钟信号SIGNAL CAT: STD_LOGIC_VECTOR (2 DOWNTO 0); -位选信号SIGNAL TIME: STD_LOGIC_VECTOR(2 DOWNTO 0); -与加热有关的时间状态SIGNAL CURRENT_STATE: STD_LOGIC; -当前状态,是否为等待SIGNAL DISP5: STD_LOGIC_VECTOR (7 DOWNTO 0); -倒计时高位SIGNAL DISP4: STD_LOGIC_VECTOR (7 DOWNTO 0); -倒计时低位SIGNAL END: STD_LOG

47、IC; - 时间终止信号;P1:PROCESS(CLK_FP(0),MSXZ)BEGINIF CLK_FP(0)'EVENT AND CLK_FP(0)= '1' THEN IF CURRUNT_STATE = '1' THEN CASE TIME ISWHEN "001" => -3SDISP5 <= "11111100"CASE DISP4 IS WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN &qu

48、ot;11011010" => DISP4 <= "01100000" -2-1WHEN "01100000" => DISP4 <= "11111100" -1-0WHEN OTHERS => DISP4 <="00000000"END CASE;WHEN "010" => -5SDISP5 <= "11111100"CASE DISP4 IS WHEN "10110110" => DISP

49、4 <= "01100110"-5-4WHEN "01100110" => DISP4 <= "11110010"-4-3WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN "11011010" => DISP4 <= "01100000" -2-1WHEN "01100000" => DISP4 <= "11111100&quo

50、t; -1-0WHEN OTHERS => DISP4 <="00000000"END CASE;WHEN "011" => -10SCASE DISP5 ISWHEN "01100000" => DISP5 <= "11111100" -1-0WHEN OTHERS => DISP4 <="00000000"END CASE;CASE DISP4 ISWHEN "11110110" => DISP4 <= "1

51、1111110" -9-8WHEN "11111110" => DISP4 <= "11100000" -8-7WHEN "11100000" => DISP4 <= "10111110" -7-6WHEN "10111110" => DISP4 <= "10110110" -6-5WHEN "10110110" => DISP4 <= "01100110" -5-4WHEN &

52、quot;01100110" => DISP4 <= "11110010" -4-3WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN "11011010" => DISP4 <= "01100000" -2-1WHEN "01100000" => DISP4 <= "11111100" -1-0WHEN OTHERS => DISP4 <=

53、"00000000"WHEN "100" => -20SCASE DISP4 IS WHEN "11110110" => DISP4 <= "11111110" -9-8WHEN "11111110" => DISP4 <= "11100000" -8-7WHEN "11100000" => DISP4 <= "10111110" -7-6WHEN "10111110" =&

54、gt; DISP4 <= "10110110" -6-5WHEN "10110110" => DISP4 <= "01100110" -5-4WHEN "01100110" => DISP4 <= "11110010" -4-3WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN "11011010" => DISP4 <= "01

55、100000" -2-1WHEN "01100000" => DISP4 <= "11111100" -1-0WHEN "11111100" => IF DISP5 /= "11111100" THEN DISP4 <= "11110110" ELSE DISP4 <= "00000000" WHEN OTHERS => DISP4 <= "00000000"END CASE;CASE DISP5 IS

56、WHEN "11011010" => IF DISP4 ="11111100" THEN DISP5 <= "01100000" -2-1WHEN "01100000" => IF DISP4 ="11111100" THEN DISP5 <= "11111100" -1-0WHEN OTHERS => DISP5 <= "00000000"END CASE;WHEN "101" => -30S

57、CASE DISP4 IS WHEN "11110110" => DISP4 <= "11111110" -9-8WHEN "11111110" => DISP4 <= "11100000" -8-7WHEN "11100000" => DISP4 <= "10111110" -7-6WHEN "10111110" => DISP4 <= "10110110" -6-5WHEN "

58、;10110110" => DISP4 <= "01100110" -5-4WHEN "01100110" => DISP4 <= "11110010" -4-3WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN "11011010" => DISP4 <= "01100000" -2-1WHEN "01100000" => DI

59、SP4 <= "11111100" -1-0WHEN "11111100" => IF DISP5 /= "11111100" THEN DISP4 <= "11110110" ELSE DISP4 <= "00000000" WHEN OTHERS => DISP4 <= "00000000"END CASE;CASE DISP5 IS WHEN "11110010" => IF DISP4 ="111

60、11100" THEN DISP5 <= "11011010" -3-2WHEN "11011010" => IF DISP4 ="11111100" THEN DISP5 <= "01100000" -2-1WHEN "01100000" => IF DISP4 ="11111100" THEN DISP5 <= "11111100" -1-0WHEN OTHERS => DISP5 <= "

61、00000000"END CASE;WHEN "110" => -60SCASE DISP4 IS WHEN "11110110" => DISP4 <= "11111110" -9-8WHEN "11111110" => DISP4 <= "11100000" -8-7WHEN "11100000" => DISP4 <= "10111110" -7-6WHEN "10111110"

62、 => DISP4 <= "10110110" -6-5WHEN "10110110" => DISP4 <= "01100110" -5-4WHEN "01100110" => DISP4 <= "11110010" -4-3WHEN "11110010" => DISP4 <= "11011010" -3-2WHEN "11011010" => DISP4 <= "

63、;01100000" -2-1WHEN "01100000" => DISP4 <= "11111100" -1-0WHEN "11111100" => IF DISP5 /= "11111100" THEN DISP4 <= "11110110" ELSE DISP4 <= "00000000" WHEN OTHERS => DISP4 <= "00000000"END CASE;CASE DISP5

64、IS WHEN "10111110" => IF DISP4 ="11111100" THEN DISP5 <= "10110110" -6-5WHEN "10110110" => IF DISP4 ="11111100" THEN DISP5 <= "01100110" -5-4WHEN "01100110" => IF DISP4 ="11111100" THEN DISP5 <= "1

65、1110010" -4-3WHEN "11110010" => IF DISP4 ="11111100" THEN DISP5 <= "11011010" -3-2WHEN "11011010" => IF DISP4 ="11111100" THEN DISP5 <= "01100000" -2-1WHEN "01100000" => IF DISP4 ="11111100" THEN DISP

66、5 <= "11111100" -1-0WHEN OTHERS => DISP5 <= "00000000"END CASE;WHEN "111" => -90SCASE DISP4 IS WHEN "11110110" => DISP4 <= "11111110" -9-8WHEN "11111110" => DISP4 <= "11100000" -8-7WHEN "11100000"

67、 => DISP4 <= "10111110" -7-6WHEN "10111110" => DISP4 <= "10110110" -6-5WHEN "10110110" => DISP4 <= "01100110" -5-4WHEN "01100110" => DISP4 <= "11110010" -4-3WHEN "11110010" => DISP4 <= "

68、;11011010" -3-2WHEN "11011010" => DISP4 <= "01100000" -2-1WHEN "01100000" => DISP4 <= "11111100" -1-0WHEN "11111100" => IF DISP5 /= "11111100" THEN DISP4 <= "11110110" ELSE DISP4 <= "00000000" W

69、HEN OTHERS => DISP4 <= "00000000"END CASE;CASE DISP5 IS WHEN "11110110" => IF DISP4 ="11111100" THEN DISP5 <= "11111110" -9-8WHEN "11111110" => IF DISP4 ="11111100" THEN DISP5 <= "11100000" -8-7WHEN "1110000

70、0" => IF DISP4 ="11111100" THEN DISP5 <= "10111110" -7-6WHEN "10111110" => IF DISP4 ="11111100" THEN DISP5 <= "10110110" -6-5WHEN "10110110" => IF DISP4 ="11111100" THEN DISP5 <= "01100110" -5-4WHE

71、N "01100110" => IF DISP4 ="11111100" THEN DISP5 <= "11110010" -4-3WHEN "11110010" => IF DISP4 ="11111100" THEN DISP5 <= "11011010" -3-2WHEN "11011010" => IF DISP4 ="11111100" THEN DISP5 <= "01100000" -2-1WHEN "01100000" => IF DISP4 ="11111100" THEN DISP5 <= "11111100" -1-0WHEN OTHERS => DISP5 <= "00000000"END CASE;WHEN OTHERS => DISP5 <= "11111100" DISP4 <= "11111100"END CASE;END IF;END IF;IF (D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论