基于单片机的温度控制器附程序代码

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图6-1 STC12C5A60S2管脚图
数字温度传感器模块
DS18B20
独特的单线接口仅需一个端口引脚进行通信 简单的多点分布应用 无需外部器件
可通过数据线供电 零待机功耗 测温范围-55~+125℃,以℃递增
可编程的分辨率为9~12位,对应的可分辨温度分别为℃、 ℃、℃和℃温度数字量转换时间200ms,12位分辨率时最多在750ms内把温度转换为数字 应用包括温度控制、工业系统、消费品、温度计和任何热感测系统 负压特性:电源极性接反时,传感器不会因发热而烧毁,但不能正 常工作
13.共4个16位定时器 两个与传统8051兼容的定时器/计数器,16位定 时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发
生器 再加上2路PCA模块可再实现2个16位定时器;
14.2个时钟输出口,可由T0的溢出在T0输出时钟,可由T1的溢出在T1输出时钟;
15.外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持 上升沿中断的PCA模块,Power Down模式可由外部中断唤醒,INT0/,INT1/,T0/, T1/, RxD/,CCP0/(也可通过寄存器设置到), CCP1/ (也可通过寄存器设置到;
文件不仅是设计工作的结果,而且是以后使用、维修以及进一步再设计 的依据。因此,一定要精心编写,描述清楚,使数据及资料齐全。
4.
方案一由于本设计是测温电路,可以使用热敏电阻之类的器件,将随被测温度变化 的电压或电流采样, 进行A/D转换后就可以用单片机进行数据处理, 实现温度显 示。这种设计需要用到A/D转换电路,增大了电路的复杂性, 而且要做到高精度 也比较困难。
方案二考虑到在单片机属于数字系统,容易想到数字温度传感器,可选用DS18B20数字温度传感器, 此传感器为单总线数字温度传感器, 起体积小、 构成的系统结 构简单,它可直接将温度转化成串行数字信号给单片机处理, 即可实现温度显示。 另外DS18B20具有3引脚的小体积封装,测温范围为-55~+125摄氏度,测温分 辨率可达摄氏度,其测量范围与精度都能符合设计要求。
16.PWM(2路)/PCA(可编程计数器阵列,2路):
——也可用来当2路D/A使用
——也可用来再实现2个定时器
——也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同 时支持);
D转换,10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次)18.通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器 或PCA软件实现多串口;
8.有EEPROM功能(STC12C5A62S2/AD/PW无M内部EEPROM;)
9.看门狗;
10.内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地);
11.外部掉电检测电路:在口有一个低压门槛比较器,5V单片机为,误差为+/-5%,单片机为,误差为+/-3%;
12.时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为+/-5%到+/-10%以内)1用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟,常温下内部R/C振荡器频率为:单片机为:11MHz~,单片机为:8MHz~12MHz,精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,以实际测试为准;
图左图低温,二极管报警。右图超出范围,蜂鸣器报警
数码管显示模块
本部分电路主要使用七段数码管,单片机通过P0口将要显示的数据信号传 送到数码管显示,另外通过P1口的某几位,通过741LS38译码器,将要显示的位送到片选信号。具体见实际连线图如图6-5。
图6-5数码管连接图
7.
主程序模块
主程序调用了4个子程序, 分别是数码管显示程序、 键盘扫描及按键处理程、 温 度值获取程序、延时程序。
读温度值模块流程图:
DS18B20
中断模块
中断采用T0方式1,初始值定时为2ms。
计数值加1
进入模块界面后, 按选择上下限键, 选择改变上限还是下限, 按加减键分别上调 和下调设定报警温度值,当实时温度值超过设定值时驱动蜂鸣器发声,
8.
温度处于设定范围,不做任何反应。
设定温度下限度值为℃, 当前温度为℃,
6.
单片机模块
STC12C5A60S2/AD/PW系M列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼 容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强干扰场合。
读温度值模块
对温度传感器送过来的数据进行读取, 读温度值模块需要调用4个子程序,分别 为:
a)DS18B20初始化子程序:让单片机知道DS18B20在总线上且已准备好操作
b)DS18B20写字节子程序:对DS18B20发出命令
c)DS18B20读字节子程序:读取DS18B20存储器的数据
d)延时子程序:对DS18B20操作时的时序控制
DS18B20
图DS18B20外形及引脚
GND:地
DQ:单线运用的数据输入/输出引脚
VD:可选的电源引脚
DS18B20
单总线通常要求接一个约左右的上拉电阻,这样,当总线空闲时,其状 态为高电平。
图DS18B20接线原理图
按键模块单片机应用系统中按键或键盘都是以开关状态来设置控制功能或输入数据。 键开关状态的可靠输入 :为了去抖动采用软件方法,它是在检测到有键按 下时,执行一个10ms的延时程序后,再确认该键电平是否仍保持闭合状态电平, 如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响
1.增强型8051 CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051;
2.工作电压:STC12C5A60S系2列工作电压:(5V单片机)STC12LE5A60S系2列工作电压:(3V单片机);
3.工作频率范围:0 - 35MHz,相当于普通8051的0~420MHz;
4.用户应用程序空间8K /16K / 20K / 32K / 40K / 48K / 52K / 60K / 62K字节;
声光报警ห้องสมุดไป่ตู้块
错误!未定义书签。
数码管显示模块
错误!未定义书签。
7.程序设计
错误!未定义书签。
主程序模块
错误!未定义书签。
读温度值模块
错误!未定义书签。
读温度值模块流程图:
...错误!未定义书签。
DS18B20写字节和读字节子程序流程图:错误!未定义书签
中断模块错误!未定义书签
温度设定、报警模块错误!未定义书签
以上两种方案相比较,第二种方案的电路、软件设计更简单,此方案设计的 系统在功耗、测量精度、范围等方面都能很好地达到要求, 故本设计采用方案二。
5.
温度传感器DS18B20从设备环境的不同位置采集温度, 单片机AT89S51获取采 集的温度值, 经处理后得到当前环境中一个比较稳定的温度值, 再根据当前设定 的温度上下限值, 通过加热和降温对当前温度进行调整。 当采集的温度经处理后 超过设定温度的上限时, 单片机通过三极管驱动继电器开启降温设备(压缩制冷 器),并通过三极管驱动扬声器发出警笛声。 当采集的温度经处理后低于设定温 度的下时,单片机通过三极管驱动继电器开启升温设备(加热器),并通过三 极管驱动扬声器发出警笛声。
2.
1.控制温箱温度
2.加热:电炉丝,这里改成发光二极管
3.冷却:自然or风冷
4.温度目标区间:-50- 100℃
5.运行环境:常温
6.供电:+5v
7.控制精度:±2℃
8.温度可设定,如果下限超过上限,显示错误
9.温度可显示
10.超温报警
3.
设计一个单片机测控系统,一般可分为四个步骤:
(1)需求分析,方案论证和总体设计 需求分析:被测控参数的形式(电量、非电量、模拟量、数字量等) 、被 测控参数的范围、 性能指标、 系统功能、工作环境、显示、报警、打印要求等。
键盘共有3个按键,用于方便设定温度。
图DS18B20接线原理图
,INT1转换,用于转换设置最高或最低温度限度值;
INT2增加,用于增加最高或最低温度限度值;
减少,用于减少最高或最低温度限度值
声光报警模块当采集的温度经处理后超过规定温度范围时,蜂鸣器报警。当超过温度下 限时,二极管报警。具体电路连接如图所示。
方案二
错误!未定义书签。
5.工作原理
错误!未定义书签。
6.硬件设计
错误!未定义书签。
单片机模块
错误!未定义书签。
数字温度传感器模块
错误!未定义书签。
DS18B20性能
错误!未定义书签。
DS18B20外形及引脚说明
错误!未定义书签。
DS18B20接线原理图
.错误!未定义书签。
按键模块
错误!未定义书签。
温度最高上限值为
当设定温度下限超过上限时,显示
9.
温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力
电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业
企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人 员努力解决的问题。
19. STC12C5A60S系2列有双串口,后缀有S2标志的才有双串口,RxD2/(可通过寄存器设置到,TxD2/(可通过寄存器设置到;
20.工作温度范围:-40 - +85℃(工业级) / 0 - 75℃(商业级)21.封装:
PDIP-40,LQFP-44,LQFP-48 I/O口不够时,可用2到3根普通I/O口线外接74HC164/165/595(均可级联)来扩展I/O口,还可用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了串口。
生产实习报告书
报告名称基于单片机的温度控制系统设计
姓名
学号0138、0140、0141
院 、系 、部计算机与通信工程学院
专业信息工程10-01
指导教师
2013年9月1日
1.引言
错误!未定义书签。
2.设计要求
错误!未定义书签。
3.设计思路
错误!未定义书签。
4.方案论证
错误!未定义书签。
方案一
错误!未定义书签。
方案论证:根据要求,设计出符合现场条件的软硬件方案, 又要使系统简 单、经济、可靠,这是进行方案论证与总体设计一贯坚持的原则。
(2)器件选择,电路设计制作,数据处理算法,软件的编制阶段。
(3)系统调试与性能测定。
(4)文件编制。 文件包括:任务描述、设计的指导思想及设计方案论证、性能测定及现 场试用报告与说明、使用指南、软件资料(流程图、子程序使用说明、地址分 配、程序清单)、硬件资料(电原理图、元件布置图及接线图、接插件引脚图、 线路板图、注意事项) 。
程序开始的时候先设置定时器0初始化,然后进行键盘扫描接着就判断按键是否 被按下,按下就进行按键处理。 然后获取温度值并经行处理 (判断是否为负温度, 以及进行分位),得到温度的十位、个位和十分位。并判断但前温度与所设置上 下限温度关系, 大于上限温度或小于下限温度则报警, 否则继续向下执行, 并开 始循环。其中显示程序在中断中进行。
5.片上集成1280字节RAM;
6.通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传 统I/O口),可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏,每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过55Ma;
7.ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无需专 用仿真器 可通过串口()直接下载用户程序,数秒即可完成一片;
8.
9.
附录
基于单片机的温度控制系统设计
1.
随着人们生活水平的不断提高, 单片机控制无疑是人们追求的目标之一, 它所给 人带来的方便是不可否定的, 各种数字系统的应用也使人们的生活更加舒适。 数 字化控制、智能控制为现代人的工作、生活、科研等方面带来方便。其中数字温 控器就是一个典型的例子。数字温控器具有读数方便、测温范围广、测温精确、 功能多样话等优点。 其主要用于对测温要求准确度比较高的场所, 或科研实验室 使用,该设计使用STC12C5A60S单2片机作控制器,数字温度传感器DS18B20测量温度,单片机接受传感器输出, 经处理用LED数码管实现温度值显示,并能任 意设定报警温度的温度范围, 实现声光报警。 在我们的实习过程中, 我们首先要 根据原理图焊接一个STC12C5A60S单2片机的开发板,经测试准确无误后,编写 程序实现上面所说的数字温度控制器。
相关文档
最新文档