全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > LED照明 >

基于51单片机的智能风扇系统设计案例

时间:2023-08-21 16:24

人气:

作者:admin

标签: 单片机  基于  智能    风扇 

导读:基于51单片机的智能风扇系统设计案例-本项目为设计一个可以报警的智能温度显示系统,该系统由单片机最小系统、oled显示屏电路、复位电路、 功能按键电路等组成。...

本项目为设计一个可以报警的智能温度显示系统,该系统由单片机最小系统、oled显示屏电路、复位电路、 功能按键电路等组成。

系统上电后开始工作,可通过功能按键设置好运行模式,启动运行后数字温度传感 器DS18B20不断采集温度数据,并送给单片机处理,单片机将系统设置数据与当前温度传感器DS18B20 采集的温度传感器数据进行对比,决定是否报警。

本项目采用STC89C52RC单片机作为主控制器,由oled屏显示,使用8550和SS8050三极管驱动, LED灯作为报警装置,温度传感器采用数字输出形式的DS18B20,通过温度检测和设定温度比较, 三种工作方式:风扇停止,风扇转动,风扇全速转动。

#include

#include

#include "ds18b20.h"

#include "oled.h"

#include "key.h"

sbit fengsan=P2^3;//控制风扇

unsigned char time=0;

void Timer0Init(void)

//5毫秒@11.0592MHz

{

TMOD = 0x01; //设置定时器模式

TL0 = 0xCD; //设置定时初值

TL0 = 0x00; //设置定时初值

TH0 = 0x28; //设置定时初值

TR0 = 1; //定时器0开始计时

ET0 = 1;

EA=1;

}

void main()

{

fengsan=0;

shang=3000;

xia=2000; //初始上下限值

OLED_Init();

OLED_Clear();//清屏

init_ds18b20();

Timer0Init();

//30微秒@11.0592MHz

OLED_ShowCHinese(0,0,0);//当

OLED_ShowCHinese(18,0,1);//前

OLED_ShowCHinese(36,0,2);//温

OLED_ShowCHinese(54,0,3);//度

while(1)

{

if(time==1)

{

duquwendu=DS_OneWire()*100;

gaodiwensheji();//高低温检测值

zhidowenkong();//自动控制风扇

}

}

}

void InterruptTimer0() interrupt 1

{

time=1;

}

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信