36 毕业设计(论文)说明书
致 谢
感谢我的导师杨金显教授,他们严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他们循循善诱的教导和不拘一格的思路给予我无尽的启迪。
感谢我的室友们,从遥远的家来到这个陌生的城市里,是你们和我共同维系着彼此之间兄弟般的感情,维系着寝室那份家的融洽。只是今后大家就难得再聚在一起吃每年元旦那顿饭了吧,没关系,各奔前程,大家珍重。我们在一起的日子,我会记一辈子的。
感谢我的爸爸妈妈,焉得谖草,言树之背,养育之恩,无以回报,你们永远健康快乐是我最大的心愿。
在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意!
36
37 毕业设计(论文)说明书
参考文献
[1] 孙育才.MCS-51系列单片微型计算机及其应用.第4版,东南大学出版社,2006. [2] 王庆.Protel 99 SE&DXP电路设计教程.电子工业出版社,2008. [3] 康华光.电子技术基础模拟部分.第4版,高等教育出版社,2006. [4] 刘军.单片机原理与接口技术.华东理工大学出版社,2006. [5] 赖寿宏.微型计算机控制技术.机械工业出版社,2009. [6] 李中望.一种智能火灾报警系统的设计方案.安防科技,2008.
[7] 王忠民.基于单片机的语音数字联网火灾报警器设计.现代电子技术,2004. [8] 王钊.智能型火灾报警系统的设计与研究:(硕士学位论文).西安理工大学,2009. [9] 孙健.基于ARM7的火灾自动报警控制器研制:(硕士学位论文).浙江大学,2007. [10] 雍静,李北海,杨岳等.建筑智能化技术[M].北京:科学出版社,2008. [11] 王忠民,郝静,张瑜等.基于单片机的语音数字联网火灾报警器设计.西安邮电学院.
[12] 张向亮.智能建筑火灾自动报警系统的设计与研究:(硕士学位论文)武汉理工大学,2010.
[13] 陈颖.基于C8051F单片机的火灾智能报警控制系统的设计:大连海事大学,2007. [14] 于智洋.浅析智能建筑中火灾自动报警系统的设计[J].潜江:江汉石油科技,2008.
[15] 丁璐,李春华,杨戍等.火灾探测技术的分析[J].煤矿现代化.2007(4).
[16] 吴龙标,袁宏永.火灾探测与控制工程[M].合肥:中国科学技术大学出版社,1999. [17] 范维澄.中国火灾科学基础研究概况[J].火灾科学,2005.
[18] 缪顺兵,熊光明,李永萍等.自动火灾报警系统设计与研究[J].装备制造技术.2006. [19] 黄凤娟.单片机火灾报警系统的设计.安徽电子信息职业技术学院学报,2010年第
1期.
[20] 孟立凡,蓝金辉.传感器原理与应用.北京:电子工业出版社,2007.8.
[21] 胡显华.火灾探测器误报警的原因及改进方法[J].电脑开发与应用,2007,Vol.20,
N0.11:60~ 62.
[22] 陈悦,刁若菲,刘志伟等.烟雾检测火灾报警系统的设计[J].北京:微计算机信息,
2007,23(8~ 2):93~ 95.
[23] 陈晓娟,卜乐平,李其修等。基于图像处理的明火火灾探测研究[J].2007.6,Vol.19,
No.3:6~ 11.
37
38 毕业设计(论文)说明书
附 录
附录1 系统程序
#include #define unchar unsigned char #define uint unsigned int uchar Tem1,Tem2,Smok1,Smok2;
#include \ //_nop_();延时函数用 #define Disdata P0 //段码输出口 #define discan P2 //扫描口 #define uchar unsigned char #define uint unsigned int
sbit DQ=P3^3; //温度输入口 sbit DIN=P0^7; //LED小数点控制 uint h; uchar flag;
void caiji_wenyan(); void delay(uint x);
void delay_10ms(uint i); //程序声明 void panduan(); void baojing();
//**************温度小数部分用查表法***********// uchar code ditab[16]=
{0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};
// uchar
dis_7[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};
//共阴LED段码表 \ \ \ \ \ \ \ \ \ \不亮\
uchar code scan_con[4]={0x7f,0xbf,0xdf,0xef}; //列扫描控制字 uchar data temp_data[2]={0x00,0x00}; //读出温度暂放
code
38
39 毕业设计(论文)说明书
uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //显示单元数据,共4个数据和一个运算暂用
/***********11微秒延时函数**********/ //
void delay(uint t) {
for(;t>0;t--); } //
/***********显示扫描函数**********/ scan() { char k;
for(k=0;k<4;k++) //四位LED扫描控制 {
Disdata=0xff;
Disdata=dis_7[display[k]]; if(k==1){DIN=0;}
discan=scan_con[k];delay(90); } // //
/***********18B20复位函数**********/ ow_reset(void) {
char presence=1; while(presence) {
while(presence) {
39
discan=0xff;
}
40 毕业设计(论文)说明书
DQ=1;_nop_();_nop_(); DQ=0; // delay(50); // 550us DQ=1; // delay(6); // 66us
presence=DQ; // presence=0继续下一步 }
delay(45); //延时500us presence = ~DQ; } DQ=1; } // //
/**********18B20写命令函数*********/ //向 1-WIRE 总线上写一个字节 void write_byte(uchar val) { uchar i;
for (i=8; i>0; i--) // {
DQ=1;_nop_();_nop_();
DQ = 0;_nop_();_nop_();_nop_();_nop_();_nop_();//5us DQ = val&0x01; //最低位移出 delay(6); //66us val=val/2; //右移一位 } DQ = 1; delay(1); } //
/*********18B20读1个字节函数********/ //从总线上读取一个字节
40