单片机智能温控器课程设计

合集下载

毕业设计38单片机温控

毕业设计38单片机温控

毕业设计38单片机温控我正在考虑毕业设计的方向,我选定了一个38单片机温控的项目。

该项目旨在设计和实现一个基于38单片机的温度控制系统,以监测和控制环境中的温度。

该系统将能够自动控制温度,并提供用户界面以进行手动控制。

首先,我将使用一个温度传感器来检测环境中的温度。

传感器将被连接到38单片机的模拟输入引脚上。

通过读取传感器的电压值,单片机将能够获取当前温度数据。

接下来,我将使用一些电路元件来控制温度。

我计划使用一个继电器来控制加热器或冷却器的开关。

当温度低于设定温度时,继电器将打开并启动加热器以提高温度。

当温度超过设定温度时,继电器将关闭并启动冷却器以降低温度。

通过控制加热器和冷却器的开关,该系统将能够实现自动温度控制。

此外,我还计划添加一个LCD显示屏和几个按钮,以提供用户界面。

通过显示屏,用户将能够实时监测环境中的温度。

通过按下按钮,用户将能够手动控制加热器和冷却器的开关。

通过添加用户界面,用户将能够直接交互并控制系统。

最后,我计划使用38单片机的编程语言来编写控制系统的软件。

我将使用C语言来编写代码,并采用模块化的方式组织代码。

我将编写代码来读取温度传感器的数据,控制继电器和加热器/冷却器的开关,并处理用户界面的输入。

通过完成这个项目,我将会学习到如何使用38单片机来构建一个功能强大的温度控制系统。

我将学习到如何连接和读取传感器,如何控制电路元件,以及如何编写单片机的软件。

此外,我还将获得实际设计和实现一个完整工程的经验。

在未来,我相信这个项目的技术和经验将对我的发展非常有益。

控制系统的设计和实现是一项非常实用的技能,在许多行业和领域都有广泛的应用。

此外,通过完成这个项目,我还将展示出自己的能力和才华,对我的求职和职业发展将有积极的影响。

With a 1200-word limit in mind, I have reached the end of my response. However, if you require any further information or elaboration on any aspect of this project, please let me know, and I will be glad to assist you.。

基于51单片机智能温度控制器系统设计毕业设计论文

基于51单片机智能温度控制器系统设计毕业设计论文

长春科技学院毕业设计 (论文)基于51单片机智能温度控制器系统设计摘要温度是工业生产和日常生活中最常见的参数之一,对温度的精确测量和控制具有重要意义。

为此,本文以AT89S51单片机为处理核心进行了智能温度监控系统的下位机设计,详细阐述了系统的硬件及软件设计方法。

该设计使用DS18B20数字式温度传感器进行多点测温,通过RS232串口实现单片机与PC机之间的数据交换,实现各温度点的实时测温及根据上位机的温度设定值完成对其中一点温度的控制。

此系统具有测温电路简单、连接方便、转换速度快、为上位机监控部分可实时传送温度信号、控制精度高等优点,因此,具有较广泛的应用前景。

关键词: AT89S51;智能温度测量控制;DS18B20;RS232AbstractTemperature is one of the most familiar parameters in the industrial production anddaily life. Therefore, this paper designs the under-bit machine of multi-point temperature monitoring system with the 89S51 SCM as the processing core. It elaborates hardware and software design method in detail. The system uses the DS18B20 digital temperature sensor to measure multi-point temperature. Through the RS232 serial port it can exchange data between the SCM and PC.Each point of temperature can be measured on time and one point of it can be controlled according to the temperature settings transmittd by up-bit machine. Based on the advantages that this system has the simple temperature measurement circuit, the convenient connection, the quick change speed, the real-time transmission of temperature signals for up-bit machine, the high precision control , therefore, it will have very good application value.Keywords: AT89S51; multi-point temperature measure and control; DS18B20; RS232引言1.现代社会中,温度控制的应用越来越多。

单片机综合课程设计(温度控制器)

单片机综合课程设计(温度控制器)

杭州电子科技大学信息工程学院单片机课程设计报告(电气工程与自动化专业)姓名班级:学号:指导教师:2011年10月14日一引言单片机课程设计是一项综合性的专业实践的活动,基本任务是利用STC12C5A08S2单片机等电子元器件设计一个具有温度测量、显示和控制的装置。

通过本课程综合应用所学知识,分析和解决工程实际问题的能力,将所学的基础理论和专业知识运用到具体的工程实践中去。

培养学生的实际动手能力和工程实践能力,为此后的毕业设计打下良好的基础。

二硬件设计1 数码管显示图 1此数码管为共阴极数码管,其8个发光二极管的阴极在数码管内部全部连接在一起,它们的阳极是独立的,通常在设计电路时一般把阴极接地。

数码管的显示方法静态显示。

当多位数码管应用于某一系统时,它们的“位选”是可独立控制的,而“段选”是连接在一起的,我们可以通过位选信号控制哪几个数码管,而在同一时刻,位选选通的所有数码管上显示的数字始终都是一样的,因为它们的段选是连接在一起的,所以送入所有数码管的段选信号都是相同的,那它们显示的数字必定一样。

图1 中的三极管9013的起到开关“位选”的作用,当三极管导入高电平的时候,相对应的数码管发光。

2 2*2矩阵键盘图2矩阵键盘的两端都与单片机I/O口相连,因此检测时给单片机I/O口送入低电平。

检测时,先送一列为低电平,其余几列全为高电平,然后立即轮流检测一次各行是否有低电平,若检测到某一行为低电平则我们便可确认当前被按下的键是哪一行那一列,用同样的方法轮流送各列一次低电平,轮流检测一次各行是否变为低电平,这样即可检测完所有的按键,当有键被按下时便可判断出按下的键是哪一个键。

图2中二极管IN4148 检测是否有按键按下。

3 测温电路图3图3中的电容用来滤波的作用。

R120滑动变阻器用来调节A/D采样值的变化。

AT502热敏电阻。

4 蜂鸣器试验采用无源蜂鸣器,通过输入震荡电流,是蜂鸣器达到蜂鸣的效果,在本次使用的期间中,对P14管脚加入震荡电流,便可以达到试验效果5.整个原理图三软件部分#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intsbit shuma2=P2^6;sbit shuma1=P2^7;sbit shuma3=P2^5;sbit shuma4=P2^4;sbit adwr=P3^6;sbit adrd=P3^7;sbit beep=P1^4;sbit dat=P1^1;sbit warm=P1^3;sbit led=P2^0;uint wendu=25,numt0=0,cede=0,bzflag=0,flag=1;/*--定义数码管显示的0~9,10个数据--*/ unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};/*--单片机初始化函数,对定时器进行设置,开总中断,开定时器中断,开定时器--*//*--入口参数:无----出口参数:无--*/void init(){TMOD=0x01;TH0=(65536-2500)/256;TL0=(65536-2500)%256;EA=1;ET0=1;TR0=1;}/*--延时函数,通过for循环函数实现延时功能--*//*--入口参数:uint;----出口参数:无---*/void delayms(uint xms){uint i,j;for(i=0;i<xms;i++)for(j=0;j<110;j++);}/*--显示函数,利用2个全局变量对他们求余和求商,用于表示检测的温度的十位和个位,及设定温度的十位和个位----入口参数:无----出口参数:无---*/void display(){uchar shi=wendu/10;uchar ge=wendu%10;uchar cge=cede%10;uchar csh=cede/10;P2=0x10;P0=table[ge];delayms(2);P2=0x20;P0=table[shi];delayms(2);P2=0x40;P0=table[cge];delayms(2);P2=0x80;P0=table[csh];delayms(2);P2=0x00;}/*--键盘检测函数,对2*2矩阵键盘进行设定,分别为温控开关及设定温度加减----入口参数:无----出口参数:无--*/void keyscan(){uchar temp;P3=0x70;if(P3==0x60){delayms(10);if(P3==0x60){if(wendu!=0)wendu--;}temp=P3&0x30;while(temp!=0x30)temp=P3&0x30;}if(P3==0x50){delayms(10);if(P3==0x50){if(wendu!=99)wendu++;}temp=P3&0x30;while(temp!=0x30)temp=P3&0x30;}P3=0xb0;if(P3==0xa0){delayms(10);if(P3==0xa0){flag=0;warm=0;}temp=P3&0x30;while(temp!=0x30)temp=P3&0x30;}if(P3==0x90){delayms(10);if(P3==0x90){flag=1;}temp=P3&0x30;while(temp!=0x30)temp=P3&0x30;}}/*--蜂鸣器函数,当蜂鸣器标志位打开时,进入函数发出声音----入口参数;无----出口参数:无--*/void buzzer(){if(!bzflag){uint i=2000;for(;i>0;i--){beep=1;delayms(1);beep=0;}}}/*--温度检测函数,利用温度传感器,来检测温度----入口参数:无----出口参数:无--*/void check(){adwr=1;_nop_();adwr=0;_nop_();adwr=1;adrd=1;_nop_();adrd=0;_nop_();cede=dat;adrd=1;if(cede<=(wendu-5)){warm=1;buzzer();led=1;bzflag=1;}if(cede>=wendu){warm=0;bzflag=0;led=0;}}/*--定时器函数--*/void T0_time()interrupt 1 {TH0=(65536-2500)/256;TL0=(65536-2500)%256;if(flag){display();}}/*--主函数--*/void main(){init();while(1){keyscan();if(flag){check();}}}四总结本次短学期的内容是是设计温度控制器。

单片机课程设计(温度控制器)

单片机课程设计(温度控制器)

基于单片机的温度控制器设计内容摘要:该温度报警系统以AT89C51单片机为核心控制芯片,实现温度检测报警功能的方案。

该系统能实时采集周围的温度信息,程序内部设定有报警上下限,根据应用环境不同可设定不同的报警上下限。

该系统实现了对温度的自动监测和自动调温功能。

关键词:AT89C51 ADC0808 温度检测报警自动调温Abstract:The temperature alarm system AT89C51 control chip, realize temperature detection alarm function scheme. The system can collect real-time temperature information around that internal procedures set alarm equipped, according to different application environment can be set different alarm upper. The system realizes the automatic monitoring of temperature. The instrument can achieve the automatic thermostat function.Keywords:AT89C51 ADC0808 Temperature detecting alarm automatic thermostat引言:本课题是基于单片机的温度控制器设计,经过对对相关书籍资料的查阅确定应用单片机为主控模块通过外围设备来实现对温度的控制。

实现高低温报警、指示和低温自加热功能(加热功能未在仿真中体现)。

1.设计方案及原理1.1 设计任务基于单片机设计温度检测报警,可以实时采集周围的温度信息进行显示,并且可以根据应用环境不同设定不同的报警上下限。

单片机课程设计报告基于单片机的温控系统

单片机课程设计报告基于单片机的温控系统

单片机课程设计报告基于单片机的温控系统职业学院机械与电子工程学院基于单片机温控系统课程设计报告班级电信班学生姓名学号指导教师时间2021目录摘要I1系统方案设计及组成I2系统设计12.1温度传感器的工作原理与单片机的连接12.2DS1302原理及管脚22.3单片机与报警电路32.4显示电路32.41基本操作时序43系统软件设计4摘要本课题主要介绍基于xxxx单片机和xxxx数字温度传感器的温度测量系统。

该系统利用xxxx单片机分别采集各个温度点的温度,实现温度显示、报警等功能以及用DS1302时钟芯片在液晶显示当前时间日期。

直观,实用。

它以xxxx单片机为主控制芯片,采用数字温度传感器xxxx实现温度的检测,测量精度可以达到0.5℃。

该系统采用了1602显示模块,形象直观的显示测出的温度值。

基于xxxx 单片机的单总线温度测控系统具有硬件组成简单、读数方便、精度高、测温范围广等特点,在实际工程中得到广泛应用。

关键词:温度传感器;单片机;温度控制;DS1302;LCD1系统方案设计及组成该方案使用了xxxx单片机作为控制核心,以智能温度传感器xxxx为温度测量元件,对各点温度进行检测,设置温度上下限,超过其温度值就报警。

以及用DS1302时钟芯片在液晶显示当前时间日期。

显示电路采用1602液晶模块显示,使用三极管,电阻和蜂鸣器组成的报警电路,按钮处理模块等。

具有温度控制,实时时钟,报警等功能。

89C52CPU控制模块按键处理模块温度采集模块报警电路LCD显示模块DS1302时钟采集模块图2-1温度控制系统方案框2系统设计2.1温度传感器的工作原理与单片机的连接温度传感器的单总线(1-Wire)与单片机的P2.7连接,P2.7是单片机的高位地址线。

P2端口是一个带内部上拉电阻的8位双向I/O,其输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对该端口写“1”,可通过内部上拉电阻将其端口拉至高电平,此时可作为输入口使用,这是因为内部存在上拉电阻,某一引脚被外部信号拉低时会输出一个电流。

单片机液晶温控课程设计

单片机液晶温控课程设计

单片机液晶温控课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握液晶显示屏的使用方法。

2. 学生能掌握温度传感器与单片机的连接方式,了解温控系统的基本构成。

3. 学生能掌握基本的编程方法,实现单片机对温度的读取、处理和显示。

技能目标:1. 学生能够独立完成单片机与液晶显示屏的连接与调试。

2. 学生能够独立编写程序,实现温度的实时读取与显示。

3. 学生能够通过实际操作,掌握温控系统的调试方法,具备一定的故障排查能力。

情感态度价值观目标:1. 培养学生对单片机技术及嵌入式系统的兴趣,激发学生主动探索新技术、新方法的热情。

2. 培养学生严谨、细致的科学态度,提高学生的团队协作能力和沟通表达能力。

3. 引导学生关注单片机技术在生产、生活中的应用,认识到科技对生活的影响,培养学生的社会责任感。

课程性质:本课程为实践性较强的课程,结合理论知识与实际操作,旨在培养学生的动手能力和实际应用能力。

学生特点:学生具备一定的单片机基础知识,对编程和硬件有一定了解,但对液晶显示屏和温度控制系统的实际应用尚不熟悉。

教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的主观能动性,引导学生在实践中掌握知识,提高技能。

在教学过程中,注重分层教学,关注每一个学生的学习进度,确保课程目标的实现。

二、教学内容1. 单片机基础知识回顾:包括单片机的结构、工作原理、I/O口编程等,重点回顾与液晶显示屏和温度传感器相关的知识点。

参考教材章节:第一章单片机基础。

2. 液晶显示屏原理与使用:介绍液晶显示屏的工作原理、接口方式、显示原理等,结合实践操作,使学生掌握液晶显示屏的使用方法。

参考教材章节:第二章液晶显示屏。

3. 温度传感器原理与应用:讲解温度传感器的分类、原理,以温度传感器与单片机的连接为例,分析温控系统的构成及工作原理。

参考教材章节:第三章温度传感器。

4. 单片机与温度传感器的接口技术:详细介绍单片机与温度传感器之间的连接方法,包括硬件设计、软件编程等。

单片机温控课程设计

单片机温控课程设计

摘要本系统能够真实对第三段料筒温度的设定与管理。

系统的的核心是80C51单片机。

本文详细介绍了PID参数的调整过程。

以及温度的设定,测量,及显示过程。

同时还有单片机对温度的控制,包括温度输入的模数转换,PID计算,温度输出的数模转换过程。

若温度过高还有报警装置。

同时,本文也描述了系统各个部分的电路设计及连接图,还有总的程序控制过程。

硬件上由MCS51系列单片机、ADC0809,DAC0832,SCR模块,热电偶,4×3行列式键盘、两个3位LED管、74LS373芯片、排阻和若干电阻组成。

LED显示器通过串行口连接;P0通过74LS373与ADC0809和DAC0832连接。

单片机通过XTAL1和XTAL2引脚外接12MHz晶振。

软件设计分为以下几个模块:(1)键盘温度设定程序(2) LED数码管显示程序(4) 模数转换(5) 数模转换(6) PID运算(7)越线报警。

关键词:温度控制,行列式键盘扫描,模数转换,数模转换,pid参数调整与编程目录摘要 (1)第一章绪论 (4)1.1 料筒温度控制概述 (4)1.2 主要研究工作 (4)第二章基础知识介绍 (5)2.1主控制器AT89C51 (5)2.2 LED数码管模块 (6)2.3 键盘模块 (7)2.4 模数转换模块——ADC0809 (8)2.5数模转换模块——DAC0832 (9)2.6 锁存器74LS373 (10)第三章控制方案设计 (12)3.1目标和任务估计 (12)3.2 方案选择 (12)3.3 元件选择 (12)3.4 软件控制方案的确定 (13)第四章系统硬件电路设计 (14)4.1 时钟电路 (15)4.2 模数转换电路 (15)4.3 数模转换电路 (16)4.4 键盘连接电路 (16)4.5 LED显示电路 (16)第五章控制算法的确定 (17)5.1 温度控制算法选择 (17)5.2 调节器参数的工程整定 (18)5.3 用MATLAB对系统进行仿真 (19)第六章 DDC的基本算法 (21)6.1 DDC基本算法简述 (21)6.2 DDC理想PID算法选择 (22)第七章温度控制的程序框图以及编写 (23)7.1 流程图 (23)7.2 程序编写 (24)第八章设计总结 (30)8.1总结 (30)8.2参考文献 (30)第一章绪论1.1 料筒温度控制概述单片机的基本结构是将微型计算机的基本功能部件全部集成在一个半导体芯片上。

基于单片机的智能温度控制器设计课程设计

基于单片机的智能温度控制器设计课程设计

单片机类课程设计题目:智能温度控制器目录论文总页数23 页一、.............................................. 弓丨言.2二、.............................................. 关键字.3三、.............................................. 设计的题目.3四、.................................... 课程设计的基本要求4五、.............................................. 方案设计...4六、.............................................. 系统设计方案及框图........................................... ••…5 6.1 智能温度控制器总体方案6.2设计原理框图 ................................... .6七、数字信号采集和处理............................ (6)7.1、DS18B20产品的特点........................ ..7 7.2、DS18B20的引脚介绍 (7)7.3、DS18B20的使用方法 (8)八、系统硬件电路 (11)8.1控制器内部结构 ..................................... .128.2控制器具体电路 ..................................... .13九、系统扩展电路 (13)9. 1数字温度感应模块接口电路 (13)9. 2液晶显示电路 (14)9. 3系统输入电路 (15)十、系统总电路 (15)10.1Altium Designer电路设计软件绘制的总电路原理图 (16)10. 2电路仿真软件PROTEUS下系统实时仿真 (16)10. 3 系统总电路PCB 图的设计 (17)十一、系统软件 ……………………………………………… ...18 十二、总结与体会 十三、参考文献、引言随着科技的不断发展,二十一世纪已经进入电子信息时代的轨 道。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计说明书专业:机械设计制造及其自动化设计题目:智能温控器设计者:指导老师:设计时间:一、课题名称:一个基于51单片机的智能温控器课程设计二、主要技术指标及工作内容和要求:本设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,两个控制温度设定按键(增大/减小),四位数码管分别显示设定温度和实际温度,量程为0~99度,打开电源开关后设定温度初始化为26度。

1,按键输入采用中断方式,两个按键分别接INT0和INT1。

2,采用铂电阻(Pt100)温度传感器进行温度测量,模数转换采用ADC0809。

3,单片机根据设定温度S和实测温度P控制继电器R的动作,死区设为2度:当P<=S-1时,控制R接通电加热回路;当P>S+1时,控制R断开电加热回路;当S-1<P<=S+1时,R保持原状态不变。

目录错误!未定义书签。

1.系统总体设计方案 (1)智能温控器的功能设计 (1)2.系统硬件设计 (2)单片机概述 (2)A/D转换电路 (2)ADC0808介绍 (2)A/D转换电路工作原理 (3)温度采样电路 (3)铂电阻(Pt100)温度传感器 (3)按健开关 (4)温度显示电路 (5)温度显示工作原理 (5)热电阻驱动电路 (6)第3章系统软件设计 (7)软件设计思路 (7)程序流程 (7)程序内容编写 (9)参考文献: (13)附录 (14)基于MCS-51单片机的智能温控器的设计与开发1.系统总体设计方案智能温控器主要单片机,时序电路,温度采样电路,A/D转换电路,温度显示电路,温度输入电路,驱动电路等组成。

系统原理图见图1所示:图1智能温控器控制系统框图智能温控器的功能设计以MCS-51系列单片机为核心,采用常用电子器件设计,一个电源开关,两个控制温度设定按键(增大/减小),四位数码管分别显示设定温度和实际温度,量程为0~99度,打开电源开关后设定温度初始化为26度。

1,按键输入采用中断方式,两个按键分别接INT0和INT1。

2,采用铂电阻(Pt100)温度传感器进行温度测量,模数转换采用ADC0809。

3,单片机根据设定温度S和实测温度P控制继电器R的动作,死区设为2度:当P<=S-1时,控制R接通电加热回路;当P>S+1时,控制R断开电加热回路;当S-1<P<=S+1时,R保持原状态不变。

12.系统硬件设计单片机概述由于智能温度控制器的核心就是单片机,单片机的选择将直接关系到控制系统的工作是否有效和协调。

本设计采用MCS-51系列的8051单片机,因为8051单片机应用广泛,性能稳定,抗干扰能力强,性价比高。

8051包含了8位CPU,片内振荡器,4K字节ROM,128字节RAM,2个16位定时器,计数器,中断结构,I/O接口等。

可进行计算,定时等一系列功能。

A/D转换电路ADC0808介绍ADC0808是8位全MOS中速A/D 转换器、它是逐次逼近式A/D 转换器,片内有三态数据输出锁存器,可以和单片机直接口接。

其主要引脚功能如下:(1)RD,WR:读选通信号和选通信号(低电平有效)。

(2)CLK:时钟脉冲输入端,上升有效。

(3)DB0—DB7是输入信号。

(4)CLKR:内部时钟发生器外接电阻端,与CLKIN端配合可由芯片自身产生时钟脉冲,其频率为1/。

(5)CS:片选信号输入端,低电平有效,一旦CS有效,表明A/D 转换器被选中,可启动。

(6)WR:写信号输入,接受微机系统或其它数字系统控制芯片的启动输入端,低电平有效,CS、WR同时为低电平时,启动转换。

(7)INTR:转换结束输出信号,低电平有效,输出低电平表示本次转换已完成。

该信号常作为向微机系统发出的中断请求信号。

(8)CLK:为外部时钟输入端,时钟频率高,A/D转换速度快。

允许范围为10-1280KHZ,典型值为640KHZ,此时,A/D转换时间为10us。

通常由MCS—51单片机ALE端直接或分频后与其相连。

当MCS单片机与读写外,RAM操作时,ALE信号固定为CPU时钟频率的1/6,若单片外接的晶振为6MHZ,则1/6为1MHZ,A/D转换时间为64us。

22.2.2A/D转换电路工作原理ADC0808的两模拟信号输入端,用以接受单极性、双极性和差摸输入信号,与WR同时为低电平A/D转换器被启动切在WR上升沿后100 模数完成转换,转换结果存入数据锁存器,同时,INTR自动变为低电平,表示本次转换已结束。

如CS、RD同时来低电平,则数据锁存器三态门打开,数字信号送出,而在RD高电平到来后三态门处于高阻状态图2 A/D转换电路图温度采样电路铂电阻(Pt100)温度传感器当PT100在0摄氏度的时候他的阻值为100欧姆,它的阻值会随着温度上升而3成近似匀速的增长。

但他们之间的关系并不是简单的正比的关系,而更应该趋于一条抛物线。

铂电阻的阻值随温度的变化而变化的计算公式:-200<t<0℃ Rt=R0[1+At+Bt+C(t-100)t] (1)0<t<850℃ Rt=R0(1+At+Bt2)(2)Rt为t℃时的电阻值,R0为0℃时的阻值。

公式中的A,B,系数为实验测定。

标准的系数为:A=*10-3℃;B=*10-7℃; C=*10-12℃按健开关设定按键(增大/减小),四位数码管分别显示设定温度和实际温度,量程为0~99度,打开电源开关后设定温度初始化为26度。

按键输入采用中断方式,两个按键分别接INT0和INT14温度显示电路LED驱动74LS47 介绍:74LS47是一块BCD码转换成7段LED数码管的译码驱动IC,74LS47的主要功能是输出低电平驱动的显示码,用以推动共阳极7段LED数码管显示相应的数字。

相应引脚功能如下:(1)QA,QB,QC,QD,QE,QF,QG:7段LED数码输出引脚。

(2)A,B,C,D :输入引脚。

(3)RBO,BT,LI 高电平输出有效。

温度显示工作原理温度显示电路如图4所示:由2片TTL74LS47和2片七段LED 组成,LED采用共阳级接法。

74LS47的QA-QG接BCD的a-g,段选信号由8051的P1口提供,LED显示数据由74LS47的输出决定,即由P1口信号的取值决定。

5图4 TTL74LS47 BCD显示电路热电阻驱动电路热电阻驱动控制,8051的的引脚与ULN2003A的引脚相连接,从发出的控制信号经ULN2003到达电磁继电器,驱动热电阻的运行和停止。

ULN2003是高压大电流达林顿晶体管阵列系列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类要求高速大功率驱动的系统。

其中ULN2003是由7个NPN具有用共阴二极管夹紧来转换电感负载的高压输出特征的达林顿晶体管组成。

当前一对单精度型的额定电流为500mA,有比较高的电流容量,它的应用软件包括继电器驱动器、显示驱动器,线驱动器和逻辑缓冲器等。

在本驱动电路中的作用是增大电流驱动能力。

该芯片采用16脚的DIP 封装,其中第9为公共输出端COM,有一个输出端为高电平,COM就为高电平。

6图5 电磁继电器和热电阻电路第3章系统软件设计软件设计思路软件设计的任务包括启动A/D转换、读A/D转换结果、设置温度、温度控制等,其中启动A/D转换、读A/D转换结果、温度控制等工作在主程序中完成,设置温度在中断服务程序中完成,根据对比结果给出控制信号,令热电阻运行或停止,实现温度调控。

程序流程主程序流程图如图6所示中断服务程序流程图7、8所示7图6主程序流程图图7增加键中断服务子程序流程图8图8 减小键中断服务程序流程图3.3程序内容编写ORG 0000HJMP START1ORG 0003HLJMP INTER1ORG 0013HLJMP INTER2ORG 0100HSTART1:MOV SP,#60H;设置堆栈指针SETB IT0SETB IT1MOV IE,#85H; 中断0\中断1开放ANL P1,#00HMOV P1,#26H; 设定温度初值LCALL START;调用AD转换程序LCALL C1;调用温度控制程序LJMP $ORG 0200H; 增加键(中断0)首地址INTER1:PUSH ACC;保护现场PUSH PSWCLR C9LCALL DELAY;按键延时A1:JB ,A1;判断有无键按下SET1:LCALL DELAY;按键防抖MOV A,P1ANL A,#0FHINC AMOV 30H,AMOV A,P1ANL A,#0F0HADDC A,30HDA A;对A十进制调整MOV P1,APOP PSWPOP ACCORG 0300H ;减小键(中断1)首地址INTER2:PUSH ACCPUSH PSWCLRA2:JB ,A2;判断有无键按下SET2:LCALL DELAY;按键防抖MOV A,P1ANL A,#0FHSUBB A,#01HJB ,Q0MOV 35H,AMOV A,P1ANL A,#0F0HADD A,35HQ0:MOV A,P1ANL A,#0F0HCLR CSUBB A,#10HJC Q2ADD A,#09HJMP Q1Q2:MOV A,#99HQ1:MOV P1,APOP PSWPOP ACCRETISTART:MOV R1,#20H 10MOVX @DPTR,A; A/D转化器开始转换WAIT1: JB ,WAIT1WAIT2: JNB ,WAIT2MOVX A,@DPTRLCALL BINBCD1MOV @R1,AMOV P0,ARETORG 0400H; 控制温度子程序C1:CLR CMOV A,20H; 将检测温度送到累加器A中SUBB A,P1JNC GAO; 判断环境温度是否高于预设温度SJMP DIDI:CLR CMOV A,20HADDC A,#01MOV 20H,ACLR CMOV A,P1SUBB A,20HJC Z1; 判断预设温度是否等于(检测温度+1) SETBSJMP Z1Z1:RETGAO:CLR CSUBB A,#02JNC Z1; 判断环境温度减预设温度是否小于2 CLRRETDELAY:MOV R7,#06H;延时子程序D0:MOV R6,#0FAHDJNZ R6,$DJNZ R7,D0RETBINBCD1:MOV B,#10;二进制转化为十进制子程序DIV ABSWAP AADD A,BRETEND11参考文献:《新编单片机原理及应用》汪贵平李登峰龚贤武雷旭编着《电工电子技术》下册秦曾煌主编百度百科电路图:见附录(由于时间短,程序中有些不足之处,参考者可以加以改进) 13附录:。

相关文档
最新文档