合肥学院计算机科学与技术系微机原理与接口技术课程设计课程设计科目电烤箱温度控制器的设计学生姓名学号班级指导教师时间2017年02月25日电烤箱温度控制器的设计一、需求背景温度控制是工业生产过程中经常遇到的控制,有些工艺过程对其温度的控制效果直接影响着产品质量,因而设计一种较为理想的温度控制系统是非常有价值的。
烤箱是热处理生产中应用最广的加热设备,它通过电流元件产生热量,借助辐射和对流的传递方式,将热量传递给所要加热的物品,使其加热到所需求的温度。
采用烤箱的温度控制可以为我们的生活提供很多便利。
它的适用范围也非常广泛,如工厂、餐厅、家庭,其适用的场合根据它的规格、功率及功能不同进行选择。
对于家庭自用,一般选择功率较小500-1000W左右,烤箱的功能只要能满足基本的加热即可,容量也比较小:9-12L基本满足家用;但对于餐厅、工厂这些人流量比较大、对烤箱要求比较高的地方,一般会选择功率很大、功能齐全(比如控温定时型、三控自动型)而且容量也相对很大的电烤箱。
二、题意与需求分析在STAR ES598PCI单板机开发机上实现对电烤箱温度和时间的控制功能。
1.设计要求:(1)通过键盘设定温度和加热时间(2)使用DS18B20采集温度,采用七段数码管显示当前温度和剩余时间,并和设置的温度进行比较。
(3)当温度低于设定值时,通过DAC0832输出电压供给发热电阻RT1,使其温度升高。
(4)使温度恒定在设定温度附近,时间到了停止加热,并提示操作完毕2.提出问题(1)如何设置时间界限和目标温度(2)如何通过DS18B20读出环境温度并显示在LED上(3)当温度低于设定温度时,如何实现加热(4)DAC0832输出电压加热效果较弱,如何提高加热强度三、解决问题的方法与思路根据上面提出的问题,给出如下解决方法:(1)硬件部分①选择8279芯片和七段LED显示器与键盘相连,设置矩阵键盘的功能,0-9数字键输入温度值,D键位启动键,F键位复位键。
②DS18B20与8255的PC0口相连,通过软件向PC0发出读命令,将温度从DS18B20读出,并通过8279芯片显示在数码管上。
③DAC0832输出的电压加热效果过弱,考虑添加一个功能放大器PW(实验板上为E2区)来提高加热效果。
④8255的PC7口连接逻辑笔(B2区)来测量发热电阻的工作情况,通过显示不同的颜色灯来反映是否加热到目标温度。
(2)软件部分①对通用控制芯片8279进行编程以从实现从键盘输入温度设定值,显示温度,清除显示等功能);②对温度传感器DS18B20进行编程以实现初始化/启动、读写温度、温度转换等功能。
③对控制芯片8255A的控制及操作(如读出DS18B20的温度,控制发热电阻产生加热所需的热量);④通过将读出的温度与设定的温度比较来决定是否对发热电阻RT1的加热操作⑤设置一定的延时程序以满足不同芯片及元器件的工作时序⑥解决进制之间的转换问题四、硬件设计1. 可编程并行接口芯片8255A(1) 8255A在本设计中的作用利用8255A将界限值和温度值通过LED显示出来,同时8255A的PC0与DS18B20相连,向其发出温度检测命令及接受温度数据,PC7和发光二极管相连,用于光报警,PC7口与功能放大区的IN1连接,加强加热效果。
(2) 8255A功能分析及技术参数8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。
三个端口都可以作为输入端口或输出端口。
A口三种工作方式:即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,C口通常作为联络信号使用。
8255A的工作只有当片选CS效时才能进行。
而控制逻辑端口实现对其他端口的控制。
端口A:包含一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器,输入输出数据均受到锁存。
端口B和C: 都包含一个8位数据输入缓冲器和一个8位的数据输出锁存器/缓冲器,输出数据能锁存,输入数据不锁存。
端口C:可分成两个4位端口,分别定义为输入或输出端口,还可定义为控制、状态端口,配合端口A和端口B工作。
8255A是可编程外围设备接口(Programmable Peripheral Interface, 简写为PPI)其内部结构如图所示:(3) 8255A工作在方式0方式0的工作特点:这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。
其功能为:两个8位通道:通道A、B。
两个四位通道:通道C高4位和低四位;任何一个通道可以作输入/输出;输出是锁存的;输入是不锁存的;在方式0时各个通道的输入/输出可有16种不同的组合。
方式0的使用场合:同步传送是在外设控制过程的各种动作时间为固定,且已知的条件下使用的。
因此,传送中不要应答信号。
输入时,执行程序只要给出IN指令;而输出时,也只给出OUT指令,就能实现数据的输入或输出。
优点是程序简单,接口的硬件开销小。
查询式传输时,要先查询一个外设的状态,当该状态表示外设已准备好时,方能开始查询传输,否则CPU将继续查询。
但在方式0,没有规定固定的应答信号,所以,这时将通道A、B作为数据通道,把通道C的4个位(高4位或低4位)规定为输出口,用来输出一些控制信号,而把通道C的另外4个位规定为输入口,用来输入外设的状态。
这样,利用通道C来配合通道A和B的输入/输出操作。
8255A方式选择控制字说明:控制字格式如下:图1-2 8255A控制字格式D7=1工作方式控制标志。
D 5—D6组合设定A口工作方式:00—方式0;01—方式1;10/11—方式2。
D 4设定A口的输入/输出,D4=1时A口输入,D4=0时A口输出。
D 3为C口高4位输入/输出选择,D3=1时为输入,D3=0时为输出。
D 2为B口工作方式选择,D2=1时B口方式1;D2=0时B口方式0。
D 1为B口输入/输出选择,D1=1时输入;D1=0时输出。
D 0为C口低4位输入/输出选择,D=1时为输入,D=0时为输出。
(4) 8255A技术参数8255A工作最大电流为120MA,VCC=-5V~+5V,I(DAR)工作电流最大为4MA。
8255的输出电压不高,连接到LED时,最好加入一个驱动器起到电流放大的作用。
2.专用接口芯片8279(1) 8279在本设计中的作用在本设计中,8279作为专用接口芯片连接着七段LED显示器和键盘,实现对输入温度设定值和显示实时温度的控制。
8279采用单±5V电源供电,40脚封装。
DB0~DB7:双向数据总线,用来传送8279与CPU之间的数据和命令。
CLK:时钟输入线,用以产生内部定时的时钟脉冲。
RESET:复位输入线,8279复位后被置为字符显示左端输入,二键闭锁的触点回弹型式程序时钟前置分频器被置为31,RESET信号为高电平有效。
CS:片选输入线,低电平有效,单片机在CS端为低时可以对8279读/写操作。
A0:缓冲器低位地址,当A0为高电平时,表示数据总线上为命令或状态,当为低电平时,表示数据总线上为数据。
RD:读信号输入线,低电平有效,将缓冲器读出,数据送往外部总线。
WR:写信号输入线,低电平有效,将缓立器读出,将数据从外部数据总线写入8279的缓冲器。
IRQ:中断请求输出线,高电平有效,在键盘工作方式下,当FIFO/传感器RAM中有数据时,此中断线变为高电平,在FIFO/传感器RAM每次读出时,中断线就下降为低电平,若在RAM中还有信息,则此线重又变为高电平。
在传感器工作方式中,每当探测到传感器信号变化时,中断线就变为高电平。
SL0~SL3:扫描线,用来扫描按键开关,传感器阵列和显示数字,这些可被编程或被译码。
RL0~RL7:回送线,经过按键或传感器开关与扫描线联接,这些回送线内部设置有上拉电路,使之保持为高电平,只有当一个按闭合时,对应的返回线变为低电平;无按键闭合时,均保持高电平。
SHIFT:换位功能,当有开关闭合时被拉为低电平,没有按下SHIFT开关时,SHIFT输入端保持高电平,在键盘扫描方式中,按键一闭合,按键位置和换位输入状态一起被存贮起来。
CNTL/STB:当CNTL/STB开关闭合时将其拉到低电平,否则始终保持高电平,对于键盘输入方式,此线用作控制输入端,当键被按下时,按键位置就和控制输入状态一起被存贮起来,在选通输入方式中,作选通用,把数据存入FIFO RAM 中。
OUTA3~OUTA0及OUTB3~OUTB0:显示输出A口及B口,这两个口是16×4切换的数字显示。
这两个端口可被独立控制,也可看成一个8位端口。
BD:空格显示,此输出端信号用于在数字转换时将显示空格或者用显示空格命令控制其显示空格字符。
VCC:+5V电源输入线。
VSS:地线输入线。
(3) 8279的编程方法1)8279可按其功能分为:键盘功能块;显示功能块;控制功能块;与CPU 接口功能块控制功能块包括控制和定时寄存器,定时和控制,扫描计数器三部分,它主要用来控制键盘和显示功能块工作。
①控制和定时寄存器:用于存贮来自CPU的编程命令,CPU对8279编程以确定键盘与显示器工作方式和其它工作条件时,先把命令控制数据放到数据总线上,然后使A0=1,WR=0,CS=0,并在WR上升沿把命令键存在控制和定时寄存器中,经译码,建立适当功能。
②控制:它含基本的定时计数器,第一个计数器是一个分频系数为2-31的前置定时器,分频系数可由程序预置,使内部频率为100KHz,从而能给出5.1ms键盘扫描时间和10.3ms反跳时间,其它计数器将此基本频率分频后,提供适当的按键扫描、行扫描、键盘阵列扫描、以及显示器扫描次数。
③扫描计数器:扫描计数器有两种工作方式,在编码工作方式时,计数器提供一种二进制计数,通过管脚SL0-SL3输出后经外部译码才能提供给键盘和显示器的扫描作用,在译码工作方式时,扫描计数器对最低二位进行译码,SL0-SL3输出4选1的译码信号,作为显示器和键盘的译码扫描。
④键盘功能块包括:返回缓冲器,键盘反跳及控制,8x8 FIFO传感器RAM,FIFO/传感器RAM状态。
2)返回缓冲器与键盘反跳及控制8条返回线被返回缓冲器缓冲,在键盘工作方式中,这几条线被逐个检测,以找出该行键中闭合的键。
如果反跳电路测知某键闭合,则它等待10.3ms,然后重核此键是否仍然闭合。
如果仍闭合,那么该键在矩阵中的行列地址以及SHIFT数据格式中,最高位CNTL,次高位为SHIFT状态,D5-D3来自扫描计数器,D2-D0来自返回计数器,扫描线计数器和回扫线计数器的值分别反映出被按下键的行、列的值,如果在传感器阵列中,返回线上的数据直接进入传感器RAM中相应于阵列中正被扫中的那行,这样每个开关位置就直接反映为一个传感器RAM 的位置。