资源简介
包含代码 原理图 仿真图 说明文档 实物图等等 ,亲测可用
代码片段和文件信息
//程序头文件
#include
//显示函数头文件
#include
//宏定义
#define uint unsigned int
#define uchar unsigned char
#define Data_ADC0809 P1 //定义Data_ADC0809为P1口
//管脚声明
sbit LED_R= P2^2; //红灯
sbit LED_Y= P2^1; //黄灯
sbit LED_G= P2^0; //绿灯
sbit Feng = P2^5; //蜂鸣器
sbit san=P3^4; //风扇
//ADC0809
sbit ST=P3^3;
sbit EOC=P3^6;
sbit OE=P3^2;
//按键
sbit Key1=P2^6; //设置键
sbit Key2=P2^7; //加键
sbit Key3=P3^7; //减键
//函数声明
extern uchar ADC0809();
extern void Key();
void delay(uint z) //延时函数,大约延时z ms
{
uint ij;
for(i=0;i for(j=0;j<121;j++);
}
//烟雾含量变量
uchar temp=0;
/*指示灯变量 初始值*/
uchar GL=2; //2到14绿灯亮起
uchar YL=15; //15到29黄灯亮起
uchar RL=30; //29到255红灯亮起
uchar FF=60; //蜂鸣器变量 大于60报警
uchar Mode=0; //按钮模式|0 正常|1 G|2 Y|3 R|4 F|
void main() //主函数
{
Init1602(); //调用初始化显示
while(1) //进入while循环
{
temp=ADC0809();//读取AD数据
if(Mode==0) //正常模式时
{
Display_1602(GLYLRLFFtemp); //显示正常数据
if(temp>=GL&&temp {
LED_G=0; //绿灯亮
}
else //大于黄灯或小于绿灯
{
LED_G=1; //绿灯熄灭
}
if(temp>=YL&&temp {
LED_Y=0; //黄灯亮
}
else //大于红灯或者小于黄灯
{
LED_Y=1; //黄灯熄灭
}
if(temp>=RL&&temp<=255)//沪指大于红灯小于255
{
LED_R=0; //红灯亮
}
else //小于红灯
{
LED_R=1; //红灯灭
}
if(temp>=FF&&temp<=255)//数值大于报警值
{
Feng=0; //蜂鸣器响
san=0; //继电器吸和,风扇转动
}
else //数值小于报警值
{
Feng=1; //蜂鸣器不响
san=1; //继电器断开,风扇停止
}
}
Key(); //扫描按键函数
}
}
//ADC0809读取信息
uchar ADC0809()
{
uchar temp_=0x00;
//初始化高阻太
OE=0;
//转化初始化
ST=0;
//开始转换
ST=1;
ST=0;
//外部中断等待AD转换结束
while(EOC==0)
//读取转换的AD值
OE=1;
temp_=Data_ADC0809; //将P1的数据读出到temp_
OE=0;
return temp_; //将数据返回
}
void Key() //按键函数
{
if(Key1==0) //模式选择
{
delay(80); //延时去抖
while(Key1==0); //再次判断
Feng=0; //蜂鸣器响
write_com(0x38);//屏幕初始化
write_com(0x0d);//打开显示 无光标 光标闪烁
write_com(0x06);//当读或写一个字符是指针后移一位
Mode++; //模式加
switch(Mode) //判断模式
{
case 1:
{
write_com(0x80+4);//选中位置闪烁
Feng=1; //蜂鸣器停止鸣响,形成按键音
break;
}
case 2:
{
write_com(0x80+9);//位置
Feng=1;
break;
}
case 3:
{
write_com(0x80+14);//位置
Feng=1;
break;
}
case 4:
{
write_com(0x80+0x40+4);//位置
Feng=1;
break;
}
case 5: //按5次后退出设置
{
write_com(0x0c);//打开显示 无光标 无光标闪烁
Mode=0; //Mode清零
break;
}
}
}
if(Key2==0&&Mode!=0) //设置状态时按下加键
{
delay(80); //延时去抖
while(Key2==0); //判断按键
Feng=0; //蜂鸣器响
switch(Mode) //根据模式设置不同的值
{
case 1:
{
if(GL {
GL++; //绿灯加
write_com(0x80+2); //写入数据位置
write_data(‘0‘+GL/100); //将绿灯拆字后显示百位
write_data(‘0‘+GL/10%10); //将绿灯拆字后显示十位
write_data(‘0‘+G
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1761 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\display.h
文件 6376 2009-05-07 14:37 基于单片机的烟雾报警器设计\1-c程序+注释\STARTUP.A51
文件 14049 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\STARTUP.LST
文件 749 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\STARTUP.OBJ
文件 14545 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu
文件 5456 2014-06-08 21:43 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.c
文件 3481 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.hex
文件 43 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.lnp
文件 17199 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.LST
文件 19837 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.M51
文件 16276 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.OBJ
文件 208 2017-12-29 21:15 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.plg
文件 56526 2017-12-29 21:15 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.uvopt
文件 13399 2014-05-31 13:38 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu.uvproj
文件 56493 2014-06-08 22:06 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu_uvopt.bak
文件 13395 2014-05-31 13:38 基于单片机的烟雾报警器设计\1-c程序+注释\yanwu_uvproj.bak
文件 47104 2014-06-08 22:07 基于单片机的烟雾报警器设计\1-c程序+注释\烟雾程序.doc
文件 1183 2011-01-03 21:44 基于单片机的烟雾报警器设计\2-原理图\Backup of ADC0809.Lib
文件 568 2011-01-03 22:12 基于单片机的烟雾报警器设计\2-原理图\Backup of MQ-3.Lib
文件 23819 2014-04-11 20:47 基于单片机的烟雾报警器设计\2-原理图\Backup of 原理图.Sch
文件 23819 2014-04-11 20:46 基于单片机的烟雾报警器设计\2-原理图\Previous Backup of 原理图.Sch
文件 160656 2014-04-11 20:47 基于单片机的烟雾报警器设计\2-原理图\Protel Schematic.pdf
文件 1183 2011-01-03 21:44 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\Backup of ADC0809.Lib
文件 568 2011-01-03 22:12 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\Backup of MQ-3.Lib
文件 27941 2014-03-30 23:55 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\Backup of 原理图.Sch
文件 27941 2014-03-30 23:54 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\Previous Backup of 原理图.Sch
文件 162578 2014-03-30 23:55 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\Protel Schematic.pdf
文件 356352 2014-05-31 13:29 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\原理图.Bkp
文件 356352 2014-05-31 13:29 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\原理图.ddb
文件 74240 2014-03-30 23:55 基于单片机的烟雾报警器设计\2-原理图\加232串口原理图\原理图.doc
............此处省略30个文件信息
- 上一篇:北邮计算机图形学课件附试卷
- 下一篇:作物模型ORYZAv3
相关资源
- 基于单片机的全自动洗衣机控制器-论
- 基于单片机的智能温控风扇
- 51单片机德飞莱例程
- 51单片机指纹门禁
- STC-isp软件
- 基于AT89C51单片机控制的双闭环直流调
- 基于AT89C51单片机红外遥控系统毕业设
- 基于STM32的热水器设计毕业设计
- 基于stm32的信号发生器
- 基于单片机的RCL测试仪
- 51单片机温度显示
-
myba
se6.51典藏版,经典最后一个版本 - 单片机原理及接口技术 北航(李朝清
- 51实现的收音机
- 基于单片机的Led点阵广告牌设计
- 51单片机上的触摸屏_组态例程,分别
- ccs5.5安装包34651
- Qt通过串口读单片机温度数据画动态波
- 群联PS2251-07(PS2307)量产工具
- AS608指纹模块用户手册.pdf
- 基于STM32的MS5611程序 气压计 IIC
- 金属探测器课程设计
- 基于51单片机的心形声光电子琴
- 基于STM32的光照灯设计
- 35个单片机设计应用.pdf
- dell n5110 bios
- msc c51单片机各实用源码及proteus仿真集
- 亚龙236单片机实训考核装置机械手部
- C8051仿真驱动For Keil
- GMT 0002-2012 SM4分组密码算法
评论
共有 条评论