约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图,如图3.3所示若图片无法显示请联系QQ752018766,本论文免费,转发请注明源于www.youerw.com
图3.3 温度转换流程图
计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图3.4所示。
图3.4 计算温度流程图
显示数据子程序主要是对显示缓冲器中的显示数据进行刷新操作,查表送段码至LED,开位码显示,采用动态扫描方式。
本次设计在原材料的选择与采购上做到了设计最优化,即用最小的开支,获得性价比较高的元器件和材料。
设计中,印刷电路板采用单面板,给人看起来没有太复杂的感觉。选元器件时,尽量选择能使电路简化的器件。例如,为了不增大电路板的体积及减小功耗,本设计采用ATMEL公司的89S51单片机,体积小,工作电压低。
在PCB图的设计中,我们组的三个人可是尽心尽力,出谋划策。自从大二第一学期起我们就很少接触protel这个软件。所以我们刚开始画的时候总是毛手毛脚的,对其中的很多功能是不了解,画出来的图不仅不美观而且很多地方的布线不符合实际的要求。最后在多次请教老师和同学之后,我们终于克服了这几方面的问题,也许是电路有点复杂的问题我们不管怎么画跳线总是避免不了,但是为了整个布局的美观我们把跳线全部隐藏在数码管底下。同时还为了避免出现短路现象,设计中采用了两个8路接线器,通过它们,可以大大减少跳线的数量,从而使电路板的整体效果看起来很紧凑。
PCB图画好以后,就是制板。将打印好的PCB图紧贴到单面板覆铜的一面,在这里特别要注意的就是把PCB紧贴到铜板上是要对齐,否则制出来的电路板将不太美观。经压板机压板,然后将电路图印到单面板上。凉了以后,将板放入三氯化铁溶液中进行腐蚀,在这里要注意的就是要使三氯化铁溶液的浓度和温度适中,这样能加快铜板的腐蚀也能提高制板的成功率。制好板以后,将电路板上的石墨刮掉,这样整个制板过程就结束了。
板制好以后,下面就是安装和焊接元件了。安装和焊接其实是并行的。在这个过程中,各类元件一定要按顺序进行,即要先焊个子小的元件,接着就是那些中等一些的,然后就是那些个子大的元件。例如,先安装较低的电阻等器件并焊好,最后安装较高的元件,这样会使所制的板更完善。
判断单片机芯片及时钟系统是否正常工作有一个简单的办法,就是用万用表测量单片机晶振引脚(18、19脚)的对地电压,以正常工作的单片机用数字万用表测量为例:18脚对地约2.24V,19脚对地约2.09V。对于怀疑是复位电路故障而不能正常工作的单片机也可以采用模拟复位的方法来判断,单片机正常工作时第9脚对地电压为零,可以用导线短时间和+5V连接一下,模拟一下上电复位,如果单片机能正常工作了,说明这个复位电路有问题。
硬件调试,第一步是目测,在印好电路板之后,先检查印制线是否有断线、是否有毛刺、是否与其它线或焊盘粘连、焊盘是否有脱落、过孔是否有未金属化现象。而在目测的过程中,我们发现有一条印制线断开,因此我们用焊锡使这条断线连在一起。第二步是用万用表测量。在目测完之后,利用万用表来测量连线和接点,检查它们的通断状态是否和设计一样。再检查各种电源线和地线是否有短路现象,在检查的过程中,发现不管是连线还是接点都符合设计规定,电源和地线也没有短路现象。第三步是加电检查。给印制板加电时,我们检查到的器件的电源端符合要求的电压值+5V,同时接地端的电压为0。第四步是联机检查。利用系统和单片机开发系统用仿真电缆连接起来,发现联机检查完后以上是连接都正确、畅通、可靠。
软件调试,第一步是在具有汇编软件的主机上和用户系统连接起来,进行调试准备。第二步是单步运行。第三步是系统连调,即进行软件和硬件联合调试。经调试,软件运行良好。
此次设计硬件采用印刷电路板,需自行制作并焊接元件。在做好硬件电路以后,进入软件调试阶段首先是测试显示电路的正确性,根据硬件写好一段显示程序,写入单片机中。安装好硬件,上电,显示正常,达到预期效果。证明显示电路正常。按下复位按键,LED无显示,松开,显示正常,证明复位电路正常。
然后测试得到温度程序,将初始化程序,DS18B20正常工作的初始化程序、写DS18B20程序、读DS18B20程序,得到温度子程序,温度转换子程序,数据转换子程序,显示子程序正确编排后写入单片机中,上电后,显示当前温度。证明温度传感器DS18B20工作正常,各部分子程序运行正常。
最后是按键子程序及报警子程序的调试,接通电源后其显示的温度就是室内温度27度,为了确定显示的温度的正确性就用另一个酒精温度计测量该室内温度,其温度显示为27.3度,误差是0.3度,误差在允许的范围之内(允许误差为0.5度)。按下S1键进入温度上下限设置,第以下是设置下限值,由于程序设置的最低温度是25度,所以在进入时显示就是25度,再按下S2加一三次之后显示就是28度,就把下限值设置为28度,在按下S4键退出,此时蜂鸣器就会发出滴滴声,因为设置的下限值为28度而实际温度只有27度,在程序中已设定当低于下限值就会发出报警声。则说明设置下限值以及报警电路能正常工作。上限值的调试与下限值的调试方法一样。
程序的烧写没有出现问题,在程序中通过可以改写一些数字来设置不同的最低测量温度以及最高温度,前提在温度计的测量量程之内。
以上调试结果显示各功能均能正常工作!
本电路额定工作直流电压为+5V,有极性判别保护功能,采用7805集成稳压芯片以保证电路的供电稳定,用户输入电源在7-25V均可正常工作。
电路中有五个按键,从左到右依次为S1、S2、S3、S4、RESET,介绍如下:
S1为设置温度上下限设置状态进入按键,第一次按下进入低限设置,按下S4后,再次按下S1进入高限设置。
S2为设置温度上下限的+键,每按下一次上下限值加一
S3为设置温度上下限的-键,每按下一次上下限值减一
S4为温度上下限设置状态的退出或确定按键
RESET为复位按键
使用方法及报警电路说明: