原标题:51单片机两路温度控制器设计方案

本文提出了基于 两路 的设计方案,该设计方案采用两个DS18B20温度 ,采集两个不同地方的温度,通过AT89C51处理进行,由四位 数码管显示所测量温度,前两位为第一个温度传感器的温度,后两位为第二个温度传感器的温度。采用3个按键实现温度最高和最低的设定,采用蜂鸣器和 实现温度过高或过低报警。

1.引言

目前,温度控制器存在的问题是如何缩减成本,减少,温度测量的准确性和多路温度的同时显示。本方案设计的实现基于C51的两路温度控制器,做到成本最低化,精确度高,两路温度的显示和控制,能在温度超出设定的最高温度时启动电风扇进行降温,在温度低于设定的最低温度时启动蜂鸣器报警,能够用户设定最高最低温。

2.系统结构

温度控制器系统包括以下几个主要部分:温度传感器,报警电路,LED显示电路,键盘控制,89C51控制部分。如图所示:

本系统设计实现:启动温度控制器后,绿灯亮起,四位LED数码显示器上前两位为温度传感器1所测的环境温度,后两位为温度传感器2所测的环境温度。

3.硬件结构

3.1 温度传感器

本设计采用的是DS18B20作为温度传感器,DS18B20与传统的热敏电阻相比具有精确度高,测量误差小,方便实现多点测温等优点,因此用DS18B20作温度传感器。

3.2 报警电路

本设计采用蜂鸣器和电风扇报警电路。蜂鸣器报警电路由和蜂鸣器组成。当温度低于设定的最低温度时,则蜂鸣器报警。电风扇报警电路由三极管和电风扇组成。当温度高于设定的最高温度时,则电风扇报警。

3.3 显示电路

本系统采用L E D显示,LED亮度高,可视角度高。LCD的可视角度低,亮度较低,价格高。考虑到此温度传感器主要用于温室大棚等亮度不太高的环境,从经济与实用的角度来看选LED作为显示器。

3.4 键盘控制

本系统采用3个独立的按键作为键盘控制电路。键盘一般分为独立式和两种。独立式键盘结构简单,但占用的资源较多;矩阵键盘结构比较复杂,但占用的口线少。考虑到本设计所需按键数不多,采用三个独立键盘完成两个温度传感器温度的设定。

3.5 89C51控制部分

本系统采用的是AT89C51,小电子产品用51,电路如图1所示。

4.软件设计

本系统使用汇编语言编码实现的,比C语言编码的程序处理时间更快。

主程序中包含系统初始化,键盘扫描选择子程序,温度比较子程序,温度测量子程序,温度计算子程序,显示子程序。

4.1 主程序模块

主程序中先对数据进行初始化,然后调用键盘扫描子程序KEY_TEST,温度比较子程序C O M P A R E,温度采集子程序G E T _ T E M P,温度显示子程序D I S _ S E T和DISPLAY,再判断采集,显示第二个温度传感器的温度值。编写程序如下:

4.2 LED显示模块

LED显示可以分为动态显示和静态显示两种,静态显示占用更多口线,为了减少硬件成本,本设计采用动态扫描显示的方法显示两个温度传感器的温度值。

DISPLAY和DISPLAY1函数分别读取第一个和第二个温度传感器的温度并根据暂存单元的数据显示两个温度传感器的温度。编程思路:根据SIGN标志来判断转入不同的显示,将查表所得的数据存入不同的单元并显示在LED上。

4.3 键盘控制模块

键盘通过设定SIGN标志来判断设定第一个或者第二个温度传感器的最高温或者最低温,编程思路为:将SIGN初始设定为0,当第一个按键按下时将其赋为1,再次按下时加一,直到按到第5次重新赋值为0,根据SIGN的值确定进行不同的设置。

4.4 温度传感器模块

根据温度传感器DS18B20完成温度转换所必须经过的3个步骤,程序:MOV A,#0CCH//跳过ROM MOV A,#44H / / 进行温度变换 MOV A,#0BEH//读暂存存储器内容。

4.5 报警模块

当实时温度高于设定的最高温度时或者实时温度低于设定的最低温度时,单片机会控制蜂鸣器或者电风扇工作,判断当前温度是否在正常范围的函数为COMPARE,高温部分程序如下:

5.仿真测试

我们对DS18B20写入程序之前,必须调试自己的程序。但我们不能看到程序是怎样运行的。因此我们可以用仿真机来仿真,通过仿真机我们可以看到DS18B20发送过来的数据,读出来的温度值,所利用寄存的值的变化。系统连接示意图如下图所示:

我们现在能把DS18B20所采集到的温度在PC机上显示出来并且每一个温度值显示后换一行。试验证明了系统实用性强,达到了预定的功能。

6.总结

本方案中所设计的温度控制器,采用AT89C51单片机作为内核,采用DS18B20作为温度传感器,通过四位LED显示,通过循环扫描实现了两路温度的采集与显示。然后又经过过仿真测试证实了改设计方案经济适用,实用性强,能够测量两个地方的温度,满足温室大棚,室内家居,等不同环境下的使用。

责任编辑:

单片机温度控制器c语言代码,51单片机两路温度控制器设计方案相关推荐

  1. 单片机测距雷达c语言代码,51单片机超声波测距倒车雷达Proteus仿真+源代码

    #include #include #include "LCD.H" #include "delay.h" #define  uint unsigned int ...

  2. 单片机12864电子锁c语言代码,51单片机+LCD12864实现密码锁Proteus仿真和代码

    #include       //  包含51单片机寄存器定义的头文件 #include     //包含_nop_()函数定义的头文件 #include #include <12864.h&g ...

  3. 51单片机正弦波c语言,用51单片机产生正弦波

    <用51单片机产生正弦波>由会员分享,可在线阅读,更多相关<用51单片机产生正弦波(3页珍藏版)>请在人人文库网上搜索. 1.单片机产生50Hz正弦波1.实验要求用单片机产生5 ...

  4. 单片机显示屏c语言程序,51单片机驱动1602液晶显示器c程序

    51单片机驱动1602液晶显示器c程序 /* 程序效果:单片机控制液晶显示器1602显示字母数字,用户自行更改io 程序版权:http://www.51hei.com */ #include //头文 ...

  5. 恒温控制系统单片机仿真c语言,基于51单片机的恒温控制系统

    #include void main()//主函数 { init();//初始化函数 while(1) { temp_control();//控制按键函数 unnormal_proccessing(g ...

  6. 单片机音乐盒c语言源程序,51单片机八音盒源程序(汇编语言)

    ;//***************************************************** ;文件名:  八音盒.asm ;描  述:  八音盒,P1选择音乐,低电平有效,P3. ...

  7. c51语言 12864菜单设计 不带自库,12864显示花屏 - c51编程(单片机的c语言) - 51单片机学习论坛 www.51c51.com - Powered by Discuz!...

    /**************************************************************************** *描述:12864+ds1302+ds18b ...

  8. 单片机右移c语言程序,51单片机+点阵8*8上、下、左、右移显示C程序(原创)

    最近在研究点阵,这东西看起来简单,但是要完全掌握它,可是要花一定时间的!我现在做得8*8点阵硬件电路是这样的,行采用74HC138+三极管8550驱动,列采用74HC595驱动,这种电路是非常用的,其 ...

  9. c51单片机时钟c语言程序设计,51单片机C编程(六、定时器时钟显示时分秒)

    //编程:jumpmysoul #include #define ulong unsigned long char tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x8 ...

最新文章

  1. 调用其他脚本上方法的方法
  2. ilm 和dlm差异_电力通信系统--加密芯片.pdf
  3. SQL语言之同义词(Oracle)
  4. js 换行符_一文看遍 JS 的所有输入(词法篇)
  5. Error: Could not find or load main class org.apache.tez.dag.app.DAGAppMaster
  6. 阿里云与中国联通首个公共云平台上线
  7. 奇偶ASCII值判断(信息学奥赛一本通-T1042)
  8. 乔丹LeCun李开复隔空对话:我们对智能一无所知;AI研究的12大趋势
  9. golang redis 队列删除图片
  10. 扇贝有道180924每日一句
  11. [转载] 中华典故故事(孙刚)——19 万岁
  12. redis操作之迭代器 hscan
  13. 20145306 信息安全系统设计基础 第五周博客总结
  14. python绘制3d机械图_python matlibplot绘制3D图形
  15. APM直升机调试记录
  16. 视频云服务四路玩家,谁是最大赢家
  17. 一个矩阵与单位矩阵相乘等于本身吗?并且符合交换律吗?
  18. java 计算圆周率_java程序计算圆周率
  19. 超鸿蒙是什么意思,“志在烟霞慕隐沦,功成归看五湖春。一叶舟中吟复醉,云水。”的意思,诗词全文,作者,上一句和下一句是什么?-选自五代李珣《定风波·志在烟霞慕隐沦》-古诗词名句大全...
  20. 爬虫之极验验证码破解-滑动拼图验证码破解

热门文章

  1. Hive条件在on和where后面区别
  2. 校园二手交易android软件 基于AndroidStudio
  3. Three.js快速入门
  4. 动态规划之神奇的口袋
  5. 健康医疗数据安全指南内容
  6. OAI网络切片三切片配置
  7. 一个可以免费下载O Reilly的书籍的地方
  8. keras的seq2seq
  9. ES Module在nodeJS下与CommonJS的交互
  10. 微信小程序--服务器数据交互