a6598825
用手写啊,不过我在替一个同学做毕业设计,也是温度计的,采用DS18B20的,液晶显示屏,几百元,带实物! 
基于MCS-51单片机温控系统设计的电阻炉论文字数:页数:42 论文编号:JD471 摘 要近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用。 单片机是随着超大规模集成电路技术的发展而诞生的。由于它具有体积小、功能强、性价比高等特点。把单片机应用于温度控制中,采用单片机做主控单元,无触点控制,可完成对温度的采集和控制的要求。所以广泛应用于电子仪表、家用电器、节能装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品的功能和质量,又降低了成本,简化了设计。周期作业式的电阻炉,可供实验室、工矿企业、科研单位作元素分析测定和一般小型钢件淬火、退火、回火等热处理时加热用。原电阻炉需与温度控制器配套使用,由检测端的热电偶信号输送给温度指示调节仪,继而控制接触器对电阻炉供电,实现电阻炉温的测量、指示及自动控制。电阻炉温波动较大,控制精度低。本文主要介绍单片机在电阻炉温控中的应用,对温度控制模块的组成及主要所选器件进行了详细的介绍。并根据具体的要求本文编写了适合本设计的软件程序。关键词:单片机;电阻炉;炉温;控制系统 目 录摘要………………………………………………………………………………… ⅠAbstract…………………………………………………………………………Ⅱ第1章 绪论…………………………………………………………………………1 课题背景……………………………………………………………………2 MCS-51系列单片机………………………………………………………2第2章 总体设计电路图及工作原理…………………………………………… 1 总体方案设计………………………………………………………………2 电阻炉的单片机温控原理…………………………………………………7第3章 系统硬件设计…………………………………………………………… 1 系统硬件电路设计……………………………………………………… 2 硬件设计电路原理图…………………………………………………… 3 各元件说明……………………………………………………………… 19第4章 系统软件设计…………………………………………………………… 1 编程思路………………………………………………………………… 2 编程流程图……………………………………………………………… 23第5章 MCS-51单片机温控电阻炉技术特性…………………………………… 25总结………………………………………………………………………………… 26致谢………………………………………………………………………………… 27参考文献…………………………………………………………………………… 28附录…………………………………………………………………………………29附录1 硬件设计的电路…………………………………………………… 29附录2 程序………………………………………………………………… 30附录3 外文翻译…………………………………………………………… 38以上回答来自: -2/htm
二系统软件设计 图4 系统程序流程图1 系统程序流程图 系统程序流程图如图4所示。2 温度部分软件设计 DS18B20的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序。故主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。程序主要函数部分如下: (1)初始化函数 //读一个字节函数 ReadOneChar(void) {unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{ DQ = 0; // 给脉冲信号
dat>>=1;
DQ = 1; // 给脉冲信号
if(DQ)
dat|=0x80;
delay(4);} return(dat);} //写一个字节函数 WriteOneChar(unsigned char dat) {unsigned char i=0;
for (i=8; i>0; i--)
{DQ = 0;
DQ = dat&0x01;
delay(5);
DQ = 1;
dat>>=1;}} (2)读取温度并计算函数 ReadTemperature(void) {unsigned char a=0;
unsigned char b=0;
unsigned int t=0;
float tt=0;
Init_DS18B20();
WriteOneChar(0xCC); // 跳过读序号列号的操作
WriteOneChar(0x44); // 启动温度转换
Init_DS18B20();
WriteOneChar(0xCC); //跳过读序号列号的操作
WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度
a=ReadOneChar();
b=ReadOneChar();
t=b;
t<<=8;
t=t|a;
tt=t*0625;
t= tt*10+5; //放大10倍输出并四舍五入---此行没用
(3)主程序部分见前
return(t);} 三 结束语 AT89C2051单片机体积小、重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好。即使是非电子计算机专业人员,通过学习一些专业基础知识以后也能依靠自己的技术力量来开发所希望的单片机应用系统。 本文的温度控制系统只是单片机广泛应用于各行各业中的一例,相信读者会依靠自己的聪明才智使单片机的应用更加广泛化。另外对本例子可以作一些扩展,单片机的应用越来越广泛,由于单片机的运算功能较差,往往需要借助计算机系统,因此单片机和PC机进行远程通信更具有实际意义。目前此设计已成功应用于钻井模拟器实验室室温控制。 本文作者创新观点:采用的单片机AT89C2051性价比高,而且温度传感器DS18B20转化温度的方法非常简洁且精度高、测试范围较广。 参考文献 [1]林伸茂8051单片机彻底研究基础篇 北京:人民邮电出版社 2004 [2]范风强等单片机语言C51应用实战集锦 北京:电子工业出版社 2005 [3]谭浩强C语言程序设计(第二版) 北京:清华大学出版社 1999 [4]夏路易等电路原理图与电路板设计教程 北京:北京希望电子出版社 2002 [5]赵晶Protel99高级应用 北京:人民邮电出版社 2000 [6]聂毅单片机定时器中断时间误差的分析及补偿[J] 微计算机信息 2002,18(4):37~38 我的英语差,你自己再想办法翻译吧,呵呵