资源简介
基于51单片机的智能火灾报警系统+烟雾传感+ADC0832模数转换+温度检测+数码管显示+按键设定+声光蜂鸣器设计。
附件为C代码
代码片段和文件信息
#include //调用单片机头文件
#define uchar unsigned char //无符号字符型 宏定义 变量范围0~255
#define uint unsigned int //无符号整型 宏定义 变量范围0~65535
#include
#include “eeprom52.h“
//数码管段选定义 0 1 2 3 4 5 6 7 8 9
uchar code smg_du[]={0x5f0x440x9d0xd50xc60xd30xdb0x450xdf0xd70x400xfd/*-*/};
//数码管位选定义
uchar code smg_we[]={0x7f0xbf0xdf0xef};
uchar dis_smg[8] = {0xa00x840x620x2a0x390x2c0x240xba};
sbit CS=P2^3; //CS定义为P3口的第2位脚,连接ADC0832CS脚 PCB
sbit SCL=P2^0; //SCL定义为P3口的第3位脚,连接ADC0832SCL脚
sbit DO=P2^1; //DO定义为P3口的第4位脚,连接ADC0832DO脚
sbit ledy = P1^6; //温度报警指示灯
sbit ledr = P1^7; //烟雾报警指示灯 x
sbit dq = P1^5; //18b20 IO口的定义
sbit beep = P3^6; //蜂鸣器IO口定义
uint temperatures_temp ; //温度的变量
uchar dengjis_dengji; //烟物等级
uchar shoudong; //手动报警键
bit flag_300ms = 1;
uchar key_can; //按键值的变量
uchar menu_1; //菜单设计的变量
/***********************1ms延时函数*****************************/
void delay_1ms(uint q)
{
uint ij;
for(i=0;i for(j=0;j<120;j++);
}
/***********************小延时函数*****************************/
void delay_uint(uint q)
{
while(q--);
}
/******************把数据保存到单片机内部eeprom中******************/
void write_eeprom()
{
SectorErase(0x2000);
byte_write(0x2000 s_temp);
byte_write(0x2001 s_dengji);
byte_write(0x2060 a_a);
}
/******************把数据从单片机内部eeprom中读出来*****************/
void read_eeprom()
{
s_temp = byte_read(0x2000);
s_dengji = byte_read(0x2001);
a_a = byte_read(0x2060);
}
/**************开机自检eeprom初始化*****************/
void init_eeprom()
{
read_eeprom(); //先读
if(a_a != 1) //新的单片机初始单片机内问eeprom
{
s_temp = 50;
s_dengji = 5;
a_a = 1;
write_eeprom(); //保存数据
}
}
/***********************18b20初始化函数*****************************/
void init_18b20()
{
bit q;
dq = 1; //把总线拿高
delay_uint(1); //15us
dq = 0; //给复位脉冲
delay_uint(80); //750us
dq = 1; //把总线拿高 等待
delay_uint(10); //110us
q = dq; //读取18b20初始化信号
delay_uint(20); //200us
dq = 1; //把总线拿高 释放总线
}
/*************写18b20内的数据***************/
void write_18b20(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{ //写数据是低位开始
dq = 0; //把总线拿低写时间隙开始
dq = dat & 0x01; //向18b20总线写数据了
delay_uint(5); // 60us
dq = 1; //释放总线
dat >>= 1;
}
}
/*************读取18b20内的数据***************/
uchar read_18b20()
{
uchar ivalue;
for(i=0;i<8;i++)
{
dq = 0; //把总线拿低读时间隙开始
value >>= 1; //读数据是低位开始
dq = 1; //释放总线
if(dq == 1) //开始读写数据
value |= 0x80;
delay_uint(5); //60us 读一个时间隙最少要保持60us的时间
}
return value; //返回数据
}
/*************读取温度的值 读出来的是小数***************/
uint read_temp()
{
uint value;
uchar low; //在读取温度的时候如果中断的太频繁了,就应该把中断给关了,否则会影响到18b20的时序
init_18b20(); //初始化18b20
EA = 0;
write_18b20(0xcc); //跳过64位ROM
write_18b20(0x44); //启动一次温度转换命令
EA = 1;
delay_uint(50); //500us
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-04-03 15:28 1、源程序\
目录 0 2020-04-03 15:28 1、源程序\下载文件\
文件 5756 2016-11-15 15:04 1、源程序\下载文件\基于单片机的智能火灾报警系统设计.hex
目录 0 2020-04-03 15:28 1、源程序\工程文件\
文件 3057 2013-12-07 15:42 1、源程序\工程文件\eeprom52.h
目录 0 2020-04-03 15:28 1、源程序\工程文件\加风扇\
文件 3057 2013-12-07 15:42 1、源程序\工程文件\加风扇\eeprom52.h
文件 19146 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计
文件 21074 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.LST
文件 30211 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.M51
文件 22765 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.OBJ
文件 9056 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.c
文件 5780 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.hex
文件 96 2018-03-03 16:42 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.lnp
文件 873 2018-03-03 17:50 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.plg
文件 86460 2018-01-06 22:37 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.uvgui.Administrator
文件 58856 2018-03-03 17:50 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.uvopt
文件 13357 2018-03-03 17:50 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计.uvproj
文件 8805 2018-01-06 22:37 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计_uvopt.bak
文件 13972 2018-01-06 22:37 1、源程序\工程文件\加风扇\基于单片机的智能火灾报警系统设计_uvproj.bak
文件 19039 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计
文件 20944 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.LST
文件 30099 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.M51
文件 22655 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.OBJ
文件 9010 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.c
文件 5772 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.hex
文件 96 2017-04-26 16:14 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.lnp
文件 272 2017-05-27 14:56 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.plg
文件 86460 2018-01-06 22:37 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.uvgui.Administrator
文件 8805 2018-01-06 22:37 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.uvopt
文件 13972 2018-01-06 22:37 1、源程序\工程文件\基于单片机的智能火灾报警系统设计.uvproj
............此处省略3个文件信息
- 上一篇:小波db4分析
- 下一篇:基于51单片机酒精浓度检测仪设计-源程序.zip
评论
共有 条评论