摘要 本文介绍了以51单片机为核心的温度控制器的设计,从硬件和软件设计两方面作了较为详尽的阐述。 关键词:数据采集,温度调节,温控系统,51单片机
Abstract This paper introduces a temperature control system that is based on the 51 single-chip computer.The hardware composition and software design are described in detail of this Control System of Water Temperature.
Keywords :Data acquisition Temperature regulation Control system of water temperature 51 Single-chip Computer
绪论 温度控制是工业生产过程中进场遇到的过程控制,许多生产过程是以温度作为被控参数。温度控制系统是典型的控制系统。本文是以51单片机为基础设计的温度控制系统,通过各种电路辅助完成硬件电路设计,并且把程序模块化,方便固化到硬件电路中,有较高的可实现性。
单片机简介 2.1 单片机的由来 单片机,专业名称—Micro Controller Unit(微控制器件),它是由大名鼎鼎的INTEL 公司发明的,最早的系列是MCS-48,后来有了MCS-51,现在还有MCS-96 系列,我们经常说的51 系列单片机就是MCS-51,它是一种8 位的单片机,而MCS-96 系列则是一种16 位的单片机,96系列根适合高速运行的场合 。后来INTEL 公司把它的核心技术转让给了世界上很多的小公司,所以世界上就有许多公司生产51 系列兼容单片机,比如飞利浦的87 LPC 系列,伟邦的W78L系列,达拉斯的DS87 系列,现代的GSM97 系列等等,目前在我国比较流行的就是美国ATMEL 公司的89C51,它是一种带Flash ROM 的单片机。Flash ROM 是一种快速存储式只读存储器,这种程序存储器的特点就是既可以电擦写,而且掉电后程序还能保存,编程寿命可以达到几千至几万次,所以我们的实验系统是可以反复烧写的。 单片机开发的整个过程,这个过程包括第一步—编辑源代码,第二步—编译源代码,第三步—程序仿真,第四步—芯片烧写(亦称编程)。
目 录 1绪论. .1 2单片机简介. .1 2.1单片机的由来. .1 2.2 MSC-51系列引脚图. .2 3 系统整体设计. 3 3.1设计要求.3 3.2总体设计方案. 3 3.2.1 硬件电路总体设计.3 3.2.2 软件电路总体设计.4 4 系统硬件设计.5 4.1 传感器的选择.5 4.1.1 温度传感器的选择. .5 4.1.2 流量传感器的选择. .6 4.2 温度调节器的选择. .9 4.3 硬件电路设计10 4.3.1 AD590外围电路设计10 4.3.2 电动单座调节阀的外围电路设计11 (毕业设计) 4.3.3 键盘及显示的设计. 12 4.3.4 掉电保护电路的设计.. 13 5 系统软件设计. ..14 5.1 系统定义. 14 5.2 程序框图及主要程序功能14 5.2.1 主程序模块. .15 5.2.2温度测量子程序框图16 5.2.3 调整设定温度子程序框图.17 设计总结18 附录(显示子程序). 19 致谢21 参考文献22
附录: 程序清单: 显示子程序: 程序实例(ad.asm): ORG 0000H ‘伪指令,指明以下程序的起始地址 MAIN1: ‘标号 ACALL DELAY ; 延时 ACALL AD ; 调用呼叫AD子程序 ;将转换的数字量屏蔽高位低位送显 MOV 31H,30H ‘将数据从30H口送到31H存储单元,备份 MOV A,30H ‘将数据存储A寄存器,将28送A,28=1CH ANL A,#0FH ‘和00001111与00011100,屏蔽高4位得00001100 MOV DPTR,#SETTAB ‘将数据表的首地址给DPTR MOVC A,@A+DPTR ‘取字符数据送A MOV SBUF,A ‘将显示的字符数据送SBUF,SBUF是与LED显示连接的接口 D1: JNB TI,D1 ‘TI不为0则转移到D1 CLR TI ‘TI清零 ;////////////////////////////////////////////////// ;将转换的数字量屏蔽低位高位送显 MOV A,30H ‘取数据,例如28,“1E”送A寄存器 ANL A,#0F0H ‘和11110000与,得高4位0001 SWAP A ‘低4位与高4位互换,将0001送到A寄存器的低4位,得00000001 MOV DPTR,#SETTAB ‘取字符数据首地址送DPTR MOVC A,@A+DPTR ‘将查到的字符数据送A寄存器 MOV SBUF,A ‘将字符送SBUF显示 D2: JNB TI,D2 ‘TI不为0则转移 |