毕设--基于AT89C52及PT100的电烤箱控制器设计 下载本文

北京联合大学 毕业设计

3.6 LCD1602液晶显示电路

图3-6 液晶显示电路

该液晶显示器是LCD1602,这一款的显示器是两行显示的一种,首先他只能显示字符,不能显示汉字,从它的引脚排布可以看出它的VSS引脚接地,VDD接高电平,这两者用来控制背灯,然后VEE接电阻到低电平,RS、RW、E分别接P2.0、P2.1、P2.2,最后D0~D7接P0口,右端再接上并联电阻,这样一来LCD显示模块的电路就搭好了。

此模块主要是根据需求然后显示相应的结果,这种电路的搭法相对来比较常见,实现起功能来也是相对较容易,界面显示清晰,反应速度快,跟键盘扫描相对应的显示结果也变得易实现起来,针对以往的经验还是很快能够搭建起来的。

25

北京联合大学 毕业设计

4 软件的设计及调试

一个系统要想能实现一定的功能,完成一个自动化的处理过程,必然要依靠一个良好的软件作为支撑,软件编写的好坏直接影响到系统功能的实现程度,程序就像是一个人的大脑指挥着各个部分能正常的运作,能否让系统保持在一个稳定的程序上,不仅需要良好的硬件平台作为支撑,而且需要一个好的软件平台作为依赖,在很大程度上程序代码的简介程度,易读性等等都能帮助你达成目标,反之如果没有做到这些,一个好的程序也很难出现,所以该系统采用了更加简洁的代码编写方式,力求用最少的代码最好的完成要实现的功能,这是一个很重要的方面,除此之外还要考虑代码的运行时间是否符合需求,比如说同样行数的代码,一个的运行时间很短,证明这个代码高效实用,而另外一个代码运行的时间久很长,说明这一种代码没有那一种的简洁实用。

本系统软件设计采用keil uvision4程序编辑平台,然后经编译生成.HEX文件加到Protues中仿真,通过两个软件的联调可以实现最终程序的运行要求。

下面我将一一为大家介绍主芯片连接下的键盘扫描模块、LCD1602液晶显示模块、DS1302时钟模块、MOC3041驱动模块、PT100温度采集模块、TLC2543模数转换模块的程序设计方案。 4.1 总体程序设计

PT100采集温度

大于等于设定温度 小于设定温度 与设定的温度想比较 键盘输入设定的时间跟温度 STC89C52处理分析 LCD1602显示 TLC2543 A/D转换 P1.4引脚电平置高电平 26

程序控制P1.4引脚电平依旧为低电平不变 北京联合大学 毕业设计

图4-1 总程序流图

本软件设计部分的大体思路如下PT100采集温度,其利用热敏电阻跟电压之间的关系将电压的变化转换成相应的温度值,经TLC2543A/D转换将相应的电压值输入到STC89C52中处理,经STC89C52的处理过程可以大概总结为,首先经键盘输入一个设定的温度值,如果其温度值大于设定温度,那么编程实现P1.4引脚的电平为高电平,此时电热丝停止工作,否则此时P1.4引脚的电平为低电平,电热丝继续工作。

4.2 PT100前端温度采集程序设计 温度 值在0~16℃之 间 V : 0~4.09 温度值在17~57℃之间 V:4.10~4.15 温度值在58~100℃之间 V:4.16~4.19 温度值在101~220℃之间 V:4.20~4.29 温度值在235~384℃之间 V:4.30~4.39 温度值在385~541℃之间 V:4.40~4.49 温度值在542~605℃之间 V:4.50~4.53 PT100热敏电阻 电热丝停止工作 V:0 V: 4.05T<=5℃ /6 T=67、 、8℃ V: 4.07 T=9\\10℃ V: 4.08 T=11~13℃ 经算法公式:temp=每段起始温度+每段温度电压比系数*(c*10+d) V: 4.09 T=14~16℃ TLC2543A/D转换 STC89C52处理 图4-2 电压温度转换流图

27

北京联合大学 毕业设计

以上流程图表述的是前端PT100温度采集及转化部分的程序设计,首先由PT100热敏电阻感应温度变化,由于其线性度比较好,所以其电阻随温度基本趋于线性变化,然后其电压也是如此跟随电阻线性变化,所以经检测输出端电压,可以大致的估算出PT100所处的温度环境,图中一共分了7段温度,做的都是近似处理,其中第一段又细分成了5中情况,这都是根据实际电路的仿真结果得来,第一段的温度其实是0、1、2度是显示0V,3、4度显示的是0.01V,5度显示的是0.2V,6、7度显示的是4.05V,8度显示的是4.06V,9、10度显示的是4.07V,11~13度显示的是4.08V,14~16度显示的是4.09V,这里做近似处理,当为0V是显示3度,当为4.05V~4.07V的时候显示7度,当为4.07V~4.08V时是10度,当为4.08~4.09V时显示12度,当为4.09~4.10V时显示15度。

28