数字系统设计与硬件描述语言
期末考试作业
题目: 智能空调控制器的设计 学院: 电子信息工程学院 专业: 电子信息工程 学号: 3012204273 姓名: 王欢
2015-01-09
一、 选题设计描述
1. 功能介绍
对于这次的期末课程作业,我选择的是智能空调控制器的设计。众所周知,日常使用的空调至少具有定时、控温、模式选择等基本功能。我设计的这个智能空调主要能实现以下几种功能:
①四种模式选择:强风、弱风、自然风、睡眠状态。 ②工作时间设定:半小时、一小时、一个半小时、两小时。 ③工作温度设置:可以自由设置温度,然后将室温与设置的温度进行比较,当室温低于设置的温度时,空调温度升高;当室温高于设置的温度时,空调温度下降;并且当室温达到设置的温度时,温度就不再变化。 2. 算法简介
按照上述的几种功能介绍,我将分几个模块依次介绍:
①模式选择模块:因为有4种模式,所以用一个4路数据选择器就可以实现。“00”、“01”、“10”、“11”分别代表“强风”、“弱风”、“自然风”、“睡眠状态”。 ②时间设置模块:半个小时即三十分钟,可以用一个三十进制的计数器来实现定时,一个小时即六十分钟,可以用一个六十进制的计数器实现,依此类推即可。
③温度设置模块:室温与设置温度的比较需要用比较语句来实现,空调温度的增减都需要用计数器来实现,所以这是一个包含比较和计数两种功能的电路。
④开关模块:我采用的是一个是三输入开关控制器,三个输入分别代
表模式选择、时间设置、温度设置,只要其中有一个模块开始工作,那么开关就打开,空调就开始工作。
⑤显示模块:上述几个模块都需要这个模块来进行显示。用两个BCD-七段译码器来分别显示显示十位和个位。就可以看出温度和时间的变化。
二、 程序源代码及说明
①模式选择,四选一数据选择器:仿真见图一 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY xuanze IS
PORT(a,b,c,d,s1,s2 : IN STD_LOGIC; ---a,b,c,d是数据端口, s1和s2是选择端口。 y : OUT STD_LOGIC); END ENTITY xuanze;
ARCHITECTURE one OF xuanze IS
SIGNAL ss : STD_LOGIC_VECTOR (0 TO 1);
BEGIN ss<=s2&s1; ---将两个标准逻辑位类型变成一个标准逻辑矢量类型
PROCESS(ss) BEGIN
CASE ss IS ---用case语句实现多路选择