冰箱温度控制系统.docx
《冰箱温度控制系统.docx》由会员分享,可在线阅读,更多相关《冰箱温度控制系统.docx(9页珍藏版)》请在冰豆网上搜索。
冰箱温度控制系统
冰箱温度控制系统
1.引言
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁
剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
它对实时任务有很强的支持能力,有可扩展的处理器结构,而且功耗很低,由于这些特性,近几年嵌入式系统开始风靡。
应用的领域更是广泛,通讯、仪器、仪表、汽车、船舶、航空航天、军事装备、消费类产品等方面均是嵌入式的应用领域。
随着技术的迅速发展,家用电器的发展日新月异。
家里的冰箱由最初的单门到双门,由有氟到无氟,由手动调节到电脑微控,我是亲眼见证。
现在用的冰箱就是带有显示的微电脑自动控制,因此在做设计时考虑自己尝试设计一个简单冰箱温度控制系统。
2.系统功能及硬件描述
在冰箱温度控制系统中,中央控制器通过总线和各个单元进行实时通
讯并完成各项控制和显示功能。
单元是温度感应器、手动调节按钮、温度显示器以及温度调节器。
他们是系统的终端设备,温度感应器采集温度信息,通过A/D转换,经过通道上报给控制器,同时转发给温度显示器和温度调节器,温度调节器根据接收到的温度调节冰箱内的温度,同时也可以手动调节温度,按下手动调节按钮后,发出中断,控制器读取信息后发送给温度调节器和温度显示器。
图1冰箱温度控制系统结构框图
(1)Z80和内存以及地址分配
因为小组合作设计的时候用的是Z80,相对比较熟悉,所以还是选用Z80。
CPU与内存连接示意图如下:
图2CPU与内存连接图
图2表示CPU与内存连接情况,具体地址分配在后面会介绍,用高位地址线A15作为片选信号,MERQ有效情况下,当A15为0时,片选ROM,当A15为1时片选RAM。
ROM和RAM分别采用芯片28F256和27C256。
图3Z80引脚图
Z80是8位的微处理器,它是第四代改进的微处理器。
有40个引脚,引脚图如上所示。
A0到A15是16位地址线,其中内存使用16位,而I/O只使用低8位。
D0到D7是8位数据线,用于与内存以及I/O的数据交互。
其他几个主要的引脚有:
MREQ(MemoryRequest)为低时表示内存地址有效,因为Z80中内存地址和I/O地址是分开的;IORQ(I/ORequest)为低时表示I/O地址有效;INT和NMI分别表示可屏蔽中断和不可屏蔽中断。
图4地址连线图
在本系统中,地址分配情况为:
A15A14……………………A1A0
00……………………00/1
00…………………………0/1ROM(0000H---7FFFH)
00……………………10/1
A15A14……………………A1A0
10……………………00/1
10…………………………0/1RAM(8000H---FFFFH)
10……………………10/1
A15A14……………………A1A0
00…………………………0/1I/O扩展部分
11…………………………0/1(0000H---FFFFH)
I/O端具体地址分配:
A/D转换(ADC0804):
0000H——0003H
D/A转换(DAC0832):
0004H——0007H
调节键盘(8279):
0008H——000BH
温度调节器:
000CH
(2)A/D转换(ADC0804)和D/A转换(DAC0832)
A/D转换:
A/D转换模块比较简单,由温度感应器采集到温度信息后,送给ADC0804进行A/D转换。
图5ADC0804芯片引脚图
ADC0804芯片是8位芯片,主要引脚功能:
CS:
片选信号,低电平有效
WR、RD:
读写信号,低电平有效
Vin+、Vin-:
模拟信号输入量,由温度传感器通过电平调整产生。
INTR:
中断请求信号,低电平有效,在系统中没有使用
DB0——DB7:
8位数据输出信号。
D/A转换:
实现对数据模拟化,以控制温度调节器。
使用8位ADC0832芯片,芯片内数据两极缓存,同时使用并口芯片8055模拟量引脚信号Iout1和Iout2。
DAC芯片引脚图如下:
图6:
ADC0832引脚图
主要引脚功能:
ILE、CS、WR1:
输入信号,控制DAC0832中的第一级数据缓存;低电平有效
WR2、XFER:
输入信号,控制DAC0832中的第二级数据缓存;低电平有效
DI0-DI7:
8位数据输入信号
Iout2、Iout1:
D/A转换后的模拟输出信号,通过放大器放大后驱动温度调节器。
(3)调节按钮键盘及显示
图7按键通信及显示框图
系统中采用8279芯片来实现主机与输入按钮的接口电路。
图88279芯片引脚图
8279芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘输入和LED显示控制两种功能。
键盘部分提供的扫描方式,可以和64个按键或传感器的阵列相连。
能自动消除开关抖动以及N个键同时按下的保护。
8279采用单一5V电源供电,40脚封装。
主要引脚功能有:
D0到D7为双向数据总线,用来传送8279与CPU之间的数据和命令;A0为高电平时,表示数据总线上为命令或状态,为低电平时,表示数据总线上为数据;SL0到SL3用来扫描按键开关,传感器阵列和显示数字,这些都可以被编程或译码;RL0到RL7是回送线,经过按键或传感器开关与扫描线联接,只有当一个按键闭合时,对应的返回线变为低电平;SHIFT是换位功能键;CNTL/STB对于键盘输入方式用作控制输入端,在选通输入方式中作选通用。
控制键盘如图所示:
1
2
3
4
5
6
7
8
9
0
+
-
根据需求采用12个按键。
数字键用于直接设置温度,+和-用于上升一度和下降一度。
对于数字键的处理,如果是一次按键:
CPU解析出数值转为低4位16进制表示,并将高四为填零发往指定的端口进行显示控制,且需要暂存此值;如果是二次按键:
CPU解析出数值转为低4位16进制表示,而上一次按键解析出的数值将填充高四位,再发往指定端口显示。
+和-键,如果CPU识别出是这几个键时,只需做简单的送数处理,实现显示控制。
3.硬件系统电路原理图
CPU控制部分原理图
内存部分原理图
A/D、D/A转换部分原理图
键盘和显示部分原理图
4.软件设计部分
主要数据结构:
inttemp_get;//采集到的温度值
inttemp_set;//设定的温度值
intkbcode;//键盘操作码
intcount;//按键次数
流程图如下: