智能排气扇设计论文.doc

上传人:李主任 文档编号:3277993 上传时间:2019-08-07 格式:DOC 页数:29 大小:689.01KB
返回 下载 相关 举报
智能排气扇设计论文.doc_第1页
第1页 / 共29页
智能排气扇设计论文.doc_第2页
第2页 / 共29页
智能排气扇设计论文.doc_第3页
第3页 / 共29页
智能排气扇设计论文.doc_第4页
第4页 / 共29页
智能排气扇设计论文.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《智能排气扇设计论文.doc》由会员分享,可在线阅读,更多相关《智能排气扇设计论文.doc(29页珍藏版)》请在三一文库上搜索。

1、题目名称:智能排气扇题目名称:智能排气扇 广东工业大学信息工程学院 参赛队员: 摘要摘要 : 本排气扇是以 MCU 为主控芯片的智能排气扇,可以检测有毒气体并且能够根据温度和 湿度自动无级调速。结合燃气热水器一起使用能大大提高燃气热水器的安全性。 它具有可靠性好、可升级、独立性强的优点。改进了以往的普通排气扇功能单一,处 理应急事故的能力差的缺点。 这种具有燃气泄漏自动换气功能的智能排气扇,当检测到空气中燃气浓度超标时,声、 光报警,同时排气扇强制排气,及时通风换气,稀释燃气浓度,预防恶性事故的发生。 关键词:关键词: 智能 MCU 安全 Abstract : This exhaust fan

2、 use the MCU as the interface controller sfr CMOD = 0XD9; sfr CL = 0XE9; sfr CH = 0XF9; sfr CCAP0L = 0XEA; sfr CCAP0H = 0XFA; sfr CCAPM0 = 0XDA; sfr CCAPM1 = 0XDB; sfr AUXR = 0X8E; unsigned char U8FLAG; /超时标志 unsigned char U8temp; /赋值给每一 bit unsigned char U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_

3、L,U8checkdata; /检验后确定的数据 Unsigned char U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_t emp; /从 DHT11 读进来的数据 unsigned char U8comdata; /8bit 数据中间变量 unsigned int ms_10=0,flag=0; unsigned char dht11_flag=0; unsigned char ms_10_dht11_2s=0; unsigned char ms_10_dht11_30ms=0;

4、 unsigned char key_flag=0 ,key_on=0 ,ms_10_key_15ms=0 ,key_time=1; unsigned char fire_beep_time_1s=31; unsigned char fire_on_flag=0; 17 unsigned char fire_on=0; unsigned char fire_flag=0; unsigned int fire_count=0; unsigned char fire_flag_count=0; unsigned char duqi_flag=0; unsigned char current_loa

5、d_flag=0; unsigned char Temp_test_on=0; unsigned char delay_count=5,delay_count_time=0 ,delay_count_time_flag=0,delay_count_time_flag_100ms=0; int Temp_test_on_time=500; sbit CR =0xDE; sbit key_2 =P10; sbit Temp_led=P24; sbit dht11_data = P20 ; sbit beep=P12; sbit fire=P23; sbit duqi=P21; sbit jidia

6、nqi=P15; sbit Temp_test=P22; sbit key_button = P11 ; /* /全局需开总中断 EA; /15360*(12/18.432M) /* void Timer0_Initial() TMOD |=0X01; TH0=0XFF; / TL0=0XCF; ET0=1; /开 T1 中断 TR0=1; /启动 T1 定时器 /* /用于计数到 10ms: /* void Timer0() interrupt 1 TR0=0; TH0=0XFF; TL0=0XCF; TR0=1; /* 18 void zero() interrupt 0 /过流触发中断

7、/TR0=0; TR0=1; CR=0;CR=1; void Pwm_Initial() CMOD=0X04; CL=0X00; CH=0X00; /初始化 CCAP0L=0xff; CCAP0H=0xff; /占空比 CCAPM0=0X42; AUXR=0X00; CR=1; /开 PWM void Interrupt_Initial() IT0=1; /外部中断 0 边沿触发 IT1=1; /外部中断 1 边沿触发 EX0=1; /开外部中断 0 EX1=1; /开外部中断 1 EA=1; /开总中断 void Pwm_Change() if(duqi_flag=0 if(1530) fi

8、re_beep_time_1s=30; if(delay_count_time_flag=2) /延时计数 delay_count_time_flag_100ms+; if(delay_count_time_flag_100ms=100) delay_count_time+; delay_count_time_flag_100ms=0; if(delay_count_time delay_count) delay_count_time=delay_count; Temp_test_on_time+; if(Temp_test_on_time=500) Temp_test_on_time=500

9、; if(Temp_test_on_time50) if(key_flag=0) if(key_button=0) key_flag=1; if(key_flag=1) ms_10_key_15ms=0; key_flag=2; if(key_flag=2) if(ms_10_key_15ms=12) key_flag=0; if(key_button=0) key_on+; if(key_on=3) key_on=0; key_time=0; if(key_2=0) if(key_time15) if(key_flag=0) if(key_button=0) key_flag=1; if(k

10、ey_flag=1) 27 ms_10_key_15ms=0; key_flag=2; if(key_flag=2) if(ms_10_key_15ms=5) key_flag=0; if(key_button=0) delay_count+; if(delay_count=100) delay_count=0; key_time=0; /火焰检测 void fire_test() if(fire_flag=1) fire=1;fire=0;fire=1; if(fire=1) fire_count+; if(fire_flag_count=20) if(fire_count1) fire_o

11、n=1; else fire_on=0; if(fire_flag_count=21) fire_count=0; /火焰触发蜂鸣器 void fire_beep() if( fire_on=1 28 fire_beep_time_1s=0; if(fire_on=0 fire_beep_time_1s=0; if(fire_beep_time_1s=30 /检测毒气 void duqi_test() duqi=1; if(duqi=0) duqi_flag=1; else duqi_flag=0; /毒气触发蜂鸣器 void duqi_beep() if(duqi_flag=1) beep=

12、0; if(duqi_flag=0 void current_load() interrupt 2 current_load_flag=1; /过流检测并触发蜂鸣器 void current_load_beep() if(current_load_flag=1) beep=0; if(current_load_flag=0 29 /移动热水检测 void Temp_move_test() if(Temp_test=1) Temp_test_on=0; if( Temp_test=0) Temp_test_on_time=0; void main() Timer1_Initial(); /定时器

13、 1 初始化 Pwm_Initial(); /PWM 初始化 Timer0_Initial(); /定时器 0 初始化 Interrupt_Initial(); /中断初始化 while(1) DHT11(); /读 DHT11 转换的数据 diaplay(U8T_data_H,U8RH_data_H); /显示数据 Pwm_Change(); /根据各种情况改变占空比 key(); /读取按键值 fire_test(); /火焰检测 fire_beep(); /火焰触发蜂鸣器 duqi_test(); /毒气检测 duqi_beep(); /毒气触发蜂鸣器 current_load_beep(); /过流触发蜂鸣器 Temp_move_test(); /移动热水源检测

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1