基于51单片机的温度控制系统论文内容摘要:

路中采用的共阴极的 LED 数码管,所以在设计电路时加了一个达林顿电路 ULN2020对信号进行放大,产生足够大的电流驱动数码管显示。 由于 4511 只能进行 BCD 十进制译码,只能译到 0 至 9,所以在这里我们利用 4511 译 码输出我们所需要的温度。 报警电路简介 图 3 温度在七段数码管上显示连接图 本文中所设计的报警电路较为简单,由一个自我震荡型的蜂鸣器(只要在蜂鸣器两端加上超过 3V 的电压,蜂鸣器就会叫个不停)和一个发光二极管组成(如图 3 所示)。 在这次设计中蜂鸣器是通过 ULN2020 电流放大 IC 来控制。 在我们所要求的温度达到一定的上界或者下界时(在文中我们设置的上界温度是 45℃ ,下界温度是 5℃ ),报警电路开始工作,主要程序设计如下: main()//主函数 {unsigned char i=0。 unsigned int m,n。 while(1) {i=ReadTemperature()。 //读温度 } if(i0 amp。 amp。 i=10) //如果温度在 0 到 10 度之间直接给七段数码管赋值 {P1=designP1[i]。 } else//如果温度大于 10 度 {m=i。 //先给第一个七段数码管赋值 D1=1。 D2=0。 P1=designP1[m]。 n=i/10。 //再给第二个七段数码管赋值 D1=0。 D2=1。 P1=designP1[n]。 if(n=4amp。 amp。 m=5)%%(m=5)//判断温度的取值范围,如果大于 45 或小于 5 度,则蜂鸣器叫,发光二极管闪烁 { int a,b。 Q1=1。 //蜂鸣器叫 for(a=0。 a1000。 a )//发光二极管闪烁 for(b=0。 b1000。 b ) Q2=1。 for(a=0。 a1000。 a ) for(b=0。 b1000。 b ) Q2=0。 }}} 二 .系统软件设计 图 4 系统程。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。