单片机综合课程设计(温度控制器)
(完整版)单片机温度控制器设计毕业设计
摘要随着微机测量和控制技术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。
本设计论述了一种以STC89C52单片机为主控制单元。
该控制系统可以实时存储相关的温度数据。
系统设计了相关的硬件电路和相关应用程序。
硬件电路主要包括STC89C51单片机最小系统,测温电路、实时时钟电路、 LED 显示以及通讯模块电路等。
系统程序主要包括主程序,读出温度子程序,计算温度子程序、按键处理程序、LCD 显示程序以及数据存储程序等。
关键词: STC89C52单片机; DS18B20;显示电路AbstractAlong with the computer measurement and control technology of the rapid development and wide application, based on singlechip temperature gathering and control system development and application greatly improve the production of temperature in life level of control. This design STC89C52 describes a kind of mainly by MCU control unit, for temperature sensor DS18B20 temperature control system. The control system can real-time storage temperature data and record related to the current time. System design related hardware circuit and related applications.STC89C52 microcontroller hardware circuit include temperature detection circuit smallest system, and real-time clock circuit, LCD display circuit, communication module circuit, etc. System programming mainly include main program, read temperature subroutine, the calculation of temperature subroutines, key processingprocedures, LCD display procedures and data storage procedures, etc.Keywords:STC89C52 microcontroller;DS18B20; display circuit第 1 章51 单片机结构和原理单片微型计算机简称单片机,也称为微控制器(Micro Controller Unit),英文缩写为MCU单.片机的结构及功能均是按照工业控制要求而设计的,它把微型计算机的宫格功能部件(中央处理器CPU、随机存取存储器 RAM、只读存储器 ROM、输入输出 I/O 接口、定时器 / 计数器以及串行通信接口等)集成在一块芯片上,构成一个完整的微型计算机,故又称为单片微型计算机。
单片机智能温控器课程设计
单片机课程设计说明书专业:机械设计制造及其自动化设计题目:智能温控器设计者:指导老师:设计时间:一、课题名称:一个基于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度。
温控器课程设计
基于89C51单片机的温度控制器的设计摘要温度控制器是一种提供温度显示、语音报温和报警的装置。
基于89C51单片机设计,测温探头采用DS18B20数字温度传感器,测量现场温度,语音播放装置采用ISD1420语音芯片,实现语音定时报温和报警功能,使用7段码显示器显示当前温度,蜂鸣器提供报警功能。
该装置可以实现上下位机通信,上位机设置报警温度,实现控温目的,并且根据下位机测量的温度绘出温度变化曲线。
关键字:单片机(89C51); DS18B20; ISD1420; 7段码显示器;蜂鸣器AbstractThe temperature controller is a provide temperature display, voice alarm device for mild. Based on the 89 C51 single chip design, measurement temperature probe using digital temperature sensor DS18B20, measuring the temperature, speech broadcast device adopts ISD1420 voice chip, realize voice set times mild alarm functions, use 7 bit code display shows the current temperature buzzer, provide alarm function. This device can achieve a machine and communication, PC set alarm temperature, temperature control, and achieve purpose according to a machine.Key word: SCM (89 C52); DS18B20; ISD1420; 7 bit code displays; sounders目录摘要 (1)目录 (2)第一章引言 (3)第二章硬件系统设计 (4)2.1 硬件系统 (4)2.1.1 单片机模块 (5)2.1.2 温度传感器模块 (5)2.1.3 语音模块 (6)2.1.4 LED显示模块 (7)2.1.5 RS232通讯模块 (8)2.1.6 蜂鸣器模块 (9)2.2 芯片介绍 (10)2.2.1 STC89C52RC芯片 (10)2.2.2 DS18B20芯片 (12)2.2.3 ISD1420芯片 (16)2.2.4 MAX232芯片 (19)第三章软件系统设计 (21)3.1 参数信息 (21)3.2 程序设计 (22)3.2.1主程序设计 (22)3.2.2 温度处理程序设计 (23)3.2.3 录放音程序设计 (24)3.2.4 中断程序设计 (26)第四章性能测试与结果分析 (28)4.1串口通讯工具 (28)4.1.1 串口通讯程序 (29)4.1.2 串口通讯界面 (29)4.2 串口通讯 (30)4.2.1 发送功能 (30)4.2.2 接收功能 (30)4.2.3 绘制温度曲线 (31)第五章课程设计总结 (32)5.1 问题与解决 (32)5.2 心得体会 (32)参考文献 (34)附录 (35)第一章引言温度是许多领域控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足轻重的作用。
单片机温度控制器实验报告
南京邮电大学通达学院2010/2011学年第1学期课程设计实验报告课题名称基于CPU的8LED温度显示控制器的设计专业通信工程学生班级070018学号07001836姓名赵静静指导老师林建中实验日期2010 年11 月19 日题目:基于单片cpu的8led温度显示控制器的设计一,实验目的和要求1,Proteus软件的MCS51单片机仿真学习2,根据提供的参考工程,在proteus平台自己重新设计实验电路所需要的电器原理图,并在此基础上编写相对应的程序,实现其功能,学习proteus软件的使用,其中包括原理图器件的选取,原理图的电气连接,程序的编写编译以及运行,并能查出其错误等。
基本要求:用热敏电阻或温度传感器作温度探头,通过AD转换器变换,把温度数据转换成BCD码在LCD上显示。
显示精度±0。
5℃能记录和回放温度参数,记录间隔可任意设定(1S到1h,步长1s)回放数据速度可设定画出温度变化曲线。
发挥部分:1 显示精度提高到±0。
1℃2 显示精度提高到±0。
01℃3 与实际温度计温度比较,找出温度显示误差曲线,在报告中描出,并分析误差来源4 实现温度自动补赏二,实验仪器微型计算机一台三,实验原理温度测量通常可以用两种方式来实现,一种是用热敏电阻之类的器件,由于感温效应,热敏电阻的阻值能够随温度变化,当热敏电阻接入电路,测量过它的电流或其两端的电压就会随温度变化发生响应的变化,在将温度变化的电压或电流采集过来,进行A/D 转化后,发送到单片机进行处理,通过显示电路,就可以将被测温度显示出来。
这种设计需要用到A/D转换电路,其测温电路比较麻烦。
第二种方法是用温度传感器芯片。
温度传感器芯片能把温度信号转换成数字信号,直接发送给单片机,转换后通过显示电路既可以显示。
四,基本芯片及其原理单片机微型计算机简称单片机,是指在一块芯片体上集成了中央处理器CPU、随机存储器RAM、程序存储器ROM或EPROM、定时器/计数器、中断控制器以及串行和并行I/O 接口等部件,构成一个完整的微型计算机。
单片机课程设计(温度控制器)
基于单片机的温度控制器设计内容摘要:该温度报警系统以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 设计任务基于单片机设计温度检测报警,可以实时采集周围的温度信息进行显示,并且可以根据应用环境不同设定不同的报警上下限。
单片机温度控制器设计
单片机温度控制器设计一、引言温度控制器是一种广泛应用于工业控制领域的设备,它可以根据设定的温度范围来自动控制物体的温度。
本文将介绍一种基于单片机的温度控制器设计方案。
二、设计原理1. 温度传感器:选用精确可靠的温度传感器,如LM35,通过检测环境温度并将其转换为电压信号。
2. 单片机:选用适当的单片机,如STM32系列,负责温度信号的采集、处理和控制输出。
3. 控制输出:通过继电器或三极管等元件,控制加热装置或制冷装置的工作状态,以实现温度的控制。
4. 显示模块:为了方便用户了解当前温度信息,可以选用LCD显示模块,将温度数据进行实时显示。
5. 供电电源:通过稳压电源模块,为温度控制器提供稳定可靠的电源。
三、硬件设计1. 电路连接:按照传感器、单片机、控制输出、显示模块和供电电源的顺序进行连接,并注意信号线与电源线之间的分隔,以减少干扰。
2. 电气连接:将电路连接至电源,确保供电电源工作稳定。
3. 外壳设计:为了保护电路免受外界环境的干扰,可以设计一个合适的外壳来固定和封装电路。
四、软件设计1. 初始化设置:在程序开始时,进行各模块的初始化设置,包括ADC模块的初始化、定时器的初始化、控制输出口的初始化等。
2. 温度采集:通过ADC模块读取温度传感器的模拟信号,并进行一定的处理,得到代表温度的数字数据。
3. 控制策略:根据温度数据与设定温度的比较结果,确定控制输出的状态,以实现加热或制冷操作。
4. 显示功能:将温度数据通过串口或I2C总线发送至LCD显示模块,以供用户实时了解当前温度信息。
五、测试与调试1. 硬件测试:检查电路连接是否正确,通过示波器或万用表等工具,测量各信号线的电压或电流是否符合设计要求。
2. 软件调试:通过单片机的调试工具,逐步调试程序代码,确保各功能模块正常运行,并能正确响应设定的温度阈值。
3. 性能验证:将温度控制器放置在不同温度环境下,观察并记录控制输出的状态与温度变化的关系,验证温度控制器的稳定性和精度。
基于单片机DS18B20温度控制器课程设计
《单片机原理及应用》课程设计报告题目:温度控制器电路专业:电子信息工程年级: 2010级学号: ********** 学生姓名: ******* 联系电话: ************ 指导老师: *******完成日期:2013年5月30摘要随着时代的进步和发展,温度的测试已经影响到我们的生活、工作、科研、各个领域,已经成为了一种非常重要的事情,因此设计一个温度测试的系统势在必行。
本文主要介绍了一个基于AT89C52单片机的数字温度报警器系统。
详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度的采集和报警,并可以根据需要任意上下限报警温度,它使用起来相当方便,具有量程宽、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块潜入其他系统中,作为其他主系统的辅助扩展。
DS18B20与AT89C52结合实现最简温度报警系统,该系统结构简单,有广泛的应用前景。
关键词:单片机;温度检测;AT89C52;DS18B20;ABSTRACTWith the era of progress and development, the temperature test has affected our life, work, scientific research, each domain, has become a very important thing, be imperative system so the design of a temperature test.This paper introduces a digital temperature alarm system based on AT89C52 mcu. Detailed description of the process of digital temperature sensor DS18B20 temperature measurement system development, focusing on the sensor under the SCM hardware connection, software programming and system flow of each module are analyzed in detail, on the part of the circuit are one one are introduced, the system can facilitate the realization of temperature acquisition and alarm, and can according to need any alarm temperature, it is very convenient to use, has a wide range, small volume, low power consumption, suitable for our daily lives and industrial, agricultural production in the temperature measurement, can also be used as a temperature processing module into other systems, as other auxiliary system. DS18B20 combined with AT89C52 to achieve the most simple temperature alarm system, the system is simple in structure, has the widespread application prospect.Key word.Single chip microcomputer; temperature detection; AT89C52; DS18B20;目录摘要 (I)ABSTRACT........................................................... I I 1 设计要求及方案选择 (1)1.1设计要求 (1)1.2方案选择 (1)2 理论分析与设计 (1)2.1 芯片介绍 (1)2..1.1 DS18B20概述 (1)2.1.2 STC89C52介绍 (2)2.2系统结构框图 (3)2.3程序原理叙述 (3)3.电路设计 (3)3.1硬件设计 (3)3.1.1报警模块 (4)3.1.2单片机最小系统电路 (4)3.1.3温度采集模块 (5)3.2软件设计 (5)3.2.1流程框图 (6)3.2.2程序设计 (6)4、系统测试 (15)5、总结 (16).参考文献 (17)1 设计要求及方案选择1.1设计要求1制作完成温度检测系统2温度检测精度1度3温度控制在一定范围内,超出温度设定范围是报警(声光显示)4将学号和姓名打印在铜板上1.2方案选择方案一:采用热敏电阻,热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的,在温度测量系统中,也常采用单片温度传感器,比如AD590,LM35等。
南京工程学院单片机课设空调温度控制器设计
课题空调温度控制器设计一.设计任务(要求)1.设计任务运用<<单片机原理及应用A>>课程等知识,根据题目要求进行软硬件系统的设计和调试,从而加深对本课程知识点的理解,使学生综合应用知识能力、设计能力、调试能力及报告撰写能力等显著提高。
了解闭环控制的基本原理,熟悉A/D变换原理和编程方法,掌握键盘扫描和LED显示原理和编程方法。
2.设计要求利用实验仪上显示电路,键盘电路,A/D变换电路,完成类似空调恒温控制设计(1)可以利用实验仪上的电位器模仿温度变化(2)加热和致冷电机可以用发光管代替,加热时红色发光管亮,制冷时驱动绿色发光管亮(3)要求可以用键盘预设恒温温度,当外界温度超过设定温度+/-2℃时,就要启动加热或致冷电机。
二.设计方案1. 设定一恒温温度25度,通过键盘来控制它的大小,设定一键温度加一,一键温度减一,电位器所出的模拟温度来和恒温温度进行比较。
2.对各个子程序(LED显示,键盘扫描,A/D采样)在主程序实行调用,以此来达到实验的要求。
三.原理框图A/D采样子程序LED显示子程序键盘扫描子程序温度控制主程序四.系统模块详细设计与调试系统模块的设计1.A/D转换子程序BEING: MOV DPTR , #8000H ; AD转换子程序MOV DPTR , #8000H;启动A/D转换MOVX @DPTR , AMOV R6 , #14HDELAY2: NOPNOPNOPDJNZ R6,DELAY2MOVX A,@DPTRMOV 47H,A ; 温度AD转换结果暂存47H单元ACALL CHANGE ; 十六进制转十进制子程序LCALL DISPLAYLEDRETCHANGE: MOV R1 , #00HMOV R2,#00HCLR CCHAN: SUBB A,#64HJC CHAN1INC R1AJMP CHANCHAN1: ADD A,#64HCHAN2: SUBB A,#0AHJC CHAN3INC R2AJMP CHAN2CHAN3: ADD A, #0BHMOV 64H,A ;转换结果个位暂存2AH单元MOV 63H,R2 ;十位存2BH单元MOV 62H,R1 ;百位存2CH单元RET2.LED转换子程序DISPLAYLED :MOV R0,#BUF ;r0指向显示缓冲首地址MOV R1,#5 ;要循环2次,有2个LEDMOV R2,#00100000B ;从第一位开始LOOP: MOV DPTR,#OUTBITMOV A,#0MOVX @DPTR,A ;关所有的位的显示MOV A,@R0MOV DPTR,#LEDMAP ;查表MOVC A,@A+DPTRMOV DPTR,#OUTSETMOVX @DPTR,A ;输出r0指向的单元的数MOV DPTR,#OUTBITMOV A,R2MOVX @DPTR,A ;开显示,将这个数显示出来(r2决定在哪一位显示)MOV R6,#01 ;延时CALL DELAY ;延时MOV A,R2RR AMOV R2,A ;准备显示下一位数INC R0 ;r0指向下个单元DJNZ R1,LOOP ;循环六次MOV DPTR,#OUTBITMOV A,#0MOVX @DPTR,A ;关所有的位的显示RET3.按键子程序ANJIAN:CALL TESTKEY ;检测键盘是否有按键按下JZ ANJIANMOV R6,#10 ;延时去抖动CALL DELAYCALL TESTKEY ;再次检测键盘是否有按键按下JZ ANJIANMOVX @DPTR,AMOV R1,#00100000BMOV R2,#6KLOOP: MOV DPTR,#OUTBIT ;扫描,得到按键的行和列MOV A,R1CPL A ;(取反)用零去扫描各列MOVX @DPTR,ACPL ARR A ;下一列MOV R1,A ;R1暂存列值MOV DPTR,#INMOVX A,@DPTR ;读行状态CPL AANL A,#0FHJNZ GOON1DJNZ R2,KLOOP ;下一列扫描(一轮6次)MOV R2,#06HSJMP KLOOP ;下一轮扫描GOON1: ;按照行列计算键值MOV R1,A ;行号放在R1内MOV A,R2 ;R2中放的是列号DEC A ;RL A ;RL A ;MOV R2,A ;R2=(列号-1)*4MOV A,R1MOV R1,#4LOOPC: RRC AJC EXITINC R2DJNZ R1,LOOPC ;行值(0100)右移,并统计移的位数,移的位数就是行值EXIT: ;查表得到键值MOV A,R2MOV DPTR,#KEYTABLEMOVC A,@A+DPTRMOV R2,AWAITRELEASE:MOV DPTR,#OUTBIT ;等待按键释放,将键值存在A寄存器中CLR AMOVX @DPTR,AMOV R6,#10 ;CALL DELAY ;延时CALL TESTKEY ;测试按键是否放开JNZ WAITRELEASE ;是的MOV A,R2RET调试(1)调试的过程A.在实验系统中输入程序,并对其进行编译修正,直到没有错误。
单片机温控课程设计
摘要本系统能够真实对第三段料筒温度的设定与管理。
系统的的核心是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、利用单片机AT89S51实现对温度物理量的控制,以实现对温度控制的目的;2、为达到电源输出5V电压目标,完成电源电路的设计;3、为达到数码管显示目标,完成显示电路的设计;4、为达到键盘控制的目标,完成键盘电路的设计;5、为达到检测温度的目标,完成检测电路的设计;6、完成报警设计;7、进行软件设计[分配系统资源,编写系统初始化和主程序模块;编写数字调节器软件模块;编写A/D转换器处理程序模块;编写输出控制程序模块;其它程序模块(数字滤波、显示与键盘等处理程)等等。
一、本课程设计系统概述1、系统原理温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机 AT89S51 获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。
当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备 (压缩制冷器) ,当采集的温度经处理后低于设定温度的下时 , 单片机通过三极管驱动继电器开启升温设备 (加热器) 。
当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声。
系统中将通过串口通讯连接PC机存储温度变化时的历史数据,以便观察整个温度的控制过程及监控温度的变化全过程。
2、系统结构图本设计以AT89S51单片机为主控核心设计的一个温度控制系统,低温时可控制加热设备,高温时控制风扇,超出设定最高温度值时蜂鸣器发出声响报警。
图1 总体硬件方框图3、文字说明控制方案(1)温度测量部分方案DS18B20是DALLAS公司生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55~+125℃,可编程为9~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
单片机温度控制系统课程设计
计算机控制系统课程设计(论文)任务书摘要温度是日常生活中无时不在的物理量,温度的控制在各个领域都有积极的意义。
很多行业中都有大量的用电加热设备,如用于热处理的加热炉,用于融化金属的坩锅电阻炉及各种不同用途的温度箱等,采用单片机对它们进行控制不仅具有控制方便、简单、灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。
因此,智能化温度控制技术正被广泛地采用。
本温度设计采用现在流行的AT89S51单片机,配以DS18B20数字温度传感器,该温度传感器可自行设置温度上下限。
单片机将检测到的温度信号与输入的温度上、下限进行比较,由此作出判断是否启动继电器以开启备。
本设计还加入了常用的数码管显示及状态灯显示灯常用电路,使整个设计更加完整更加灵活。
关键词: 温度箱;AT89S51;单片机;输入通道设计;控制;模拟目录1 引言 (1)1.1 温度控制系统设计的背景、发展历史及意义 (1)1.2 温度控制系统的目的 (1)1.3 温度控制系统完成的功能 (1)2 总体设计方案 (2)2.1 方案一 (2)2.2 方案二 (2)3 DS18B20温度传感器简介 (7)3.1 温度传感器的历史及简介 (7)3.2 DS18B20的工作原理 (7)3.2.1 DS18B20工作时序 (7)3.2.2 ROM操作命令 (9)3.3 DS18B20的测温原理 (9)3.3.1DS18B20的测温原理: (9)3.3.2 DS18B20的测温流程 (11)4 单片机接口设计 (12)4.1 设计原则 (12)4.2 引脚连接 (12)4.2.1 晶振电路 (12)4.2.2 串口引脚 (12)4.2.3 其它引脚 (13)5 系统整体设计 (14)5.1 系统硬件电路设计 (14)5.1.1 主板电路设计 (14)5.1.2 各部分电路 (14)5.2 系统软件设计 (16)5.2.1 系统软件设计整体思路 (16)5.2.2 系统程序流图 (17)5.3 调试 (21)6 结束语 (23)附录 (24)参考文献 (32)1 引言1.1 温度控制系统设计的背景、发展历史及意义随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。
单片机课设温控器
电气工程学院微机接口与原理课程设计设计题目:温度控制器学号:姓名:同组人:指导教师:设计时间:2015.1.23——2015.1.29设计地点:电气学院实验中心摘要电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化。
在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了各个方面。
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
而51系列单片机是各单片机中最为典型和最有代表性的一种,通过本次课程设计进一步对单片机学习和应用,从而更熟悉单片机的原理和相关设计并提高了开发软、硬件的能力。
本次设计就是要通过以MCS-51系列单片机为控制核心,实现温度控制器的设计。
关键词:单片机、集成电路、控制、温度第一章系统方案设计一、流程图的基本设计:通过调整继电器,则可将需要设定的温度随所对应的电压值传输给单片机,再由单片机控制显示器,显示出设定的电压值(即对应的温度值),再通过温度传感器和AD转换将采集的温度与设定的温度进行比较,若一致,则不动作,若不一致,则驱动加热或降温设备,从而实现对被控对象的温度控制。
其大致可以分为以下几个部分:1、主程序部分:在单片机内部输入温度比较程序,当温度低于50度,开始加热;当温度高于55度时,关加热器;当温度高于70度时,开风机;当温度低于65度时,关风机。
2、AD转化部分:将被控对象的温度通过温度传感器转化为模拟电压信号(已用可变电压代替温度变化),再将模拟电压信号通过ADC0832芯片转化为数字信号,从而完成模拟信号到数字信号的转换。
单片机课程设计_基于89C51的数字温度控制器设计
单片机最小系统如图3.1所示,其中有4个双向的8位并行I/O端口,分别记作P0、P1、P2、P3,都可以用于数据的输出和输入,P3口具有第二功能为系统提供一些控制信号。时钟电路用于产生MCS-51单片机工作所必须的时钟控制信号,内部电路在时钟信号的控制下,严格地按时序指令工作。MCS-51内部有一个用于构成振荡器的高增益反向放大器,该高增益反向放大器的输入端为芯片的引脚XTAL1,输出端为XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的微调电容通常选择为30pF左右,该电容的大小会影响到振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率为12MHz。
单片机系统
课程设计
成绩评定表
设计课题:基于89C51的数字温度控制器设计
学院名称:电气工程学院
专业班级:
学生姓名:
学号:
指导教师:
设计地点 :
设计时间 :
指导教师意见:
成绩:
签名: 年 月 日
单片机系统
课程设计
课程设计名称:基于89C51的数字温度控制器设计
专业班级:
学生姓名:
学号:
指导教师:
课程设计地点:
图 3.3 温度传感电路图
DS18B20有六条控制命令,如表3.1所示:
表3-1 DS18B20控制命令
指 令
约定代码
操 作 说 明
温度转换
44H
启动DS18B20进行温度转换读暂存器BEH读暂存器9个字节内容
写暂存器
4EH
将数据写入暂存器的TH、TL字节
复制暂存器
48H
把暂存器的TH、TL字节写到E2RAM中
5.1 温控电路及报警电路的控制………………………………16
《2024年基于单片机的温度控制器设计与研究》范文
《基于单片机的温度控制器设计与研究》篇一一、引言随着科技的不断进步,温度控制技术在工业、农业、医疗、家庭等领域得到了广泛应用。
为了满足不同领域对温度控制的高精度、高稳定性和高可靠性的要求,基于单片机的温度控制器应运而生。
本文旨在设计并研究一种基于单片机的温度控制器,以提高温度控制的精度和稳定性。
二、系统设计1. 硬件设计本系统采用单片机作为核心控制器,通过温度传感器采集温度信息,并利用继电器或PWM信号控制加热或制冷设备。
具体设计包括单片机最小系统、温度传感器电路、继电器或PWM控制电路等。
(1)单片机最小系统:包括单片机芯片、时钟电路、复位电路等,为系统提供基本的工作环境。
(2)温度传感器电路:选用高精度的温度传感器,如DS18B20等,将温度信息转换为电信号,供单片机读取。
(3)继电器或PWM控制电路:根据单片机的控制信号,控制加热或制冷设备的开关或PWM信号,以实现温度的精确控制。
2. 软件设计软件设计主要包括单片机的程序编写和调试。
程序采用C语言编写,具有可读性强、易于修改和扩展的特点。
主要功能包括温度信息的读取、数据处理、控制信号的输出等。
(1)温度信息的读取:通过与温度传感器通信,读取温度信息。
(2)数据处理:对读取的温度信息进行滤波、转换等处理,以获得准确的温度值。
(3)控制信号的输出:根据设定的温度值与实际温度值的差异,输出控制信号,控制加热或制冷设备的运行。
三、系统实现1. 硬件实现根据系统设计,制作出硬件电路板,将各部件焊接到电路板上,并进行调试和测试。
测试内容包括电路的连通性、各部件的工作状态等。
2. 软件实现将编写好的程序烧写到单片机中,进行系统调试和测试。
测试内容包括温度信息的读取、数据处理、控制信号的输出等。
通过不断调试和优化,使系统达到设定的性能指标。
四、性能分析1. 精度分析本系统采用高精度的温度传感器和精确的控制算法,实现了高精度的温度控制。
经过实际测试,系统的温度控制精度达到了设定要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
杭州电子科技大学信息工程学院单片机课程设计报告(电气工程与自动化专业)姓名班级:学号:指导教师: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();}}}四总结本次短学期的内容是是设计温度控制器。
经过半个多月的构思,设计到最后的实践,遇到不少困难,所以结果也有很多瑕疵。
不过过程是蛮有意义的,从数码管显示到矩阵键盘的控制再到温度的读取与显示,无不遇到困难并解决之。
下面把主要遇到困难的经历说一下。
首先是数码管显示问题。
由于我们之前所学的是89C51单片机,与这次所实践的板不同,虽然感觉这板更简单,但毕竟不是很专业,依然使用原来学过的程序,结果当然不能运行。
后来仔细研究了原理图,发现端口就不一样,还有STC12C5A16S2没有锁存器,于是按照原理图先定义好每一位选端口,因为此单片机默认的是高电平,所以先把四个位先置底,然后按照原来的思路就可以进行下去了。
还有就是矩阵键盘调试过程中,对P3口的赋值要注意,因为要跟C51的高低电平刚好相反。
最遗憾的是用一个按钮作为开关机键这一过程还没有实现,总觉得程序没有什么错,是不是板子的缘故就不知道了(据说这些板子焊的不是很好)。
这可以说是一个工程,一个不小的工程。
这不但是一次对我们知识的检验,还是一次温故而知新的过程。
实践的机会少之又少,抓好一次就是一次进步,而且亲自实践过才能更好的,更深刻的掌握。