基于51单片机的智能温控风扇系统的设计.pdfVIP

基于51单片机的智能温控风扇系统的设计.pdf

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

基于51单片机的智能温控风扇系统的设计

题目:基于51单片机的智能温控风扇系统的设计

一、需求分析

在炎热的夏天人们常用电风扇来降温,但传统电风扇多采用机械

方式进行控制,存在功能单一,需要手动换挡等问题。随着科技的发

展和人们生活水平的提高,家用电器产品趋向于自动化、智能化、环

保化和人性化,使得智能电风扇得以逐渐走进了人们的生活中。智能

温控风扇可以根据环境温度自动调节风扇的启停与转速,在实际生活

的使用中,温控风扇不仅可以节省宝贵的电资源,也大大方便了人们

的生活。

二、系统总体设计

1、硬件

本系统由集成温度传感器、单片机、LED数码管、及一些其他外

围器件组成。使用89C52单片机编程控制,通过修改程序可方便实现

系统升级。系统的框图结构如下:

图1-1硬件系统框图

其中,单片机为STC89C52,这个芯片与我开发板芯片相同,方

便拷进去程序。晶振电路和复位电路为单片机最小系统通用设置,温

度采集电路,使用的是DS18B20芯片,数码管使用的是4位共阳数码

管,风扇驱动芯片使用的是L298N,按键为按钮按键,指示灯为发光

二级管。

2、软件

要实现根据当前温度实时的控制风扇的状态,需要在程序中不时

的判断当前温度值是否超过设定的动作温度值范围。由于单片机的工

作频率高达12MHz,在执行程序时不断将当前温度和设定动作温度进

行比较判断,当超过设定温度值范围时及时的转去执行超温处理和欠

温处理子程序,控制风扇实时的切换到关闭、低速、高速三个状态。

显示驱动程序

以查七段码取得各数码管应显数字,逐位扫描显示。主程序流程

图如图4-1所示。

图1-2软件系统框图

这是该系统主程序的运行流程,当运行时,程序首先初始化,然

后调用DS18B20初始化函数,然后调用DS18B20温度转换函数,接

着调用温度读取函数,到此,室内温度已经读取,调用按键扫描函数

这里利用它设置温度上下限,然后就是调用数码管显示函数,显示温

度,之后调用温度处理函数,再调用风扇控制函数使风扇转动。

三、系统详细设计

详细电路图

1、电路图分析:

该电路图中左上角为数码管驱动电路,由8个NPN,8个电阻构

成,右上角为4位共阳数码管。左边为单片机最小系统往右一点为按

键设置电路,负责设置温度上下限,再往下一点是DS18B20负责测温,

再往下一点为工作指示灯。然后最左边为风扇驱动芯片L298N,最后

是直流电机风扇,由L298N驱动。

2、程序流程图:

程序流程图和软件系统框图基本一致,在这里就不过多阐述。

3、程序:

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitkey1=P2^3;//设置温度

sbitkey2=P2^2;//温度加

sbitkey3=P2^1;//温度减

sbitgao=P3^4;//高速

sbitting=P3^5;//停止

sbitdi=P3^6;//低速

uintshang,xia;//对比温度暂存变量

uchardang;//档位显示

sbitpwm=P1^1;

sbitDS=P3^7;//DS18B20数据输入接口

uinttemp;//储存读取到的16位数据

uintw,j,i,n,k;//variableoftemperature

uinta;

uchard1,d2,d3;

ucharflag;//signoftheresultpositiveornegative

Unsignedcharcodetable[]={0xA0,0xBB,0x62,0x2A,0X39

您可能关注的文档

文档评论(0)

152****9773 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档